コード例 #1
0
 public static function navigationdata()
 {
     $testlist = array();
     $returndata = array();
     $navheader = Admin_Nav::order_by('step', 'asc')->get();
     foreach ($navheader as $key => $value) {
         $returndata[$key]['header'] = $value->navheader;
         $returndata[$key]['moduleid'] = $value->navheaderid;
         $testlist = Admin_Nav::find($value->navheaderid)->navpages()->order_by('parentstep', 'asc')->get();
         foreach ($testlist as $ckey => $cvalue) {
             $parent = Admin_ModulPage::find($cvalue->modulpageid);
             if (!empty($parent) && $cvalue->parentid == NULL) {
                 $returndata[$key]['parent'][$ckey]['alias'] = $parent->actionalias;
                 $returndata[$key]['parent'][$ckey]['pageid'] = $cvalue->navpageid;
                 $returndata[$key]['parent'][$ckey]['path'] = $parent->modul . '/' . $parent->controller . '/' . $parent->action;
                 $child = Admin_Navpage::where('parentid', '=', $cvalue->navpageid)->get();
                 if (!empty($child)) {
                     foreach ($child as $childkey => $childvalue) {
                         $childpage = Admin_ModulPage::find($childvalue->modulpageid);
                         $returndata[$key]['parent'][$ckey]['child'][$childkey]['alias'] = $childpage->actionalias;
                         $returndata[$key]['parent'][$ckey]['child'][$childkey]['childid'] = $childvalue->navpageid;
                         $returndata[$key]['parent'][$ckey]['child'][$childkey]['path'] = $childpage->controller . '/' . $childpage->action;
                     }
                 }
             }
         }
     }
     return $returndata;
 }
コード例 #2
0
 /**
  * navigation utilities function
  *
  * @return json data
  * 
  **/
 public function get_navchild()
 {
     $input = Input::get();
     $navigation = Admin_Navpage::find($input['navid']);
     $nav = Admin_Nav::find($navigation->navheaderid);
     $parent = Admin_ModulPage::find($navigation->modulpageid);
     $data['navheaderid'] = $navigation->navheaderid;
     $data['module'] = $nav->navheader;
     $data['parentid'] = $navigation->navpageid;
     $data['parent'] = $parent->actionalias;
     return json_encode($data);
 }
コード例 #3
0
 public static function setPages($component)
 {
     $ctrlArrangment = count($component) + 1;
     foreach ($component as $modul => $modulcontents) {
         unset($modulcontents['id']);
         $ctrlArrangment = count($modulcontents) + 1;
         foreach ($modulcontents as $submodul => $submodulcontents) {
             if ($submodulcontents['id'] == null) {
                 $menu = new Admin_ModulPage();
             } else {
                 $menu = Admin_ModulPage::find($submodulcontents['id']);
             }
             if (isset($submodulcontents['remove']) && $submodulcontents['remove'] == 1) {
                 Admin_ModulPage::find($submodulcontents['id'])->delete();
                 unset($submodulcontents['remove']);
             } else {
                 $menu->modul = $modul;
                 $menu->controller = $submodul;
                 $menu->controlleralias = $submodulcontents['controlleralias'];
                 $menu->visible = isset($submodulcontents['show']) && $submodulcontents['show'] == 'on' ? 1 : 0;
                 $menu->auth = isset($submodulcontents['auth']) && $submodulcontents['auth'] == 'on' ? 1 : 0;
                 $menu->admin = isset($submodulcontents['admin']) && $submodulcontents['admin'] == 'on' ? 1 : 0;
                 $menu->arrangement = isset($submodulcontents['arrangement']) ? $submodulcontents['arrangement'] : $ctrlArrangment;
                 $menu->save();
                 unset($submodulcontents['arrangement']);
                 unset($submodulcontents['controlleralias']);
                 unset($submodulcontents['show']);
                 unset($submodulcontents['auth']);
                 unset($submodulcontents['admin']);
             }
             unset($submodulcontents['id']);
             $actionArrangment = count($submodulcontents) + 1;
             foreach ($submodulcontents as $action => $actioncontents) {
                 if ($actioncontents['id'] == null) {
                     $menu = new Admin_ModulPage();
                 } else {
                     $menu = Admin_ModulPage::find($actioncontents['id']);
                 }
                 if (isset($actioncontents['remove']) && $actioncontents['remove'] == 1) {
                     Admin_ModulPage::find($actioncontents['id'])->delete();
                 } else {
                     $menu->modul = $modul;
                     $menu->controller = $submodul;
                     $menu->action = $action;
                     $menu->actionalias = $actioncontents['actionalias'];
                     $menu->visible = isset($actioncontents['show']) && $actioncontents['show'] == 'on' ? 1 : 0;
                     $menu->auth = isset($actioncontents['auth']) && $actioncontents['auth'] == 'on' ? 1 : 0;
                     $menu->admin = isset($actioncontents['admin']) && $actioncontents['admin'] == 'on' ? 1 : 0;
                     $menu->arrangement = isset($actioncontents['arrangement']) ? $actioncontents['arrangement'] : $actionArrangment;
                     $menu->save();
                 }
                 unset($submodulcontents[$action]);
                 $actionArrangment++;
             }
             $ctrlArrangment++;
         }
     }
 }