示例#1
1
 /**
  * Método para descargar
  */
 public function descargar($key = '')
 {
     if (!($id = Security::getKey($key, 'descargar_reporte', 'int'))) {
         return Redirect::toAction('listar');
     }
     $reporte = new Reporte();
     if (!$reporte->find_first($id)) {
         Flash::info('El archivo de reporte no fue encontrado');
         return Redirect::toAction('listar');
     }
     $this->file = dirname(APP_PATH) . "/public/" . $reporte->ruta;
     if (!is_file($this->file)) {
         Flash::warning('No hemos podido localizar el archivo. Por favor contacta al administrador del sistema.');
         return Redirect::toAction('listar');
     }
     View::template(NULL);
     $this->reporte = $reporte;
 }
 /**
  * Método principal
  */
 public function index()
 {
     $usuario = new Usuario();
     if (!$usuario->getInformacionUsuario(Session::get('id'))) {
         Flash::info('Lo sentimos pero no se ha podido establecer tu información');
         return Redirect::to('dashboard');
     }
     $perfil = $usuario->perfil;
     $app_ajax_old = $usuario->app_ajax;
     $tmp_usr = $usuario;
     if (Input::hasPost('usuario')) {
         $usuario = Usuario::setUsuario('update', Input::post('usuario'), array('repassword' => Input::post('repassword'), 'oldpassword' => Input::post('oldpassword'), 'id' => $usuario->id, 'login' => $usuario->login, 'perfil_id' => $usuario->perfil_id));
         if ($usuario) {
             Flash::valid('El usuario se ha actualizado correctamente.');
             if ($app_ajax_old != $usuario->app_ajax) {
                 Session::set('app_ajax', $usuario->app_ajax);
                 return APP_AJAX ? View::redirect(PUBLIC_PATH . 'sistema/mi_cuenta/') : Redirect::to('/sistema/mi_cuenta');
             }
             $usuario->perfil = $perfil;
         } else {
             $usuario = $tmp_usr;
         }
     }
     $this->temas = DwUtils::getFolders(dirname(APP_PATH) . '/public/css/backend/themes/');
     $this->usuario = $usuario;
     $this->page_title = 'Actualizar mis datos';
 }
 /**
  * Método para agregar un nuevo usuario
  */
 public function agregar()
 {
     //Titulo de la página
     $this->title = 'Nueva usuario';
     //Ckeck de los radios para habilitar comentarios
     // $this->check_si = (HABILITAR_USUARIO) ? false : true;
     // $this->check_no = (disabled) ? true : false;
     $this->check_si = true;
     $this->check_no = false;
     //Array para determinar la visibilidad de los post
     $this->tipo = array(Grupo::ADMINISTRADOR => 'Administrador', Grupo::AUTOR => 'Autor', Grupo::COLABORADOR => 'Colaborador', Grupo::EDITOR => 'Editor');
     //Verifico si ha enviado los datos a través del formulario
     if (Input::hasPost('usuario')) {
         //Verifico que el formulario coincida con la llave almacenada en sesion
         if (SecurityKey::isValid()) {
             Load::models('usuario');
             $usuario = new Usuario(Input::post('usuario'));
             $resultado = $usuario->registrarUsuario();
             if ($resultado) {
                 View::select('usuario');
             }
             /* else {
                    //Hago persitente los datos
                    $this->categoria = Input::post('categorias');
                    $this->etiquetas = Input::post('etiquetas');
                }
                $this->post = $post;*/
         } else {
             Flash::info('La llave de acceso ha caducado. Por favor intente nuevamente.');
         }
     }
 }
 public function postInvite()
 {
     $form = $this->inviteForm;
     $form->handleRequest(Request::instance());
     if ($form->isValid()) {
         $data = $form->getData();
         $emails = array_map('trim', explode(",", $data['emails']));
         $subject = $data['subject'];
         $lender = Auth::user()->getLender();
         $custom_message = $data['note'];
         $allInvites = InviteQuery::create()->filterByLender($lender)->select('email')->find();
         $countInvites = 0;
         foreach ($emails as $email) {
             if (in_array($email, $allInvites->getData())) {
                 Flash::info(\Lang::get('comments.flash.already-invited', array('email' => $email)));
             } else {
                 $countInvites += 1;
                 $this->lenderService->lenderInviteViaEmail($lender, $email, $subject, $custom_message);
             }
         }
         Flash::success(\Lang::choice('comments.flash.invite-success', $countInvites, array('count' => $countInvites)));
         return Redirect::route('lender:invite');
     }
     return Redirect::route('lender:invite')->withForm($form);
 }
 public function store(ArticleRequest $request)
 {
     $article = \Auth::user()->articles()->create($request->all());
     $article->tags()->attach($request->input('tag_list'));
     // ②
     \Flash::info('記事を追加しました。');
     return redirect()->route('articles.index');
 }
