public function download($id)
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         // Verifico si el usuario es un Webmaster
         if ($data["user"]->idrol == 1 || $data["user"]->idrol == 2 || $data["user"]->idrol == 3 || $data["user"]->idrol == 4 || $data["user"]->idrol == 7 || $data["user"]->idrol == 9 || $data["user"]->idrol == 10 || $data["user"]->idrol == 11 || $data["user"]->idrol == 12) {
             $plan = Perfil::find($id);
             $rutaDestino = $plan->url . $plan->nombre_archivo_encriptado;
             $headers = array('Content-Type', mime_content_type($rutaDestino));
             return Response::download($rutaDestino, basename($plan->nombre_archivo), $headers);
         } else {
             return View::make('error/error', $data);
         }
     } else {
         return View::make('error/error', $data);
     }
 }
 public function cambiarFotoAction($usuario_id)
 {
     $usuario_id = strip_tags(htmlspecialchars($usuario_id));
     $usuario_id = intval($usuario_id);
     $usuario_id = filter_var($usuario_id, FILTER_VALIDATE_INT);
     if (!$usuario_id) {
         $this->app->redirect('/usuario/0/foto/');
     }
     $usuario = Perfil::find($usuario_id);
     if (count($usuario) == 0) {
         $action = '/usuario/' . $usuario_id . '/foto/';
         $this->app->redirect($action);
     }
     $file = $_FILES['file'];
     foreach ($file['error'] as $key => $error) {
         if ($error == 0) {
             $finfo = finfo_open(FILEINFO_MIME_TYPE);
             $mime = finfo_file($finfo, $file['tmp_name'][$key]);
             if (strcmp($mime, 'image/jpg') == 0) {
                 $dirname = 'uploads/avatar/';
                 $filename = uniqid() . '.jpg';
                 $uploadfile = $dirname . $filename;
                 if (move_uploaded_file($file['tmp_name'][$key], $uploadfile)) {
                     $archivo = new Archivo();
                     $archivo->tipo_id = 4;
                     $archivo->nombre = $filename;
                     $archivo->peso = $file['size'][$key];
                     $archivo->extension = $file['type'][$key];
                     $archivo->save();
                     $usuario->fotoPerfil = $archivo->archivo_id;
                     $usuario->save();
                     $_SESSION['upload'] = 1;
                 } else {
                     $action = '/usuario/' . $usuario->usuario_id . '/foto/?attempt=2';
                     $this->app->redirect($action);
                 }
             }
         } else {
             $action = '/usuario/' . $usuario->usuario_id . '/foto/?attempt=3';
             $this->app->redirect($action);
         }
     }
 }
 public function submit_disable_perfil()
 {
     if (Auth::check()) {
         $data["inside_url"] = Config::get('app.inside_url');
         $data["user"] = Session::get('user');
         $data["permisos"] = Session::get('permisos');
         if (in_array('side_nuevo_usuario', $data["permisos"])) {
             $idperfiles = Input::get('idperfiles');
             $url = "sistema/edit_perfil/" . $idperfiles;
             $users_perfil = UsersPerfil::getUsersPorPerfil($idperfiles)->get();
             if ($users_perfil->isEmpty()) {
                 $perfil = Perfil::find($idperfiles);
                 $perfil->delete();
                 Session::flash('message', 'Se eliminó correctamente el perfil.');
             } else {
                 Session::flash('error', 'No se pudo eliminar el perfil debido a que por lo menos un usuario pertenece a dicho perfil.');
             }
             // Llamo a la función para registrar el log de auditoria
             $descripcion_log = "Se eliminó el perfil con id {{$perfil->idperfiles}}";
             Helpers::registrarLog(5, $descripcion_log);
             Session::flash('message', 'Se eliminó correctamente el perfil.');
             return Redirect::to($url);
         } else {
             // Llamo a la función para registrar el log de auditoria
             $descripcion_log = "Se intentó acceder a la ruta '" . Request::path() . "' por el método '" . Request::method() . "'";
             Helpers::registrarLog(10, $descripcion_log);
             Session::flash('error', 'Usted no tiene permisos para realizar dicha acción.');
             return Redirect::to('/dashboard');
         }
     } else {
         return View::make('error/error');
     }
 }
