Exemplo n.º 1
0
 public function dataTable()
 {
     Doo::loadClassAt('html/DataTable', 'default');
     Doo::loadClassAt('Menu', 'default');
     $menu = new menu(DBproxy::getManage());
     $dt = new DataTable();
     MenuController::$data = $data = $menu->getMenuTreeList();
     // D($data);
     function table_name($row, $rowData, $val)
     {
         $sep = substr($rowData['_sep'], 1);
         if ($sep != '') {
             $sep = str_replace('.', '    ', $sep);
             $dot = '└─';
             if (isset(MenuController::$data[$row + 1])) {
                 if (MenuController::$data[$row + 1]['parent_id'] == $rowData['parent_id']) {
                     $dot = '├─';
                 }
             }
             $sep = $sep . $dot;
         }
         return '<div style="left">' . $sep . $val . '</div>';
     }
     function table_type($row, $rowData, $val)
     {
         return $val == 2 ? '分类' : '页面';
     }
     function table_show($row, $rowData, $val)
     {
         return $val == 1 ? '<span class="label label-success">是</span>' : '<span class="label">否</span>';
     }
     // 表格按钮
     function table_button($row, $rowData, $val)
     {
         $modUrl = MenuController::$modUrl . $rowData['id'] . '&menu_name=' . $rowData['menu_name'] . '&sort_id=' . $rowData['sort_id'] . '&type_id=' . $rowData['type_id'] . '&perm_id=' . $rowData['perm_id'] . '&is_show=' . $rowData['is_show'] . '&page_url=' . urlencode($rowData['url']) . '&parent_id=' . $rowData['parent_id'] . '&_sep=' . $rowData['_sep'];
         $delUrl = MenuController::$delUrl . $rowData['id'];
         $a = '<a href="' . $modUrl . '" class="blue-stripe btn mini">编辑/查看</a>';
         $a .= '  <a href="' . $delUrl . '" class="red-stripe btn mini js-datatable-del">删除</a>';
         return $a;
     }
     // 表头
     $header = array('menu_name' => array('name' => '菜单名称', 'callback' => 'table_name'), 'id' => array('name' => 'ID'), 'parent_id' => array('name' => '所属父ID'), 'type_id' => array('name' => '类型', 'callback' => 'table_type', 'headerAttr' => 'filterType="enum"'), 'perm_id' => array('name' => '菜单权限'), 'url' => array('name' => '菜单URL'), 'is_show' => array('name' => '是否显示', 'callback' => 'table_show', 'headerAttr' => 'filterType="enum"'), 'sort_id' => array('name' => '排序'), 'action' => array('name' => '操作', 'callback' => 'table_button'));
     // 生产表格
     $content = $dt->setTitle('')->setAttr(array('class' => 'table table-hover', 'id' => 'js-queryTable'))->setHeader($header)->setData($data)->setTopContent('<a href="' . MenuController::$addUrl . '" class="btn green-stripe"><i class="icon-plus"></i>添加菜单</a>' . '<p id="js-queryTable-filter">Filter</p>')->setDefaultValue('unkown')->render(false);
     $this->_includeJsFileList[] = 'js/default/menu.js';
     // 显示模版
     $this->contentlayoutRender($content);
 }