示例#6
0
 public function destroy($id)
 {
     //
     $mtv = Mtv::find($id);
     $mtv->delete();
     \Flash::info('Completed');
     return \Redirect::to('/backend/admin/mobile/songs');
 }
示例#7
0
 public function sendDelete($id)
 {
     $send = Sends::find($id);
     \File::delete(public_path() . "/upload/send/image/" . $send->imagefilename);
     \File::delete(public_path() . "/upload/send/mp3/" . $send->mp3filename);
     $send->delete();
     \Flash::info('Completed');
     return Redirect::to('/backend/admin/ugsongs/request');
 }
示例#8
0
 /**
  * Método para cerrar sesión
  * @param string $js Indica si está deshabilitado el js en el navegador o no
  * @return type
  */
 public function salir($js = '')
 {
     if (Usuario::setSession('close')) {
         Flash::valid("La sesión ha sido cerrada correctamente.");
     }
     if (!empty($js)) {
         Flash::info('Activa el uso de JavaScript en su navegador para poder continuar.');
     }
     return Redirect::toAction('entrar/');
 }
 /**
  * Store a newly created resource in storage.
  *
  * @param $id
  * @param Request $request
  * @return Response
  */
 public function store($id, Request $request)
 {
     $quiz = UnitQuiz::findOrFail($id);
     $quizAnswer = new QuizAnswer();
     $quizAnswer->fill($request->all());
     $quizAnswer->unit_quiz_id = $quiz->id;
     $quizAnswer->save();
     $message = trans('messages.quizzes.next_question');
     \Flash::info($message);
     return redirect()->route('units.quizzes.show', [$quiz->unit_id, $quiz->id]);
 }
示例#10
0
 public function edit(Devis $devis, $id)
 {
     $table = Table::findOrFail($id);
     $relations = $table->relationship();
     // $tableList = $devis->tables()->get();
     $tableList = $devis->with('tables')->first()->tables;
     \Flash::info('Refactor ::  la fonction $table->relationship()');
     $mode = 'edit';
     $namespaceList = $devis->namespaces()->lists('name', 'id');
     return view('admin.table.edit', compact('devis', 'table', 'mode', 'namespaceList', 'relations', 'tableList'));
 }
示例#11
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     $user = Auth::user();
     $diff = Carbon::parse($user->created_at)->diffInDays();
     if ($diff > 30) {
         // user cant login and he/she should confirm
         return redirect(url('auth/email'));
     } elseif (!$user->confirmed) {
         Flash::info(trans('users.pleaseConfirmEmail', ['remain' => 30 - $diff]) . "&ensp;<b><a href='" . url('auth/email') . "'>" . trans('users.confirmEmailResend') . "</a></b>");
     }
     return $next($request);
 }
示例#12
0
 /**
  * Método para listar las autitorías del sistema
  * @param type $fecha
  * @return type
  */
 public function listar($fecha = '', $page = 'page.1')
 {
     $fecha = empty($fecha) ? date("Y-m-d") : Filter::get($fecha, 'date');
     if (empty($fecha)) {
         Flash::info('Selecciona la fecha del archivo');
         return Redirect::toAction('index');
     }
     $page = Filter::get($page, 'page') > 0 ? Filter::get($page, 'page') : 1;
     $audits = Sistema::getAudit($fecha, $page);
     $this->audits = $audits;
     $this->fecha = $fecha;
     $this->page_module = 'Auditorías del sistema ' . $fecha;
 }
