Пример #1
0
 /**
  * Devuelve recursos contenedores del mismo tipo y del mismo grupo que el recurso contenedor de $this->recurso
  * @param void
  *	@return array
  */
 public function getContenedores()
 {
     $contenedores = array();
     if ($this->recurso->contenedor != null) {
         $contenedores = Recurso::where('tipo', '=', $this->recurso->contenedor->tipo)->where('grupo_id', '=', $this->recurso->contenedor->grupo_id)->get()->toArray();
     } else {
         $contenedores = GrupoRecurso::where('tipo', '=', $this->recurso->tipo)->get()->toArray();
     }
     return $contenedores;
 }
Пример #2
0
 /**
  * //Devuelve los grupos contenedores del mismo tipo que $this->recurso
  * @param void
  *	@return array
  */
 public function getContenedores()
 {
     $contenedores = array();
     $contenedores = GrupoRecurso::where('tipo', '=', $this->recurso->tipo)->get()->toArray();
     return $contenedores;
 }
Пример #3
0
 /**
  * @param Input::get('nombre')      string
  * @param Input::get('descripcion') string
  * @param Input::get('tipo')        string
  * @param Input::get('id_lugar')    string
  * @param Input::get('padre_id')    int 
  * @param Input::get('modo')        int (0|1)
  * @param Input::get('roles')       array
  *
  * @return $result                  array    
  */
 public function ajaxEditRecurso()
 {
     // :)
     //Input
     $id = Input::get('id', '');
     $nombre = Input::get('nombre');
     $tipo = Input::get('tipo');
     //espacio|puesto|tipoequipo|equipo
     $padre_id = Input::get('padre_id', '');
     $modo = Input::get('modo', '1');
     //0=gestión con validación, 1=gestión sin validación
     $descripcion = Input::get('descripcion', '');
     $id_lugar = Input::get('id_lugar', '');
     $roles = Input::get('roles');
     //roles con acceso para poder reservar (array())
     //out
     $result = array('error' => false, 'msg' => '', 'errors' => array());
     //Validación de formulario
     $rules = array('id' => 'required|exists:recursos', 'nombre' => 'required|unique:recursos,nombre,' . Input::get('id') . ',id,deleted_at,NULL', 'tipo' => 'required|in:' . implode(',', Config::get('options.recursos')), 'padre_id' => 'required', 'modo' => 'required|in:' . implode(',', Config::get('options.modoGestion')));
     $messages = array('id.exists' => 'Identificador de recurso no encontrado....', 'required' => 'El campo <strong>:attribute</strong> es obligatorio....', 'unique' => 'Existe un recurso con el mismo nombre...', 'tipo.in' => 'El tipo de recurso no está definido...', 'modo.in' => 'Modo de Gestión de solicitudes de reserva no definido....', 'grupo_id.required_if' => 'identificador de grupo requerido....', 'espacio_id.required_if' => 'identificador de espacio requerido....', 'grupo_id.exists' => 'No existe identificador de grupo...', 'grupo_id.sametypes' => 'No coinciden los tipos de grupo y recurso...', 'existsContenedor' => 'No existe identificador de elemento padre..');
     $validator = Validator::make(Input::all(), $rules, $messages);
     $datos = array('padre_id' => $padre_id, 'tipo' => $tipo);
     $validator->sometimes('existsContenedor', '', function ($datos) {
         if (in_array($datos['tipo'], Config::get('options.recursosContenedores'))) {
             return GrupoRecurso::where('id', '=', $datos['padre_id'])->get() != null;
         }
         if (in_array($datos['tipo'], Config::get('options.recursosItems'))) {
             return Recurso::where('id', '=', $datos['padre_id'])->get() != null;
         }
     });
     if ($validator->fails()) {
         //Si errores en el formulario
         $result['error'] = true;
         $result['errors'] = $validator->errors()->toArray();
     } else {
         $recurso = Recurso::findOrFail($id);
         $sgrRecurso = Factoria::getRecursoInstance($recurso);
         $sgrRecurso->edit(Input::all());
         $sgrRecurso->save();
         $result['msg'] = (string) View::make('msg.success')->with(array('msg' => Config::get('msg.editrecursosuccess')));
     }
     return $result;
 }