Example #4
0
 /**
  * Remove the specified resource from storage.
  * DELETE /perfiles/{id}
  *
  * @param  int  $id
  * @return Response
  */
 public function getDestroy($id = NULL)
 {
     if (isset($id)) {
         $perfil = Perfil::find($id);
         $perfil->delete();
         return Redirect::back();
     } else {
         return Redirect::back();
     }
 }
 /**
  * Edita un registro
  *
  * @param int $id
  */
 public function edit($id = NULL)
 {
     //Datos del select
     $perfiles = new Perfil();
     $this->perfiles = $perfiles->find('order: nombre');
     $menus = new Menu();
     $this->menus = $menus->find('order: nombre');
     $controller = new Controlador();
     if ($id != NULL) {
         //Aplicando la autocarga de objeto, para comenzar la edición
         $id = filter_var($id, FILTER_SANITIZE_NUMBER_INT);
         $this->controllers = $controller->find($id);
     }
     //se verifica si se ha enviado el formulario (submit)
     if (Input::hasPost('controllers')) {
         $controller = new Controlador(Input::post('controllers'));
         if (!$controller->update()) {
             Flash::error('Falló Operación');
             //se hacen persistente los datos en el formulario
             $this->controllers = Input::post('controllers');
         } else {
             return Router::redirect('admin/controlador/');
         }
     }
 }
 public function addPregunta($post)
 {
     $curso_id = strip_tags(htmlspecialchars($post['curso']));
     $curso_id = intval($curso_id);
     $curso_id = filter_var($curso_id, FILTER_SANITIZE_NUMBER_INT);
     $curso_id = filter_var($curso_id, FILTER_VALIDATE_INT);
     $user_id = strip_tags(htmlspecialchars($post['user']));
     $user_id = intval($user_id);
     $user_id = filter_var($user_id, FILTER_SANITIZE_NUMBER_INT);
     $user_id = filter_var($user_id, FILTER_VALIDATE_INT);
     $asunto = strip_tags(htmlspecialchars($post['post']['asunto']));
     $descripcion = strip_tags(htmlspecialchars($post['post']['pregunta']));
     $respuesta = array('code' => 404, 'message' => 'recurso no encontrado');
     if (!$curso_id || !$user_id) {
         $respuesta['message'] = 'Curso_id / user_id no valido';
     } else {
         $session = Utilities::getSession();
         if (is_null($session)) {
             $respuesta['message'] = 'no hay una session activa';
         } else {
             $curso = Curso::find($curso_id);
             $perfil = Perfil::find($user_id);
             if (count($curso) == 0 || count($perfil) == 0) {
                 $respuesta['message'] = 'curso/usuario no encontrado';
             } else {
                 $fecha_actual = date('Y-m-d');
                 $pregunta = new Pregunta();
                 $pregunta->curso_id = $curso_id;
                 $pregunta->perfil_id = $user_id;
                 $pregunta->asunto = $asunto;
                 $pregunta->descripcion = $descripcion;
                 $pregunta->fechaEntrada = $fecha_actual;
                 if ($pregunta->save()) {
                     $respuesta['code'] = 200;
                     $respuesta['message'] = 'Se guardo correctamente la pregunta';
                     $respuesta['reply'] = '/pregunta/' . $pregunta->pregunta_id . '/respuesta';
                     $respuesta['pregunta'] = $pregunta;
                 } else {
                     $respuesta['message'] = 'No se pudo guardar la pregunta';
                 }
             }
         }
     }
     return json_encode($respuesta);
 }