示例#13
0
 public function update(Request $request, $id)
 {
     $kami = Kami::findOrFail($id);
     $data['deskripsi'] = $request->deskripsi;
     if ($request->hasFile('image')) {
         $data['gambar_kami'] = $this->savePhoto($request->file('image'));
     }
     if ($kami->update($data)) {
         \Flash::success('Tentang Kami Berhasil Diupdate');
     } else {
         \Flash::info('Tentang Kami Gagal Diupdate');
     }
     return redirect('admin/kami');
 }
 /**
  * Metodo para cerrar la sesion del usuario actual
  */
 public function salir()
 {
     if (!Auth::is_valid()) {
         Flash::info("Identifícate nuevamente.");
     } else {
         Auth::destroy_identity();
         Session::delete('ip');
         Session::delete("usuario");
         Session::delete('grupo');
         Session::delete('nivel');
         Flash::valid("La sesión se ha cerrado correctamente.");
     }
     //Cambio la vista
     View::setPath('dc-admin/usuario');
     View::select('entrar', 'login');
 }
示例#15
0
 /**
  * Método para buscar
  * 
  * @param type $field Nombre del campo a buscar
  * @param type $value Valor del campo
  * @param type $order Método de ordenamiento
  * @param type $page Número de página
  */
 public function buscar($field = 'nombre', $value = 'none', $order = 'order.fecha.asc', $page = 'page.1')
 {
     $page = Filter::get($page, 'page') > 0 ? Filter::get($page, 'page') : 1;
     $field = Input::hasPost('field') ? Input::post('field') : $field;
     $value = Input::hasPost('value') ? Input::post('value') : $value;
     $acceso = new Acceso();
     $accesos = $acceso->getAjaxAcceso($field, $value, $order, $page);
     if (empty($accesos->items)) {
         Flash::info('No se han encontrado registros');
     }
     $this->accesos = $accesos;
     $this->order = $order;
     $this->field = $field;
     $this->value = $value;
     $this->page_title = 'Búsqueda de ingresos al sistema';
 }
示例#16
0
文件: usuario.php 项目: arleincho/bee
 /**
  * Método para abrir y cerrar sesión
  * @param type $opt
  * @return boolean
  */
 public static function setSession($opt = 'open', $user = NULL, $pass = NULL, $mode = NULL)
 {
     if ($opt == 'close') {
         //Cerrar Sesión
         $usuario = Session::get('id');
         if (DwAuth::logout()) {
             //Registro la salida
             Acceso::setAcceso(Acceso::SALIDA, $usuario);
             return TRUE;
         }
         Flash::error(DwAuth::getError());
     } else {
         if ($opt == 'open') {
             //Abrir Sesión
             if (DwAuth::isLogged()) {
                 return TRUE;
             } else {
                 if (DwForm::isValidToken()) {
                     //Si el formulario es válido
                     if (DwAuth::login(array('login' => $user), array('password' => $pass), $mode)) {
                         $usuario = self::getUsuarioLogueado();
                         if ($usuario->perfil_id != Perfil::SUPER_USUARIO && $usuario->estado_usuario != EstadoUsuario::ACTIVO) {
                             DwAuth::logout();
                             Flash::error('Lo sentimos pero tu cuenta se encuentra inactiva. <br />Si esta información es incorrecta contacta al administrador del sistema.');
                             return false;
                         }
                         Session::set("ip", DwUtils::getIp());
                         Session::set('perfil', $usuario->perfil);
                         //Registro el acceso
                         Acceso::setAcceso(Acceso::ENTRADA, $usuario->id);
                         Flash::info("¡ Bienvenido <strong>{$usuario->login}</strong> !.");
                         return TRUE;
                     } else {
                         Flash::error(DwAuth::getError());
                     }
                 } else {
                     Flash::info('La llave de acceso ha caducado. <br />Por favor ' . Html::link('sistema/login/entrar/', 'recarga la página <b>aquí</b>'));
                 }
             }
         } else {
             Flash::error('No se ha podido establecer la sesión actual.');
         }
     }
     return FALSE;
 }
