// Fixed tabs
This commit is contained in:
@@ -43,10 +43,14 @@
|
||||
{elseif $input.type == 'default_tab'}
|
||||
<select name="{$input.name}" id="{$input.name}">
|
||||
{foreach $input.options AS $option}
|
||||
<optgroup label="{$option.name|escape:'htmlall':'UTF-8'}"></optgroup>
|
||||
{foreach $option.children AS $children}
|
||||
<option value="{$children.id_tab}" {if $fields_value[$input.name] == $children.id_tab}selected="selected"{/if}> {$children.name|escape:'htmlall':'UTF-8'}</option>
|
||||
{/foreach}
|
||||
{if $option.children|@count}
|
||||
<optgroup label="{$option.name|escape:'htmlall':'UTF-8'}"></optgroup>
|
||||
{foreach $option.children AS $children}
|
||||
<option value="{$children.id_tab}" {if $fields_value[$input.name] == $children.id_tab}selected="selected"{/if}> {$children.name|escape:'htmlall':'UTF-8'}</option>
|
||||
{/foreach}
|
||||
{else}
|
||||
<option value="{$option.id_tab}" {if $fields_value[$input.name] == $option.id_tab}selected="selected"{/if}> {$option.name|escape:'htmlall':'UTF-8'}</option>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</select>
|
||||
{else}
|
||||
|
||||
@@ -5,35 +5,31 @@
|
||||
<span class="menu-collapse">
|
||||
<i class="icon-align-justify"></i>
|
||||
</span>
|
||||
{if $controller_name != 'AdminLogin'}
|
||||
|
||||
<ul class="menu">
|
||||
<li class="maintab {if $smarty.get.controller == 'AdminDashboard'}active{/if}">
|
||||
<a href="{$link->getAdminLink('AdminDashboard')|escape:'htmlall':'UTF-8'}" class="title">
|
||||
<i class="icon-AdminDashboard"></i>
|
||||
<span class="title">{l s='Dashboard'}</span>
|
||||
</a>
|
||||
</li>
|
||||
{foreach $tabs as $t}
|
||||
{if $t.active}
|
||||
<li class="maintab {if $t.sub_tabs}has_submenu{/if} {if $t.current}active{/if}" id="maintab{$t.id_tab}" data-submenu="{$t.id_tab}">
|
||||
<a href="{if count($t.sub_tabs) > 0}{$t.sub_tabs[0].href}{else}#{/if}" class="title" >
|
||||
<li class="maintab {if $t.current}active{/if} {if $t.sub_tabs|@count}has_submenu{/if}" id="maintab{$t.id_tab}" data-submenu="{$t.id_tab}">
|
||||
<a href="{if $t.sub_tabs|@count}{$t.sub_tabs[0].href}{else}{$t.href}{/if}" class="title" >
|
||||
<i class="icon-{$t.class_name}"></i>
|
||||
<span class="title">{if $t.name eq ''}{$t.class_name}{else}{$t.name}{/if}</span>
|
||||
</a>
|
||||
<ul class="submenu">
|
||||
{foreach from=$t.sub_tabs item=t2}
|
||||
{if $t2.active}
|
||||
<li {if $t2.current} class="active"{/if}>
|
||||
<a href="{$t2.href|escape:'htmlall':'UTF-8'}">
|
||||
{if $t2.name eq ''}{$t2.class_name}{else}{$t2.name|escape:'htmlall':'UTF-8'}{/if}
|
||||
</a>
|
||||
</li>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</ul>
|
||||
{if $t.sub_tabs|@count}
|
||||
<ul class="submenu">
|
||||
{foreach from=$t.sub_tabs item=t2}
|
||||
{if $t2.active}
|
||||
<li {if $t2.current} class="active"{/if}>
|
||||
<a href="{$t2.href|escape:'htmlall':'UTF-8'}">
|
||||
{if $t2.name eq ''}{$t2.class_name}{else}{$t2.name|escape:'htmlall':'UTF-8'}{/if}
|
||||
</a>
|
||||
</li>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
</li>
|
||||
{/if}
|
||||
{/foreach}
|
||||
</ul>
|
||||
{/if}
|
||||
|
||||
</nav>
|
||||
+5
-6
@@ -232,12 +232,10 @@ class TabCore extends ObjectModel
|
||||
{
|
||||
self::$_cache_tabs[$id_lang] = array();
|
||||
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS('
|
||||
SELECT *
|
||||
FROM `'._DB_PREFIX_.'tab` t
|
||||
LEFT JOIN `'._DB_PREFIX_.'tab_lang` tl
|
||||
ON (t.`id_tab` = tl.`id_tab` AND tl.`id_lang` = '.(int)$id_lang.')
|
||||
ORDER BY t.`position` ASC
|
||||
');
|
||||
SELECT *
|
||||
FROM `'._DB_PREFIX_.'tab` t
|
||||
LEFT JOIN `'._DB_PREFIX_.'tab_lang` tl ON (t.`id_tab` = tl.`id_tab` AND tl.`id_lang` = '.(int)$id_lang.')
|
||||
ORDER BY t.`position` ASC');
|
||||
foreach ($result as $row)
|
||||
{
|
||||
if (!isset(self::$_cache_tabs[$id_lang][$row['id_parent']]))
|
||||
@@ -252,6 +250,7 @@ class TabCore extends ObjectModel
|
||||
$array_all = array_merge($array_all, $array_parent);
|
||||
return $array_all;
|
||||
}
|
||||
|
||||
return (isset(self::$_cache_tabs[$id_lang][$id_parent]) ? self::$_cache_tabs[$id_lang][$id_parent] : array());
|
||||
}
|
||||
|
||||
|
||||
@@ -1441,7 +1441,9 @@ class AdminControllerCore extends Controller
|
||||
$current_id = Tab::getCurrentParentId();
|
||||
foreach ($tabs as $index => $tab)
|
||||
{
|
||||
if (($tab['class_name'] == 'AdminStock' && Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT') == 0) || $tab['class_name'] == 'AdminCarrierWizard')
|
||||
if (!checkTabRights($tab['id_tab'])
|
||||
|| ($tab['class_name'] == 'AdminStock' && Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT') == 0)
|
||||
|| $tab['class_name'] == 'AdminCarrierWizard')
|
||||
{
|
||||
unset($tabs[$index]);
|
||||
continue;
|
||||
@@ -1490,10 +1492,6 @@ class AdminControllerCore extends Controller
|
||||
unset($sub_tabs[$index2]);
|
||||
}
|
||||
$tabs[$index]['sub_tabs'] = $sub_tabs;
|
||||
|
||||
// If there are no subtabs, we don't want to display the parent tab in menu
|
||||
if (empty($sub_tabs))
|
||||
unset($tabs[$index]);
|
||||
}
|
||||
|
||||
if (Validate::isLoadedObject($this->context->employee))
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<field name="active"/>
|
||||
</fields>
|
||||
<entities>
|
||||
<tab id="Dashboard" id_parent="-1" active="1">
|
||||
<tab id="Dashboard" id_parent="" active="1">
|
||||
<class_name>AdminDashboard</class_name>
|
||||
</tab>
|
||||
<tab id="CMS_Pages" id_parent="-1" active="1">
|
||||
|
||||
Reference in New Issue
Block a user