Index: branches/unlabeled/unlabeled-1.28.2/kernel/units/categories/categories_tag_processor.php =================================================================== diff -u -r5637 -r5651 --- branches/unlabeled/unlabeled-1.28.2/kernel/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 5637) +++ branches/unlabeled/unlabeled-1.28.2/kernel/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 5651) @@ -137,7 +137,7 @@ $category_data = $this->Conn->GetRow($sql); $ret = ''; if ($category_data) { - $category_names = explode('|', $category_data[$navbar_field]); + $category_names = explode('&|&', $category_data[$navbar_field]); $category_ids = explode('|', substr($category_data['ParentPath'], 1, -1)); // add "Home" category at beginning of path Index: branches/unlabeled/unlabeled-1.7.20/kernel/admin/include/parser.php =================================================================== diff -u -r3304 -r5651 --- branches/unlabeled/unlabeled-1.7.20/kernel/admin/include/parser.php (.../parser.php) (revision 3304) +++ branches/unlabeled/unlabeled-1.7.20/kernel/admin/include/parser.php (.../parser.php) (revision 5651) @@ -244,7 +244,7 @@ switch($info_type) { case 'rel_list': // Edit Category -> Relations List - return Array( 'MainTable' => 'Category', 'ItemNameField' => 'CachedNavbar', + return Array( 'MainTable' => 'Category', 'ItemNameField' => 'CachedNavbar', // not used, because we have all relations new sections 'ItemNamePhrase' => 'la_Text_Category', 'TargetType' => 1); break; Index: branches/unlabeled/unlabeled-1.28.2/core/units/categories/categories_tag_processor.php =================================================================== diff -u -r5637 -r5651 --- branches/unlabeled/unlabeled-1.28.2/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 5637) +++ branches/unlabeled/unlabeled-1.28.2/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 5651) @@ -137,7 +137,7 @@ $category_data = $this->Conn->GetRow($sql); $ret = ''; if ($category_data) { - $category_names = explode('|', $category_data[$navbar_field]); + $category_names = explode('&|&', $category_data[$navbar_field]); $category_ids = explode('|', substr($category_data['ParentPath'], 1, -1)); // add "Home" category at beginning of path Index: branches/unlabeled/unlabeled-1.6.2/core/units/categories/cache_updater.php =================================================================== diff -u -r5636 -r5651 --- branches/unlabeled/unlabeled-1.6.2/core/units/categories/cache_updater.php (.../cache_updater.php) (revision 5636) +++ branches/unlabeled/unlabeled-1.6.2/core/units/categories/cache_updater.php (.../cache_updater.php) (revision 5651) @@ -289,7 +289,7 @@ $i = 1; while ($i <= $this->languageCount) { - $fields_hash['l'.$i.'_CachedNavbar'] = implode('|', $data['titles'][$i]); + $fields_hash['l'.$i.'_CachedNavbar'] = implode('&|&', $data['titles'][$i]); $i++; } Index: branches/unlabeled/unlabeled-1.155.2/core/kernel/application.php =================================================================== diff -u -r5642 -r5651 --- branches/unlabeled/unlabeled-1.155.2/core/kernel/application.php (.../application.php) (revision 5642) +++ branches/unlabeled/unlabeled-1.155.2/core/kernel/application.php (.../application.php) (revision 5651) @@ -718,7 +718,6 @@ */ function UseOutputCompression() { -// return false; return $this->ConfigValue('UseOutputCompression') && function_exists('gzencode') && strstr($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip'); } Index: branches/unlabeled/unlabeled-1.6.2/kernel/units/categories/cache_updater.php =================================================================== diff -u -r5636 -r5651 --- branches/unlabeled/unlabeled-1.6.2/kernel/units/categories/cache_updater.php (.../cache_updater.php) (revision 5636) +++ branches/unlabeled/unlabeled-1.6.2/kernel/units/categories/cache_updater.php (.../cache_updater.php) (revision 5651) @@ -289,7 +289,7 @@ $i = 1; while ($i <= $this->languageCount) { - $fields_hash['l'.$i.'_CachedNavbar'] = implode('|', $data['titles'][$i]); + $fields_hash['l'.$i.'_CachedNavbar'] = implode('&|&', $data['titles'][$i]); $i++; } Index: branches/unlabeled/unlabeled-1.100.2/kernel/parser.php =================================================================== diff -u -r5255 -r5651 --- branches/unlabeled/unlabeled-1.100.2/kernel/parser.php (.../parser.php) (revision 5255) +++ branches/unlabeled/unlabeled-1.100.2/kernel/parser.php (.../parser.php) (revision 5651) @@ -1258,10 +1258,13 @@ $c = $objCatList->GetCategory($CurrentCat); if($attribs["_fullpath"]) { - $path = $c->Get("CachedNavbar"); - - if(strlen($path)) - $ret .= " - ".$path; + $application =& kApplication::Instance(); + $ml_formatter =& $application->recallObject('kMultiLanguage'); + $path = $c->Get($ml_formatter->LangFieldName('CachedNavbar')); + + if (strlen($path)) { + $ret .= " - ".str_replace('&|&', ' > ', $path); + } } else { Index: branches/unlabeled/unlabeled-1.8.2/kernel/units/permissions/permissions_tag_processor.php =================================================================== diff -u -r5636 -r5651 --- branches/unlabeled/unlabeled-1.8.2/kernel/units/permissions/permissions_tag_processor.php (.../permissions_tag_processor.php) (revision 5636) +++ branches/unlabeled/unlabeled-1.8.2/kernel/units/permissions/permissions_tag_processor.php (.../permissions_tag_processor.php) (revision 5651) @@ -168,7 +168,7 @@ $sql = 'SELECT '.$ml_formatter->LangFieldName('CachedNavbar').' FROM '.$table_name.' WHERE '.$id_field.' = '.$category_id; - $category_path = trim($this->CategoryPath( Array('cat_id' => 0) ).' > '.str_replace('|', ' > ', $this->Conn->GetOne($sql)), ' > '); + $category_path = trim($this->CategoryPath( Array('cat_id' => 0) ).' > '.str_replace('&|&', ' > ', $this->Conn->GetOne($sql)), ' > '); } else { $category_path = $this->Application->Phrase( $this->Application->ConfigValue('Root_Name') ); Index: branches/unlabeled/unlabeled-1.8.2/core/units/permissions/permissions_tag_processor.php =================================================================== diff -u -r5636 -r5651 --- branches/unlabeled/unlabeled-1.8.2/core/units/permissions/permissions_tag_processor.php (.../permissions_tag_processor.php) (revision 5636) +++ branches/unlabeled/unlabeled-1.8.2/core/units/permissions/permissions_tag_processor.php (.../permissions_tag_processor.php) (revision 5651) @@ -168,7 +168,7 @@ $sql = 'SELECT '.$ml_formatter->LangFieldName('CachedNavbar').' FROM '.$table_name.' WHERE '.$id_field.' = '.$category_id; - $category_path = trim($this->CategoryPath( Array('cat_id' => 0) ).' > '.str_replace('|', ' > ', $this->Conn->GetOne($sql)), ' > '); + $category_path = trim($this->CategoryPath( Array('cat_id' => 0) ).' > '.str_replace('&|&', ' > ', $this->Conn->GetOne($sql)), ' > '); } else { $category_path = $this->Application->Phrase( $this->Application->ConfigValue('Root_Name') ); Index: branches/unlabeled/unlabeled-1.56.2/kernel/include/category.php =================================================================== diff -u -r5444 -r5651 --- branches/unlabeled/unlabeled-1.56.2/kernel/include/category.php (.../category.php) (revision 5444) +++ branches/unlabeled/unlabeled-1.56.2/kernel/include/category.php (.../category.php) (revision 5651) @@ -327,11 +327,20 @@ $cateogry_template = ''; $item_template = ''; + $ml_helper =& $this->Application->recallObject('kMultiLanguageHelper'); + $language_count = $ml_helper->getLanguageCount(); + $primary_lang_id = $this->Application->GetDefaultLanguageId(); + do { - $rs = $this->adodbConnection->Execute('SELECT ParentId, '.$this->TitleField.', Filename, CachedCategoryTemplate, CachedItemTemplate FROM '.$this->tablename.' WHERE CategoryId = '.$Id2); + $rs = $this->adodbConnection->Execute('SELECT * FROM '.$this->tablename.' WHERE CategoryId = '.$Id2); $path_parts[] = $Id2; - $nav_parts[] = $rs->fields[$this->TitleField]; $named_parts[] = $rs->fields['Filename']; + + $i = 1; + while ($i <= $language_count) { + $nav_parts[$i][] = $rs->fields['l'.$i.'_Name'] ? $rs->fields['l'.$i.'_Name'] : $rs->fields['l'.$primary_lang_id.'_Name']; + $i++; + } if (!$cateogry_template && $rs->fields['CachedCategoryTemplate']) { $cateogry_template = $rs->fields['CachedCategoryTemplate']; @@ -346,27 +355,32 @@ } while ($Id2 != '0'); $parent_path = '|'.implode('|', array_reverse($path_parts) ).'|'; - $nav_bar = implode('>', array_reverse($nav_parts) ); $named_path = implode('/', array_reverse($named_parts) ); + + $i = 1; + while ($i <= $language_count) { + $this->Set('l'.$i.'_CachedNavbar', implode('&|&', array_reverse($nav_parts[$i]) )); + $i++; + } $this->Set('ParentPath', $parent_path); - $this->Set('CachedNavbar', $nav_bar); $this->Set('NamedParentPath', $named_path); $this->Set('CachedCategoryTemplate', $cateogry_template); $this->Set('CachedItemTemplate', $item_template); $this->Update(); } - function GetCachedNavBar() - { - $res = $this->Get("CachedNavbar"); - if(!strlen($res)) - { - $this->UpdateCachedPath(); - $res = $this->Get("CachedNavbar"); - } - return $res; + function GetCachedNavBar() + { + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + $navbar_field = $ml_formatter->LangFieldName('CachedNavbar'); + $res = $this->Get($navbar_field); + if (!strlen($res)) { + $this->UpdateCachedPath(); + $res = $this->Get($navbar_field); + } + return str_replace('&|&', ' > ', $res); } function Increment_Count() { @@ -828,6 +842,12 @@ return $res; } + function GetNavbar() + { + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + return str_replace('&|&', ' > ', $this->Get($ml_formatter->LangFieldName('CachedNavbar'))); + } + function ParseObject($element) { global $objConfig, $objCatList, $rootURL, $var_list, $var_list_update, $m_var_list_update, $objItemTypes,$objCountCache, $objUsers; @@ -890,6 +910,9 @@ @field:cat.cachednavbar @description: Category cached navbar */ + + $this->Set('CachedNavbar', $this->GetNavbar()); + $ret = $this->HighlightField("CachedNavbar"); if(!strlen($ret)) { Index: branches/unlabeled/unlabeled-1.13.2/kernel/units/configuration/configuration_tag_processor.php =================================================================== diff -u -r5637 -r5651 --- branches/unlabeled/unlabeled-1.13.2/kernel/units/configuration/configuration_tag_processor.php (.../configuration_tag_processor.php) (revision 5637) +++ branches/unlabeled/unlabeled-1.13.2/kernel/units/configuration/configuration_tag_processor.php (.../configuration_tag_processor.php) (revision 5651) @@ -172,7 +172,7 @@ $category_data = $this->Conn->GetRow($sql); $ret = ''; if ($category_data) { - $category_names = explode('|', $category_data[$navbar_field]); + $category_names = explode('&|&', $category_data[$navbar_field]); $category_ids = explode('|', substr($category_data['ParentPath'], 1, -1)); // add "Home" category at beginning of path Index: branches/unlabeled/unlabeled-1.5.52/kernel/units/category_items/category_items_tag_processor.php =================================================================== diff -u -r1838 -r5651 --- branches/unlabeled/unlabeled-1.5.52/kernel/units/category_items/category_items_tag_processor.php (.../category_items_tag_processor.php) (revision 1838) +++ branches/unlabeled/unlabeled-1.5.52/kernel/units/category_items/category_items_tag_processor.php (.../category_items_tag_processor.php) (revision 5651) @@ -5,7 +5,7 @@ function CategoryName($params) { $root_phrase = $this->Application->ConfigValue('Root_Name'); - $value = $this->Field($params); + $value = str_replace('&|&', ' > ', $this->Field($params)); $ret = $this->Application->Phrase($root_phrase).( $value ? ' > ' : '').$value; if( $this->Field( Array('field'=> 'PrimaryCat') ) == 1 ) { Index: branches/unlabeled/unlabeled-1.13.2/core/units/configuration/configuration_tag_processor.php =================================================================== diff -u -r5637 -r5651 --- branches/unlabeled/unlabeled-1.13.2/core/units/configuration/configuration_tag_processor.php (.../configuration_tag_processor.php) (revision 5637) +++ branches/unlabeled/unlabeled-1.13.2/core/units/configuration/configuration_tag_processor.php (.../configuration_tag_processor.php) (revision 5651) @@ -172,7 +172,7 @@ $category_data = $this->Conn->GetRow($sql); $ret = ''; if ($category_data) { - $category_names = explode('|', $category_data[$navbar_field]); + $category_names = explode('&|&', $category_data[$navbar_field]); $category_ids = explode('|', substr($category_data['ParentPath'], 1, -1)); // add "Home" category at beginning of path Index: branches/unlabeled/unlabeled-1.5.52/core/units/category_items/category_items_tag_processor.php =================================================================== diff -u -r1838 -r5651 --- branches/unlabeled/unlabeled-1.5.52/core/units/category_items/category_items_tag_processor.php (.../category_items_tag_processor.php) (revision 1838) +++ branches/unlabeled/unlabeled-1.5.52/core/units/category_items/category_items_tag_processor.php (.../category_items_tag_processor.php) (revision 5651) @@ -5,7 +5,7 @@ function CategoryName($params) { $root_phrase = $this->Application->ConfigValue('Root_Name'); - $value = $this->Field($params); + $value = str_replace('&|&', ' > ', $this->Field($params)); $ret = $this->Application->Phrase($root_phrase).( $value ? ' > ' : '').$value; if( $this->Field( Array('field'=> 'PrimaryCat') ) == 1 ) { Index: branches/unlabeled/unlabeled-1.12.2/admin/import/step4.php =================================================================== diff -u -r5549 -r5651 --- branches/unlabeled/unlabeled-1.12.2/admin/import/step4.php (.../step4.php) (revision 5549) +++ branches/unlabeled/unlabeled-1.12.2/admin/import/step4.php (.../step4.php) (revision 5651) @@ -116,7 +116,7 @@ if($catid > 0) { $c = $objCatList->GetItemByField('ResourceId', $catid); - $path .= ">".$c->GetCachedNavBar(); + $path .= " > ".$c->GetCachedNavBar(); } ?> Index: branches/unlabeled/unlabeled-1.7.2/kernel/units/category_items/category_items_event_handler.php =================================================================== diff -u -r5521 -r5651 --- branches/unlabeled/unlabeled-1.7.2/kernel/units/category_items/category_items_event_handler.php (.../category_items_event_handler.php) (revision 5521) +++ branches/unlabeled/unlabeled-1.7.2/kernel/units/category_items/category_items_event_handler.php (.../category_items_event_handler.php) (revision 5651) @@ -2,7 +2,21 @@ class CategoryItemsEventHander extends InpDBEventHandler { + /** + * Setting language dependant navbar as calculated field + * + * @param kEvent $event + */ + function SetCustomQuery(&$event) + { + $object =& $event->getObject(); + + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + $object->addCalculatedField('CategoryName', 'c.'.$ml_formatter->LangFieldName('CachedNavbar')); + } + + /** * Set's new category as primary for product * * @param kEvent $event Index: branches/unlabeled/unlabeled-1.11.2/core/units/category_items/category_items_config.php =================================================================== diff -u -r5537 -r5651 --- branches/unlabeled/unlabeled-1.11.2/core/units/category_items/category_items_config.php (.../category_items_config.php) (revision 5537) +++ branches/unlabeled/unlabeled-1.11.2/core/units/category_items/category_items_config.php (.../category_items_config.php) (revision 5651) @@ -32,7 +32,6 @@ 'CalculatedFields' => Array( '' => Array ( - 'CategoryName' => 'c.CachedNavbar', 'DummyId' => 'IF(ISNULL(c.CategoryId),0,c.CategoryId)', 'CategoryStatus'=> 'c.Status', ) @@ -49,17 +48,18 @@ ) ), 'Fields' => Array( - 'DummyId' => Array(), + 'DummyId' => Array(), 'CategoryId' => Array('type'=>'int','not_null'=>1,'default'=>0), - 'ItemResourceId' => Array('not_null' => 1, 'default' => 0), - 'PrimaryCat' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), - 'ItemPrefix' => Array('type' => 'string','not_null'=>1,'default'=>''), - 'Filename' => Array('type' => 'string','not_null'=>1,'default'=>''), + 'ItemResourceId' => Array('not_null' => 1, 'default' => 0), + 'PrimaryCat' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'ItemPrefix' => Array('type' => 'string','not_null'=>1,'default'=>''), + 'Filename' => Array('type' => 'string','not_null'=>1,'default'=>''), ), - 'VirtualFields' => Array( - 'CategoryName' => Array(), - 'DummyId' => Array(), - 'CategoryStatus' => Array(), + + 'VirtualFields' => Array ( + 'CategoryName' => Array(), + 'DummyId' => Array(), + 'CategoryStatus' => Array(), ), 'Grids' => Array( Index: branches/unlabeled/unlabeled-1.20.2/kernel/units/general/cat_dbitem_export.php =================================================================== diff -u -r5538 -r5651 --- branches/unlabeled/unlabeled-1.20.2/kernel/units/general/cat_dbitem_export.php (.../cat_dbitem_export.php) (revision 5538) +++ branches/unlabeled/unlabeled-1.20.2/kernel/units/general/cat_dbitem_export.php (.../cat_dbitem_export.php) (revision 5651) @@ -448,10 +448,10 @@ } if ($this->exportOptions['IsBaseCategory'] ) { - $sql = 'SELECT CachedNavbar + $sql = 'SELECT ParentPath FROM '.TABLE_PREFIX.'Category WHERE CategoryId = '.$this->Application->GetVar('m_cat_id'); - $this->exportOptions['BaseLevel'] = substr_count($this->Conn->GetOne($sql), '>') + 1; // level to cut from other categories + $this->exportOptions['BaseLevel'] = substr_count($this->Conn->GetOne($sql), '|') - 1; // level to cut from other categories } // 1. export field titles if required @@ -957,11 +957,12 @@ $category_path = $this->getFromCache('category_path', $category_id); if (!$category_path) { - $sql = 'SELECT CachedNavbar + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + $sql = 'SELECT '.$ml_formatter->LangFieldName('CachedNavbar').' FROM '.TABLE_PREFIX.'Category WHERE CategoryId = '.$category_id; $category_path = $this->Conn->GetOne($sql); - $category_path = $category_path ? explode('>', $category_path) : Array(); + $category_path = $category_path ? explode('&|&', $category_path) : Array(); if ($this->exportOptions['IsBaseCategory']) { $i = $this->exportOptions['BaseLevel']; Index: branches/unlabeled/unlabeled-1.11.2/kernel/units/category_items/category_items_config.php =================================================================== diff -u -r5537 -r5651 --- branches/unlabeled/unlabeled-1.11.2/kernel/units/category_items/category_items_config.php (.../category_items_config.php) (revision 5537) +++ branches/unlabeled/unlabeled-1.11.2/kernel/units/category_items/category_items_config.php (.../category_items_config.php) (revision 5651) @@ -32,7 +32,6 @@ 'CalculatedFields' => Array( '' => Array ( - 'CategoryName' => 'c.CachedNavbar', 'DummyId' => 'IF(ISNULL(c.CategoryId),0,c.CategoryId)', 'CategoryStatus'=> 'c.Status', ) @@ -49,17 +48,18 @@ ) ), 'Fields' => Array( - 'DummyId' => Array(), + 'DummyId' => Array(), 'CategoryId' => Array('type'=>'int','not_null'=>1,'default'=>0), - 'ItemResourceId' => Array('not_null' => 1, 'default' => 0), - 'PrimaryCat' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), - 'ItemPrefix' => Array('type' => 'string','not_null'=>1,'default'=>''), - 'Filename' => Array('type' => 'string','not_null'=>1,'default'=>''), + 'ItemResourceId' => Array('not_null' => 1, 'default' => 0), + 'PrimaryCat' => Array('type' => 'int', 'not_null' => 1, 'default' => 0), + 'ItemPrefix' => Array('type' => 'string','not_null'=>1,'default'=>''), + 'Filename' => Array('type' => 'string','not_null'=>1,'default'=>''), ), - 'VirtualFields' => Array( - 'CategoryName' => Array(), - 'DummyId' => Array(), - 'CategoryStatus' => Array(), + + 'VirtualFields' => Array ( + 'CategoryName' => Array(), + 'DummyId' => Array(), + 'CategoryStatus' => Array(), ), 'Grids' => Array( Index: branches/unlabeled/unlabeled-1.7.2/core/units/category_items/category_items_event_handler.php =================================================================== diff -u -r5521 -r5651 --- branches/unlabeled/unlabeled-1.7.2/core/units/category_items/category_items_event_handler.php (.../category_items_event_handler.php) (revision 5521) +++ branches/unlabeled/unlabeled-1.7.2/core/units/category_items/category_items_event_handler.php (.../category_items_event_handler.php) (revision 5651) @@ -2,7 +2,21 @@ class CategoryItemsEventHander extends InpDBEventHandler { + /** + * Setting language dependant navbar as calculated field + * + * @param kEvent $event + */ + function SetCustomQuery(&$event) + { + $object =& $event->getObject(); + + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + $object->addCalculatedField('CategoryName', 'c.'.$ml_formatter->LangFieldName('CachedNavbar')); + } + + /** * Set's new category as primary for product * * @param kEvent $event Index: branches/unlabeled/unlabeled-1.123.2/kernel/action.php =================================================================== diff -u -r5631 -r5651 --- branches/unlabeled/unlabeled-1.123.2/kernel/action.php (.../action.php) (revision 5631) +++ branches/unlabeled/unlabeled-1.123.2/kernel/action.php (.../action.php) (revision 5651) @@ -57,7 +57,8 @@ $cat = $objCatList->GetByResource($cat_id); if(is_object($cat)) { - $navbar = $cat->Get('CachedNavbar'); + $ml_formatter =& $application->recallObject('kMultiLanguage'); + $navbar = $cat->Get( $ml_formatter->LangFieldName('CachedNavbar') ); $objSession->SetVariable('catnavbar', $navbar); $objSession->SetVariable('import_category_id', $cat->UniqueId() ); } Index: branches/unlabeled/unlabeled-1.20.2/core/units/general/cat_dbitem_export.php =================================================================== diff -u -r5538 -r5651 --- branches/unlabeled/unlabeled-1.20.2/core/units/general/cat_dbitem_export.php (.../cat_dbitem_export.php) (revision 5538) +++ branches/unlabeled/unlabeled-1.20.2/core/units/general/cat_dbitem_export.php (.../cat_dbitem_export.php) (revision 5651) @@ -448,10 +448,10 @@ } if ($this->exportOptions['IsBaseCategory'] ) { - $sql = 'SELECT CachedNavbar + $sql = 'SELECT ParentPath FROM '.TABLE_PREFIX.'Category WHERE CategoryId = '.$this->Application->GetVar('m_cat_id'); - $this->exportOptions['BaseLevel'] = substr_count($this->Conn->GetOne($sql), '>') + 1; // level to cut from other categories + $this->exportOptions['BaseLevel'] = substr_count($this->Conn->GetOne($sql), '|') - 1; // level to cut from other categories } // 1. export field titles if required @@ -957,11 +957,12 @@ $category_path = $this->getFromCache('category_path', $category_id); if (!$category_path) { - $sql = 'SELECT CachedNavbar + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); + $sql = 'SELECT '.$ml_formatter->LangFieldName('CachedNavbar').' FROM '.TABLE_PREFIX.'Category WHERE CategoryId = '.$category_id; $category_path = $this->Conn->GetOne($sql); - $category_path = $category_path ? explode('>', $category_path) : Array(); + $category_path = $category_path ? explode('&|&', $category_path) : Array(); if ($this->exportOptions['IsBaseCategory']) { $i = $this->exportOptions['BaseLevel'];