예제 #1
0
파일: home.php 프로젝트: 4bs4/marifa
 /**
  * Submenu de la moderación.
  * @param string $activo Sección actual.
  * @return array
  */
 public static function submenu($activo)
 {
     $listado = array();
     $listado['p_principal'] = array('caption' => 'Principal');
     $listado['index'] = array('link' => '/moderar/', 'caption' => 'Inicio', 'active' => FALSE);
     if (Usuario::permiso(array(Model_Usuario_Rango::PERMISO_POST_VER_DENUNCIAS, Model_Usuario_Rango::PERMISO_FOTO_VER_DENUNCIAS, Model_Usuario_Rango::PERMISO_USUARIO_VER_DENUNCIAS))) {
         $listado['p_denuncias'] = array('caption' => 'Denuncias');
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_DENUNCIAS)) {
             $listado['denuncias_posts'] = array('link' => '/moderar/denuncias/posts/', 'caption' => 'Posts', 'active' => FALSE, 'cantidad' => Model_Post_Denuncia::cantidad(Model_Post_Denuncia::ESTADO_PENDIENTE));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_DENUNCIAS)) {
             $listado['denuncias_fotos'] = array('link' => '/moderar/denuncias/fotos/', 'caption' => 'Fotos', 'active' => FALSE, 'cantidad' => Model_Foto_Denuncia::cantidad(Model_Post_Denuncia::ESTADO_PENDIENTE));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_USUARIO_VER_DENUNCIAS)) {
             $listado['denuncias_usuarios'] = array('link' => '/moderar/denuncias/usuarios/', 'caption' => 'Usuarios', 'active' => FALSE, 'cantidad' => Model_Usuario_Denuncia::cantidad(Model_Post_Denuncia::ESTADO_PENDIENTE));
         }
     }
     $listado['p_gestion'] = array('caption' => 'Gestión');
     if (Usuario::permiso(Model_Usuario_Rango::PERMISO_USUARIO_SUSPENDER)) {
         $listado['gestion_usuarios'] = array('link' => '/moderar/gestion/usuarios/', 'caption' => 'Usuarios', 'active' => FALSE, 'cantidad' => Model_Usuario_Suspension::cantidad());
     }
     // $listado['gestion_buscador'] = array('link' => '/moderar/gestion/buscador/', 'caption' => 'Buscador contenido', 'active' => FALSE);
     if (Usuario::permiso(array(Model_Usuario_Rango::PERMISO_POST_VER_PAPELERA, Model_Usuario_Rango::PERMISO_FOTO_VER_PAPELERA))) {
         $listado['p_papelera'] = array('caption' => 'Papelera de reciclaje');
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_PAPELERA)) {
             $listado['papelera_posts'] = array('link' => '/moderar/papelera/posts/', 'caption' => 'Posts eliminados', 'active' => FALSE, 'cantidad' => Model_Post::s_cantidad(Model_Post::ESTADO_PAPELERA));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_PAPELERA)) {
             $listado['papelera_fotos'] = array('link' => '/moderar/papelera/fotos/', 'caption' => 'Fotos eleminadas', 'active' => FALSE, 'cantidad' => Model_Foto::s_cantidad(Model_Foto::ESTADO_PAPELERA));
         }
     }
     if (Usuario::permiso(array(Model_Usuario_Rango::PERMISO_POST_VER_DESAPROBADO, Model_Usuario_Rango::PERMISO_COMENTARIO_VER_DESAPROBADO))) {
         $listado['p_desaprobado'] = array('caption' => 'Contenido desaprobado');
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_VER_DESAPROBADO)) {
             $listado['desaprobado_posts'] = array('link' => '/moderar/desaprobado/posts', 'caption' => 'Posts', 'active' => FALSE, 'cantidad' => Model_Post::s_cantidad(Model_Post::ESTADO_PENDIENTE) + Model_Post::s_cantidad(Model_Post::ESTADO_RECHAZADO));
         }
         if (Usuario::permiso(Model_Usuario_Rango::PERMISO_COMENTARIO_VER_DESAPROBADO)) {
             $listado['desaprobado_comentarios'] = array('link' => '/moderar/desaprobado/comentarios/', 'caption' => 'Comentarios', 'active' => FALSE, 'cantidad' => Model_Comentario::cantidad(Model_Comentario::ESTADO_OCULTO));
         }
     }
     // Seteamos el color.
     foreach ($listado as $k => $v) {
         if (isset($v['cantidad'])) {
             if ($listado[$k]['cantidad'] > 0) {
                 $listado[$k]['tipo'] = 'important';
             } else {
                 $listado[$k]['tipo'] = 'success';
             }
         }
     }
     if (isset($listado[$activo])) {
         $listado[$activo]['active'] = TRUE;
     }
     return $listado;
 }