示例#17
0
 /**
  * Método para crear/modificar un objeto de base de datos
  *
  * @param string $medthod: create, update
  * @param array $data: Data para autocargar el modelo
  * @param array $optData: Data adicional para autocargar
  *
  * return object ActiveRecord
  */
 public static function setMenu($method, $data, $optData = null)
 {
     $obj = new Menu($data);
     //Se carga los datos con los de las tablas
     if ($optData) {
         //Se carga información adicional al objeto
         $obj->dump_result_self($optData);
     }
     //Verifico que no exista otro menu, y si se encuentra inactivo lo active
     $conditions = empty($obj->id) ? "recurso_id='{$obj->recurso_id}' AND visibilidad={$obj->visibilidad}" : "recurso_id='{$obj->recurso_id}' AND visibilidad={$obj->visibilidad} AND id != '{$obj->id}'";
     $old = new Menu();
     if ($old->find_first($conditions)) {
         if ($method == 'create' && $old->activo != Menu::ACTIVO) {
             $obj->id = $old->id;
             $obj->activo = Menu::ACTIVO;
             $method = 'update';
         } else {
             Flash::info('Ya existe un menú registrado para ese recurso y visibilidad.');
             return FALSE;
         }
     }
     $obj->custom = Session::get('perfil_id') == Perfil::SUPER_USUARIO ? 0 : 1;
     return $obj->{$method}() ? $obj : FALSE;
 }
 public function cambiarpass($id_profesor)
 {
     $this->titulo = "Cambiar contraseña";
     $this->profesor = new Profesor();
     $this->profesor->id = $id_profesor;
     if (Input::post("profesor") and Input::post("pass1")) {
         $inputs = Input::post("profesor");
         if ($inputs['password'] != $inputs['password2']) {
             Input::delete();
             Flash::info("Las nuevas contraseñas no coinciden");
             Router::redirect("perfil/cambiarpass/{$id_profesor}");
             die;
         }
         $prof = new Profesor();
         $prof_pass = $prof->find($id_profesor);
         if ($prof->encriptar(Input::post("pass1")) != $prof_pass->password) {
             Input::delete();
             Flash::info("La contraseña anterior no coincide");
             Router::redirect("perfil/cambiarpass/{$id_profesor}");
             die;
         }
         $prof_pass->password = $prof->encriptar($inputs['password']);
         if ($prof_pass->update()) {
             Flash::valid("La contraseña ha sido cambiada con éxito");
         } else {
             Flash::error("No se pudo cambiar la contraseña");
         }
         Input::delete();
     }
 }
示例#19
0
 /**
  * Método para buscar un post por algún parametro que coincida
  * con el titulo o con con algún texto dentro del post
  *
  * @param string $param Palabra o frase a buscar
  * @param int $estado Permite buscar solo en los estados de los post
  * @return array
  */
 public function buscarPost($param, $estado = POST::PUBLICADO, $visibilidad = POST::PUBLICO)
 {
     //Aplico un filtro al parametro
     $param = Filter::get($param, 'stripslashes', 'striptags');
     if (strlen($param) > 2) {
         //Aplico un filtro para el estado
         $estado = Filter::get($estado, 'int');
         //Armo la consulta
         $sql = 'SELECT post.*,usuario.login,usuario.grupo_id,usuario.nombre, usuario.apellido,COUNT(comentario.post_id) AS comentarios ';
         $sql .= 'FROM post ';
         $sql .= 'INNER JOIN usuario ON usuario.id = post.usuario_id ';
         $sql .= 'LEFT JOIN comentario ON comentario.post_id = post.id ';
         $sql .= 'WHERE ';
         $sql .= $estado ? "post.estado = '{$estado}'" : "post.estado != '" . self::ELIMINADO . "'";
         $sql .= " AND post.titulo like '%" . $param . "%' OR post.contenido like '%" . $param . "%'";
         $sql .= ' GROUP BY post.id';
         $sql .= ' ORDER BY post.fecha_publicacion DESC';
         return $this->find_all_by_sql($sql);
     } else {
         Flash::info('Ingresa algún parámetro para inicializar la búsqueda.');
         return false;
     }
 }
示例#20
0
文件: perfil.php 项目: arleincho/bee
 /**
  * Callback que se ejecuta después de guardar/modificar un perfil
  */
 protected function after_save()
 {
     $data = array();
     $data[] = Recurso::DASHBOARD . '-' . $this->id;
     if (!RecursoPerfil::setRecursoPerfil($data)) {
         Flash::info("No se ha podido establcer el recurso 'dashboard' preestablecido al perfil.");
         return 'cancel';
     }
     $data = array();
     $data[] = Recurso::MI_CUENTA . '-' . $this->id;
     if (!RecursoPerfil::setRecursoPerfil($data)) {
         Flash::info("No se ha podido establcer el recurso 'Mi Cuenta' preestablecido al perfil.");
         return 'cancel';
     }
 }
