Beispiel #1
0
 public function options()
 {
     $user = \Auth::user();
     //obtengo los id de los modulos del perfil del usuario
     $modules = explode(',', $user->type->activated_modules);
     //se guardan en un array de string
     //obtengo los id de submodulos del perfil del usuario
     $submodules = explode(',', $user->type->activated_submodules);
     //recorro el array de string modules
     foreach ($modules as $value) {
         //obtengo el modulo (value es el id)
         $module = Module::find($value);
         //recorro los submodules para guardarlos en un array
         foreach ($submodules as $id) {
             $submodule = Submodule::find($id);
             //tambien se puede usar $submodule->module->id por la relacion de tablas
             if ($module->id == $submodule->module_id) {
                 $submoduleArray[] = ['description' => $submodule->description, 'url' => $submodule->url];
             }
         }
         //se rellena el array final
         $options[] = ['description' => $module->description, 'icon' => $module->icon, 'submodule' => $submoduleArray];
         $submoduleArray = [];
     }
     return $options;
 }
 private function addModulesSubmodules($request)
 {
     $centinel = ['1' => 0, '2' => 0, '3' => 0, '4' => 0, '5' => 0, '6' => 0];
     $allsub = Submodule::get();
     foreach ($allsub as $submod) {
         if ($request->has($submod->description)) {
             if ($centinel[$submod->module_id] == 0) {
                 $this->modules .= empty($this->modules) ? $submod->module_id : ',' . $submod->module_id;
                 $centinel[$submod->module_id] = 1;
             }
             $this->submodules .= empty($this->submodules) ? $submod->id : ',' . $submod->id;
         }
     }
 }