示例#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;
 }
示例#2
0
 public function get()
 {
     //obtengo todos los modulos
     $modules = Module::get();
     //recorro el array de objetos modules
     foreach ($modules as $module) {
         //obtengo los submodulos (en un array de submodulos)
         $submodules = $module->submodules;
         //recorro los submodules para obtener cada submodulo
         foreach ($submodules as $submodule) {
             $submoduleArray[] = ['id' => $submodule->id, 'description' => $submodule->description];
         }
         $options[] = ['description' => $module->description, 'submodule' => $submoduleArray];
         $submoduleArray = [];
     }
     return $options;
 }