예제 #2
0
파일: denuncias.php 프로젝트: 4bs4/marifa
 /**
  * Cerramos una denuncia del usuario, puede ser rechazada o aceptada.
  * @param int $denuncia ID de la denuncia a rechazar.
  * @param bool $tipo Si fue aceptada 1, 0 si fue rechazada.
  */
 public function action_cerrar_denuncia_foto($denuncia, $tipo)
 {
     // Verifico permisos.
     if (!Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_DENUNCIAS)) {
         $_SESSION['flash_error'] = 'No tienes permiso para acceder a esa sección.';
         Request::redirect('/');
     }
     // Valido la denuncia.
     $denuncia = (int) $denuncia;
     // Verifico su existencia.
     $model_denuncia = new Model_Foto_Denuncia($denuncia);
     if (!$model_denuncia->existe()) {
         $_SESSION['flash_error'] = 'La denuncia que deseas cerrar no se encuentra disponible.';
         Request::redirect('/moderar/denuncias/fotos');
     }
     // Verifico el estado.
     if ($model_denuncia->estado !== Model_Foto_Denuncia::ESTADO_PENDIENTE) {
         $_SESSION['flash_error'] = 'La denuncia que deseas cerrar no se encuentra disponible.';
         Request::redirect('/moderar/denuncias/fotos');
     }
     if ($tipo == 0) {
         // Actualizo el estado.
         $model_denuncia->actualizar_campo('estado', Model_Foto_Denuncia::ESTADO_RECHAZADA);
         // Enviamos el suceso.
         $model_suceso = new Model_Suceso();
         if (Usuario::$usuario_id != $model_denuncia->usuario_id) {
             $model_suceso->crear($model_denuncia->usuario_id, 'foto_denuncia_rechazar', TRUE, $denuncia, Usuario::$usuario_id);
             $model_suceso->crear(Usuario::$usuario_id, 'foto_denuncia_rechazar', FALSE, $denuncia, Usuario::$usuario_id);
         } else {
             $model_suceso->crear($model_denuncia->usuario_id, 'foto_denuncia_rechazar', FALSE, $denuncia, Usuario::$usuario_id);
         }
         // Informamos el resultado.
         $_SESSION['flash_success'] = 'Denuncia aceptada correctamente.';
     } else {
         // Actualizo el estado.
         $model_denuncia->actualizar_campo('estado', Model_Foto_Denuncia::ESTADO_APLICADA);
         // Enviamos el suceso.
         $model_suceso = new Model_Suceso();
         if (Usuario::$usuario_id != $model_denuncia->usuario_id) {
             $model_suceso->crear($model_denuncia->usuario_id, 'foto_denuncia_aceptada', TRUE, $denuncia, Usuario::$usuario_id);
             $model_suceso->crear(Usuario::$usuario_id, 'foto_denuncia_aceptada', FALSE, $denuncia, Usuario::$usuario_id);
         } else {
             $model_suceso->crear($model_denuncia->usuario_id, 'foto_denuncia_aceptada', FALSE, $denuncia, Usuario::$usuario_id);
         }
         // Informamos el resultado.
         $_SESSION['flash_success'] = 'Denuncia aceptada correctamente.';
     }
     Request::redirect('/moderar/denuncias/fotos');
 }