/**
  * Get menu from database, and generate html nested list
  *
  * @param int $group_id
  * @param string $attr
  * @return string
  */
 function popoji_menu($group_id, $attr = '', $attrs = '', $attrss = '', $opt = '')
 {
     $tree = new Tree();
     $sql = sprintf('SELECT * FROM %s WHERE group_id = %s ORDER BY %s, %s', MENU_TABLE, $group_id, MENU_PARENT, MENU_POSITION);
     $menu = $this->db->GetAll($sql);
     $str = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'];
     $strlink = preg_replace("/\\/index\\.php\$/", "", $str);
     foreach ($menu as $row) {
         $httpdtc = substr($row[MENU_URL], 0, 7);
         $httpdtcs = substr($row[MENU_URL], 0, 8);
         if ($row[MENU_PARENT] == 0) {
             if ($row[MENU_CLASS] == "") {
                 if ($httpdtc == "http://" or $httpdtcs == "https://") {
                     $label = '<a href="' . $row[MENU_URL] . '">';
                 } else {
                     $label = '<a href="' . $strlink . '/' . $row[MENU_URL] . '">';
                 }
             } else {
                 if ($httpdtc == "http://" or $httpdtcs == "https://") {
                     $label = '<a ' . $attrs . ' href="' . $row[MENU_URL] . '">';
                 } else {
                     $label = '<a ' . $attrs . ' href="' . $strlink . '/' . $row[MENU_URL] . '">';
                 }
             }
         } else {
             if ($row[MENU_CLASS] == "") {
                 if ($httpdtc == "http://" or $httpdtcs == "https://") {
                     $label = '<a href="' . $row[MENU_URL] . '">';
                 } else {
                     $label = '<a href="' . $strlink . '/' . $row[MENU_URL] . '">';
                 }
             } else {
                 if ($httpdtc == "http://" or $httpdtcs == "https://") {
                     $label = '<a ' . $attrs . ' href="' . $row[MENU_URL] . '">';
                 } else {
                     $label = '<a ' . $attrs . ' href="' . $strlink . '/' . $row[MENU_URL] . '">';
                 }
             }
         }
         $label .= $row[MENU_TITLE];
         $label .= '</a>';
         $li_attr = '';
         if ($row[MENU_CLASS]) {
             $li_attr = ' class="' . $row[MENU_CLASS] . '"';
         }
         $tree->add_row($row[MENU_ID], $row[MENU_PARENT], $li_attr, $label);
     }
     $menu = $tree->generate_list($attr, $attrss, $opt);
     return $menu;
 }
示例#2
0
文件: Menu.php 项目: glial/glial
 public function menuManager($id_group = 1)
 {
     $db = $this->di['db']->sql(DB_DEFAULT);
     $sql = sprintf('SELECT * FROM %s WHERE %s = %s ORDER BY %s, %s', MENU_TABLE, MENU_GROUP, $id_group, MENU_PARENT, MENU_POSITION);
     $menu = $db->sql_fetch_yield($sql);
     $data['menu_ul'] = '<ul id="easymm"></ul>';
     if ($menu) {
         //include _DOC_ROOT . 'includes/tree.php';
         $tree = new Tree();
         foreach ($menu as $row) {
             $tree->add_row($row[MENU_ID], $row[MENU_PARENT], ' id="menu-' . $row[MENU_ID] . '" class="sortable"', $this->get_label($row));
         }
         $data['menu_ul'] = $tree->generate_list('id="easymm"');
     }
     $data['group_id'] = $id_group;
     $data['group_title'] = $db->sql_fetch_all(sprintf('SELECT %s FROM %s WHERE %s = %s', MENUGROUP_TITLE, MENUGROUP_TABLE, MENUGROUP_ID, $id_group))[0];
     $data['menu_groups'] = $db->sql_fetch_all(sprintf('SELECT %s, %s FROM %s', MENUGROUP_ID, MENUGROUP_TITLE, MENUGROUP_TABLE))[0];
     return $data;
 }
示例#3
0
文件: class.php 项目: rad4n/erekutoro
 /**
  * Show menu manager
  */
 public function menumanager()
 {
     $group_id = 1;
     if (isset($_GET['group_id'])) {
         $group_id = (int) $_GET['group_id'];
     }
     $menu = $this->get_menu($group_id);
     $data['menu_ul'] = '<ul id="easymm"></ul>';
     if ($menu) {
         include '../../po-component/po-menumanager/includes/tree.php';
         $tree = new Tree();
         foreach ($menu as $row) {
             $tree->add_row($row[MENU_ID], $row[MENU_PARENT], ' id="menu-' . $row[MENU_ID] . '" class="sortable"', $this->get_label($row));
         }
         $data['menu_ul'] = $tree->generate_list('id="easymm"');
     }
     $data['group_id'] = $group_id;
     $data['group_title'] = $this->get_menu_group_title($group_id);
     $data['menu_groups'] = $this->get_menu_groups();
     $this->view('menu', $data);
 }
 public function actionWebsite()
 {
     $group_id = 1;
     if (isset($_GET['group_id'])) {
         $group_id = (int) $_GET['group_id'];
     }
     $menu = Menu::model()->get_menu($group_id);
     $data['menu_ul'] = '<ul id="easymm"></ul>';
     if ($menu) {
         include 'includes/tree.php';
         $tree = new Tree();
         foreach ($menu as $row) {
             $tree->add_row($row[MENU_ID], $row[MENU_PARENT], ' id="menu-' . $row[MENU_ID] . '" class="sortable"', Menu::model()->get_label($row));
         }
         $data['menu_ul'] = $tree->generate_list('id="easymm"');
     }
     $data['group_id'] = $group_id;
     $data['group_title'] = Menu::model()->get_menu_group_title($group_id);
     $data['menu_groups'] = Menu::model()->get_menu_groups();
     //$this->view('menu', $data);
     $this->render('website', $data);
 }