Ejemplo n.º 1
0
 /**
  * Listado de fotos existentes.
  * @param int $pagina Número de página a mostrar.
  * @param int $tipo Tipo de fotos a mostrar.
  */
 public function action_fotos($pagina, $tipo)
 {
     // Formato de la página.
     $pagina = (int) $pagina > 0 ? (int) $pagina : 1;
     // Verifico el tipo de fotos a mostrar.
     switch ($tipo) {
         case 0:
             // Activa.
             $tipo = array('activa', 0);
             break;
         case 1:
             // Oculta.
             $tipo = array('oculta', 1);
             break;
         case 2:
             // Papelera.
             $tipo = array('papelera', 2);
             break;
         case 3:
             // Borrada.
             $tipo = array('borrada', 3);
             break;
         case 4:
             // Todas.
         // Todas.
         default:
             // Todas.
             $tipo = array('total', NULL);
     }
     // Cantidad de elementos por pagina.
     $model_configuracion = new Model_Configuracion();
     $cantidad_por_pagina = $model_configuracion->get('elementos_pagina', 20);
     // Cargamos la vista.
     $vista = View::factory('admin/contenido/fotos');
     $vista->assign('tipo', $tipo[1] === NULL ? 4 : $tipo[1]);
     // Modelo de fotos.
     $model_fotos = new Model_Foto();
     // Cargamos el listado de fotos.
     $lst = $model_fotos->listado($pagina, $cantidad_por_pagina, $tipo[1]);
     // Si no hay elementos y no estamos en la inicial redireccionamos (Puso página incorrecta).
     if (count($lst) == 0 && $pagina != 1) {
         Request::redirect('/admin/contenido/fotos');
     }
     // Calculo las cantidades.
     $cantidades = Model_Foto::cantidad_agrupados();
     // Paso datos para barra.
     $vista->assign('cantidades', $cantidades);
     $vista->assign('actual', $pagina);
     // Paginación.
     $paginador = new Paginator($cantidades[$tipo[0]], $cantidad_por_pagina);
     $vista->assign('paginacion', $paginador->get_view($pagina, '/admin/contenido/fotos/%s/' . $tipo[0]));
     // Obtenemos datos de las fotos.
     foreach ($lst as $k => $v) {
         $a = $v->as_array();
         $a['usuario'] = $v->usuario()->as_array();
         $lst[$k] = $a;
     }
     // Seteamos listado de fotos.
     $vista->assign('fotos', $lst);
     unset($lst);
     // Seteamos el menu.
     $this->template->assign('master_bar', parent::base_menu('admin'));
     // Cargamos plantilla administracion.
     $admin_template = View::factory('admin/template');
     $admin_template->assign('contenido', $vista->parse());
     unset($portada);
     $admin_template->assign('top_bar', Controller_Admin_Home::submenu('contenido_fotos'));
     // Asignamos la vista a la plantilla base.
     $this->template->assign('contenido', $admin_template->parse());
 }
Ejemplo n.º 2
0
 /**
  * Listado de fotos que se encuentran en la papelera.
  * @param int $pagina Número de página a mostrar.
  */
 public function action_fotos($pagina)
 {
     // Verifico permisos.
     if (!Usuario::permiso(Model_Usuario_Rango::PERMISO_FOTO_VER_PAPELERA)) {
         $_SESSION['flash_error'] = 'No tienes permiso para acceder a esa sección.';
         Request::redirect('/');
     }
     // Formato de la página.
     $pagina = (int) $pagina > 0 ? (int) $pagina : 1;
     // Cantidad de elementos por pagina.
     $model_configuracion = new Model_Configuracion();
     $cantidad_por_pagina = $model_configuracion->get('elementos_pagina', 20);
     // Cargamos la vista.
     $vista = View::factory('/moderar/papelera/fotos');
     // Modelo de fotos.
     $model_foto = new Model_Foto();
     // Cargamos el listado de posts.
     $lst = $model_foto->listado($pagina, $cantidad_por_pagina, Model_Foto::ESTADO_PAPELERA);
     if (count($lst) == 0 && $pagina != 1) {
         Request::redirect('/moderar/papelera/fotos');
     }
     // Paginación.
     $paginador = new Paginator(Model_Foto::s_cantidad(Model_Foto::ESTADO_PAPELERA), $cantidad_por_pagina);
     $vista->assign('paginacion', $paginador->get_view($pagina, '/moderar/papelera/fotos/%s/'));
     // Obtenemos datos de los posts.
     foreach ($lst as $k => $v) {
         $a = $v->as_array();
         $a['usuario'] = $v->usuario()->as_array();
         $lst[$k] = $a;
     }
     // Seteamos listado de fotos.
     $vista->assign('fotos', $lst);
     unset($lst);
     // Seteamos el menu.
     $this->template->assign('master_bar', parent::base_menu('moderar'));
     // Cargamos plantilla administracion.
     $admin_template = View::factory('moderar/template');
     $admin_template->assign('contenido', $vista->parse());
     unset($portada);
     $admin_template->assign('top_bar', Controller_Moderar_Home::submenu('papelera_fotos'));
     // Asignamos la vista a la plantilla base.
     $this->template->assign('contenido', $admin_template->parse());
 }