示例#21
0
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Request $request, $id)
 {
     $this->validate($request, ['nama_kategori' => 'required|max:200', 'image' => 'mimes:jpeg,bmp,png']);
     $categori = Categori::findOrFail($id);
     //$data = $request->only('name', 'model');
     $data['nama_kategori'] = $request->nama_kategori;
     if ($request->hasFile('image')) {
         $data['logo_kategori'] = $this->savePhoto($request->file('image'));
     }
     if ($categori->update($data)) {
         \Flash::success('Categori Berhasil Diupdate');
     } else {
         \Flash::info('Categori Gagal Diupdate');
     }
     return redirect('admin/categori');
 }
示例#22
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function destroy($id)
 {
     //
     $singlemusic = SingleMusic::find($id);
     \File::delete(public_path() . "/upload/image/" . $singlemusic->imageName);
     $singlemusic->delete();
     \Flash::info('Completed');
     return \Redirect::to('/backend/admin/mobile/songs');
 }
示例#23
0
 /**
  * Método para inactivar/reactivar
  */
 public function estado($tipo, $key)
 {
     if (!($id = Security::getKey($key, $tipo . '_recurso', 'int'))) {
         return Redirect::toAction('listar');
     }
     $recurso = new Recurso();
     if (!$recurso->find_first($id)) {
         Flash::error('Lo sentimos, no se ha podido establecer la información del recurso');
     } else {
         if (empty($recurso->custom) && Session::get('perfil_id') != Perfil::SUPER_USUARIO) {
             Flash::warning('Lo sentimos, pero este recurso no se puede editar.');
             return Redirect::toAction('listar');
         }
         if ($tipo == 'inactivar' && $recurso->activo == Recurso::INACTIVO) {
             Flash::info('El recurso ya se encuentra inactivo');
         } else {
             if ($tipo == 'reactivar' && $recurso->activo == Recurso::ACTIVO) {
                 Flash::info('El recurso ya se encuentra activo');
             } else {
                 $estado = $tipo == 'inactivar' ? Recurso::INACTIVO : Recurso::ACTIVO;
                 if (Recurso::setRecurso('update', $recurso->to_array(), array('id' => $id, 'activo' => $estado))) {
                     $estado == Recurso::ACTIVO ? Flash::valid('El recurso se ha reactivado correctamente!') : Flash::valid('El recurso se ha inactivado correctamente!');
                 }
             }
         }
     }
     return Redirect::toAction('listar');
 }
 public function eliminar($id)
 {
     if ($id) {
         $prodecimiento = new Procedimientos();
         $this->prodecimiento = $prodecimiento->find($id);
         $url = getcwd() . "/" . $this->prodecimiento->url;
         if ($this->prodecimiento->delete()) {
             if (!file_exists($url) or !unlink($url)) {
                 Flash::error("El archivo no se puedo eliminar del servidor");
             }
             Flash::valid("Archivo Eliminado");
         } else {
             Flash::error("No se elimino el archivo");
         }
         Redirect::to("procedimientos/index");
     } else {
         Flash::info("El recurso no existe");
     }
 }
示例#25
0
 public function verifyBorrower($verificationCode)
 {
     $joinLog = JoinLogQuery::create()->filterByVerifiedAt(null)->filterByVerificationCode($verificationCode)->findOne();
     if (!$joinLog) {
         \Flash::error('The code is not valid');
         return \Redirect::home();
     }
     $joinLog->setVerifiedAt(new \DateTime());
     $joinLog->save();
     $borrower = $joinLog->getBorrower();
     $borrower->setVerified(1);
     $borrower->save();
     Auth::loginUsingId($borrower->getId());
     \Flash::info('You are verified.');
     return $this->login();
 }
 /**
  * Get the response for a forbidden operation.
  *
  * @return \Illuminate\Http\Response
  */
 public function forbiddenResponse()
 {
     $message = trans('messages.courses.already_join');
     \Flash::info($message);
     return redirect()->route('courses.show', $this->course);
 }
示例#27
0
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Request $request, $id)
 {
     $this->validate($request, ['nama' => 'required|max:200', 'harga' => 'required|max:200', 'keterangan' => 'required', 'berat' => 'required|max:10', 'stok' => 'required|max:10', 'image' => 'mimes:jpeg,bmp,png']);
     $product = Product::findOrFail($id);
     $data['nama'] = $request->nama;
     $data['harga'] = $request->harga;
     $data['keterangan'] = $request->keterangan;
     $data['berat'] = $request->berat;
     $data['stok'] = $request->stok;
     $data['id_brand'] = $request->brand;
     $data['id_kategori'] = $request->categori;
     if ($request->hasFile('image')) {
         $data['gambar'] = $this->savePhoto($request->file('image'));
     }
     if ($product->update($data)) {
         \Flash::success('Product Berhasil Diupdate');
     } else {
         \Flash::info('Product Gagal Diupdate');
     }
     return redirect('admin/product');
 }
