private function walkItems($numSpaces)
 {
     $ess_menu = new ess_menu();
     $ess_menu->setAutoQuotesInFind(false);
     foreach ($ess_menu->query('SELECT * FROM ess_menu WHERE menu_id is NULL order by ord ASC') as $menuOpt) {
         $this->arrItems[] = $numSpaces . ':' . $menuOpt->id . ':' . $menuOpt->description;
         $this->recurWalkItems($ess_menu, $menuOpt->id, $numSpaces + 1);
     }
 }
 private function walkItems()
 {
     $this->objESS = new ESS_essentials();
     $ess_menu = new ess_menu();
     $ess_menu->setAutoQuotesInFind(false);
     $sql = 'SELECT ess_menu.id, ess_menu.description, ess_menu.url, ess_menu.icon, ess_menu.description FROM ess_menu INNER JOIN ess_profiles_detail ON (ess_profiles_detail.menu_id = ess_menu.id AND ess_profiles_detail.profiles_id = ' . $_SESSION['profile_id'] . ') WHERE ess_menu.menu_id is NULL ORDER BY ess_menu.ord ASC';
     foreach ($ess_menu->query($sql) as $menuOpt) {
         $url = '';
         $icon = '';
         if ($menuOpt->url) {
             if (stripos($menuOpt->url, '?')) {
                 $url = $menuOpt->url . '&secure_opf_code=' . $this->objESS->crypNumbers($menuOpt->id);
             } else {
                 $url = $menuOpt->url . '?secure_opf_code=' . $this->objESS->crypNumbers($menuOpt->id);
             }
             $icon = BASE_URL_PATH . 'common/js/essentials/' . $menuOpt->icon;
         }
         $this->js .= "d.add(" . $menuOpt->id . ",0,'" . $menuOpt->description . "','" . $url . "','" . $menuOpt->description . "','modulo','" . $icon . "');\n";
         $this->recurWalkItems($ess_menu, $menuOpt->id);
     }
 }