protected function getLabel(MenuElem $menu_elem)
 {
     $label = $this->translateLabel($menu_elem->getLabel());
     if ($menu_elem->hasChildren() and $level == 0) {
         $label .= ' <b class="right-caret"></b>';
     }
     return $label;
 }
 private function unserializeElem($menu_elem_xml)
 {
     $label = (string) $menu_elem_xml->label;
     $url = (string) $menu_elem_xml->url;
     $submenu_xml = $menu_elem_xml->submenu->{'menu-elem'};
     $menu_elem = new MenuElem($label, $url);
     if ($submenu_xml) {
         foreach ($submenu_xml as $sub_elem_xml) {
             $sub_id = (string) $sub_elem_xml['id'];
             $sub_elem = $this->unserializeElem($sub_elem_xml);
             $menu_elem->addElem($sub_id, $sub_elem);
         }
     }
     return $menu_elem;
 }
 protected function getUrl(MenuElem $menu_elem)
 {
     return "?" . PAG_INDEX . "=" . $this->urls->getUrl($menu_elem->getUrl());
 }
 protected function buildAttrs(MenuElem $menu_elem)
 {
     $attr_li = $attr_a = array();
     if ($menu_elem->hasChildren()) {
         if ($level > 0) {
             $attr_li['class'][] = 'dropdown-submenu';
             if (!$this->isParentElemClickable()) {
                 $attr_a['class'][] = 'dropdown-toggle';
             } else {
                 $attr_a['class'][] = 'dropdown-submenu-toggle';
             }
         } else {
             $attr_li['class'][] = 'dropdown';
         }
         $attr_a['data-toggle'][] = 'dropdown';
     }
     if ($this->getActiveLink() and $this->getActiveLink() == $menu_elem->getUrl()) {
         $attr_li['class'][] = 'active';
     } else {
         if ($menu_elem->getLabel() == 'divider' && $menu_elem->getUrl() == 'divider') {
             $attr_li['class'] = 'divider';
         }
     }
     $attr_string_li = $this->attrToString($attr_li);
     $attr_string_a = $this->attrToString($attr_a);
     return array('li' => $attr_string_li, 'a' => $attr_string_a);
 }