示例#28
0
 public function saveBorrowerGuest($formData, $sessionData)
 {
     $email = array_get($formData, 'email');
     $resumeCode = array_get($sessionData, 'resumeCode');
     if ($resumeCode) {
         $borrowerGuest = \Zidisha\Borrower\BorrowerGuestQuery::create()->findOneByResumecode($resumeCode);
     } else {
         $resumeCode = md5(uniqid(rand(), true));
         $borrowerGuest = new BorrowerGuest();
     }
     $formData = serialize($formData);
     $sessionData = serialize($sessionData);
     $borrowerGuest->setEmail($email)->setResumecode($resumeCode)->setSession($sessionData)->setForm($formData);
     $borrowerGuest->save();
     $this->borrowerMailer->sendFormResumeLaterMail($email, $resumeCode);
     \Session::forget('BorrowerJoin');
     \Flash::info(\Lang::get('borrower.save-later.information-is-saved'));
     \Flash::info(\Lang::get('borrower.save-later.application-resume-link' . ' ' . route('borrower:resumeApplication', $resumeCode)));
     \Flash::info(\Lang::get('borrower.save-later.application-resume-code' . ' ' . $resumeCode));
     return \Redirect::action('BorrowerJoinController@getCountry');
 }
示例#29
0
 public function buscar($field = 'nombre', $value = 'none', $order = 'order.id.asc', $page = 1)
 {
     $page = Filter::get($page, 'page') > 0 ? Filter::get($page, 'page') : 1;
     $field = Input::hasPost('field') ? Input::post('field') : $field;
     $value = Input::hasPost('field') ? Input::post('value') : $value;
     $agencia = new Agencias();
     $agencias = $agencia->getAjaxAgencia($field, $value, $order, $page);
     if (empty($agencias->items)) {
         Flash::info('No se han encontrado registros');
     }
     $this->agencias = $agencias;
     $this->order = $order;
     $this->field = $field;
     $this->value = $value;
     $this->page_title = 'Búsqueda de agencias del sistema';
 }
 /**
  * Método para buscar un post por algún parametro que coincida
  * con el titulo o con con algún texto dentro del post
  *
  * @param string $what Palabra o frase a buscar
  * @param string $estado Permite buscar solo en los estados de los post
  * @return array
  */
 public function buscarPost($what, $estado = self::PUBLICADO)
 {
     $what = Filter::get($what, 'stripslashes', 'striptags');
     if (strlen($what) > 2) {
         if (!is_numeric($estado)) {
             $estado = strtolower($estado);
             if ($estado == 'borrador' or $estado == 'borradores') {
                 $estado = self::BORRADOR;
             } else {
                 if ($estado == 'pendiente' or $estado == 'pendientes') {
                     $estado = self::PENDIENTE;
                 } else {
                     if ($estado == 'publicado' or $estado == 'publicados') {
                         $estado = self::PUBLICADO;
                     } else {
                         if ($estado == 'eliminado' or $estado == 'eliminados') {
                             $estado = self::ELIMINADO;
                         } else {
                             if ($estado == 'todos') {
                                 $estado = null;
                             } else {
                                 Flash::error('PST-BSC001. Se ha producido un error en la verificación de la información. <br />Al parecer no se logró establcer el filtro el listado.');
                                 return false;
                             }
                         }
                     }
                 }
             }
         } else {
             $estado = $estado ? Filter::get($estado, 'int') : null;
         }
         $columnas = 'post.*, usuario.login, usuario.grupo_id, usuario.nombre, usuario.apellido';
         $join = 'INNER JOIN usuario ON usuario.id = post.usuario_id';
         $condicion = $estado ? "post.estado = '{$estado}'" : "post.estado != '" . self::ELIMINADO . "'";
         $condicion .= " AND post.titulo like '%" . $what . "%' OR post.contenido like '%" . $what . "%'";
         return $this->find("columns: {$columnas}", "join: {$join}", "conditions: {$condicion}", "order: fecha_publicacion DESC");
     } else {
         Flash::info('Ingresa algún parámetro para inicializar la búsqueda.');
         return false;
     }
 }