Fix: add condition in remove tab
Fix: dont add a remove tab Fix: uniform code
This commit is contained in:
parent
8032f25487
commit
2548a817cb
@ -89,34 +89,30 @@ function societe_prepare_head($object)
|
|||||||
// $this->tabs = array('entity:-tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to remove a tab
|
// $this->tabs = array('entity:-tabname:Title:@mymodule:/mymodule/mypage.php?id=__ID__'); to remove a tab
|
||||||
complete_head_from_modules($conf,$langs,$object,$head,$h,'thirdparty');
|
complete_head_from_modules($conf,$langs,$object,$head,$h,'thirdparty');
|
||||||
|
|
||||||
// Notes
|
|
||||||
if ($user->societe_id == 0)
|
if ($user->societe_id == 0)
|
||||||
{
|
{
|
||||||
|
// Notes
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/societe/socnote.php?socid='.$object->id;
|
$head[$h][0] = DOL_URL_ROOT.'/societe/socnote.php?socid='.$object->id;
|
||||||
$head[$h][1] = $langs->trans("Note");
|
$head[$h][1] = $langs->trans("Note");
|
||||||
$head[$h][2] = 'note';
|
$head[$h][2] = 'note';
|
||||||
$h++;
|
$h++;
|
||||||
}
|
|
||||||
// Attached files
|
// Attached files
|
||||||
if ($user->societe_id == 0)
|
|
||||||
{
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/societe/document.php?socid='.$object->id;
|
$head[$h][0] = DOL_URL_ROOT.'/societe/document.php?socid='.$object->id;
|
||||||
$head[$h][1] = $langs->trans("Documents");
|
$head[$h][1] = $langs->trans("Documents");
|
||||||
$head[$h][2] = 'document';
|
$head[$h][2] = 'document';
|
||||||
$h++;
|
$h++;
|
||||||
}
|
|
||||||
// Notifications
|
// Notifications
|
||||||
if (! empty($conf->notification->enabled) && $user->societe_id == 0)
|
if (! empty($conf->notification->enabled))
|
||||||
{
|
{
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/societe/notify/fiche.php?socid='.$object->id;
|
$head[$h][0] = DOL_URL_ROOT.'/societe/notify/fiche.php?socid='.$object->id;
|
||||||
$head[$h][1] = $langs->trans("Notifications");
|
$head[$h][1] = $langs->trans("Notifications");
|
||||||
$head[$h][2] = 'notify';
|
$head[$h][2] = 'notify';
|
||||||
$h++;
|
$h++;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Log
|
// Log
|
||||||
if ($user->societe_id == 0)
|
|
||||||
{
|
|
||||||
$head[$h][0] = DOL_URL_ROOT.'/societe/info.php?socid='.$object->id;
|
$head[$h][0] = DOL_URL_ROOT.'/societe/info.php?socid='.$object->id;
|
||||||
$head[$h][1] = $langs->trans("Info");
|
$head[$h][1] = $langs->trans("Info");
|
||||||
$head[$h][2] = 'info';
|
$head[$h][2] = 'info';
|
||||||
|
|||||||
@ -4307,62 +4307,61 @@ function picto_from_langcode($codelang)
|
|||||||
*/
|
*/
|
||||||
function complete_head_from_modules($conf,$langs,$object,&$head,&$h,$type,$mode='add')
|
function complete_head_from_modules($conf,$langs,$object,&$head,&$h,$type,$mode='add')
|
||||||
{
|
{
|
||||||
if (is_array($conf->tabs_modules[$type]))
|
if (is_array($conf->tabs_modules[$type]))
|
||||||
{
|
{
|
||||||
foreach ($conf->tabs_modules[$type] as $value)
|
foreach ($conf->tabs_modules[$type] as $value)
|
||||||
{
|
{
|
||||||
$values=explode(':',$value);
|
$values=explode(':',$value);
|
||||||
|
|
||||||
if ($mode == 'add')
|
if ($mode == 'add' && ! preg_match('/^\-/',$values[1]))
|
||||||
{
|
{
|
||||||
if (count($values) == 6) // new declaration with permissions
|
if (count($values) == 6) // new declaration with permissions
|
||||||
{
|
{
|
||||||
if ($values[0] != $type) continue;
|
if ($values[0] != $type) continue;
|
||||||
//print 'ee'.$values[4];
|
if (verifCond($values[4]))
|
||||||
if (verifCond($values[4]))
|
{
|
||||||
{
|
if ($values[3]) $langs->load($values[3]);
|
||||||
if ($values[3]) $langs->load($values[3]);
|
$head[$h][0] = dol_buildpath(preg_replace('/__ID__/i',$object->id,$values[5]),1);
|
||||||
$head[$h][0] = dol_buildpath(preg_replace('/__ID__/i',$object->id,$values[5]),1);
|
$head[$h][1] = $langs->trans($values[2]);
|
||||||
$head[$h][1] = $langs->trans($values[2]);
|
$head[$h][2] = str_replace('+','',$values[1]);
|
||||||
$head[$h][2] = str_replace('+','',$values[1]);
|
$h++;
|
||||||
$h++;
|
}
|
||||||
}
|
}
|
||||||
}
|
else if (count($values) == 5) // new declaration
|
||||||
else if (count($values) == 5) // new declaration
|
{
|
||||||
{
|
if ($values[0] != $type) continue;
|
||||||
if ($values[0] != $type) continue;
|
if ($values[3]) $langs->load($values[3]);
|
||||||
if ($values[3]) $langs->load($values[3]);
|
$head[$h][0] = dol_buildpath(preg_replace('/__ID__/i',$object->id,$values[4]),1);
|
||||||
$head[$h][0] = dol_buildpath(preg_replace('/__ID__/i',$object->id,$values[4]),1);
|
$head[$h][1] = $langs->trans($values[2]);
|
||||||
$head[$h][1] = $langs->trans($values[2]);
|
$head[$h][2] = str_replace('+','',$values[1]);
|
||||||
$head[$h][2] = str_replace('+','',$values[1]);
|
$h++;
|
||||||
$h++;
|
}
|
||||||
}
|
else if (count($values) == 4) // old declaration, for backward compatibility
|
||||||
else if (count($values) == 4) // old declaration, for backward compatibility
|
{
|
||||||
{
|
if ($values[0] != $type) continue;
|
||||||
if ($values[0] != $type) continue;
|
if ($values[2]) $langs->load($values[2]);
|
||||||
if ($values[2]) $langs->load($values[2]);
|
$head[$h][0] = dol_buildpath(preg_replace('/__ID__/i',$object->id,$values[3]),1);
|
||||||
$head[$h][0] = dol_buildpath(preg_replace('/__ID__/i',$object->id,$values[3]),1);
|
$head[$h][1] = $langs->trans($values[1]);
|
||||||
$head[$h][1] = $langs->trans($values[1]);
|
$head[$h][2] = 'tab'.$values[1];
|
||||||
$head[$h][2] = 'tab'.$values[1];
|
$h++;
|
||||||
$h++;
|
}
|
||||||
}
|
}
|
||||||
}
|
else if ($mode == 'remove')
|
||||||
else if ($mode == 'remove')
|
{
|
||||||
{
|
if ($values[0] != $type) continue;
|
||||||
if ($values[0] != $type) continue;
|
$tabname=str_replace('-','',$values[1]);
|
||||||
$tabname=str_replace('-','',$values[1]);
|
foreach($head as $key => $val)
|
||||||
foreach($head as $key => $val)
|
{
|
||||||
{
|
$condition = (! empty($values[3]) ? verifCond($values[3]) : 1);
|
||||||
if ($head[$key][2]==$tabname)
|
if ($head[$key][2]==$tabname && $condition)
|
||||||
{
|
{
|
||||||
//print 'on vire '.$tabname.' key='.$key;
|
unset($head[$key]);
|
||||||
unset($head[$key]);
|
break;
|
||||||
break;
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user