コード例 #1
0
ファイル: perfil.php プロジェクト: 4bs4/marifa
 /**
  * Obtenemos el bloque superior del perfil.
  * @param string $contenido Contenido de la plantilla.
  * @return string Bloque parseado.
  */
 protected function header_block($contenido)
 {
     // Cargamos la vista base.
     $base_view = View::factory('perfil/base');
     // Información general del usuario.
     $usuario = $this->usuario->as_array();
     $usuario['puntos'] = $this->usuario->cantidad_puntos();
     $usuario['seguidores'] = $this->usuario->cantidad_seguidores();
     $usuario['posts'] = $this->usuario->cantidad_posts();
     $usuario['fotos'] = $this->usuario->cantidad_fotos();
     $usuario['comentarios'] = $this->usuario->cantidad_comentarios();
     $usuario['rango'] = $this->usuario->rango()->nombre;
     // Cargamos campos del usuario.
     $this->usuario->perfil()->load_list(array('nombre', 'mensaje_personal'));
     // Nombre completo.
     $usuario['nombre'] = Utils::prop($this->usuario->perfil(), 'nombre');
     $base_view->assign('usuario', $usuario);
     unset($usuario);
     // Si está bloqueado y/o lo sigo.
     if (!Usuario::is_login()) {
         $base_view->assign('bloqueado', TRUE);
         $base_view->assign('seguidor', TRUE);
     } elseif (Usuario::$usuario_id !== $this->usuario->id) {
         $base_view->assign('bloqueado', Usuario::usuario()->esta_bloqueado($this->usuario->id));
         $base_view->assign('seguidor', $this->usuario->es_seguidor(Usuario::$usuario_id));
     }
     // Mensaje personal.
     $base_view->assign('mensaje_personal', Utils::prop($this->usuario->perfil(), 'mensaje_personal'));
     // Listado de categorias.
     $base_view->assign('menu', $this->submenu_categorias());
     // Agregamos el contenido.
     $base_view->assign('contenido', $contenido);
     return $base_view->parse();
 }
コード例 #2
0
ファイル: usuario.php プロジェクト: 4bs4/marifa
 /**
  * Cambiamos el rango de un usuario.
  * @param int $usuario ID del usuario al que se le cambia el rango.
  * @param int $rango ID del rango a setear.
  */
 public function action_cambiar_rango($usuario, $rango)
 {
     $usuario = (int) $usuario;
     // Verificamos no sea actual.
     if ($usuario == Usuario::$usuario_id) {
         $_SESSION['flash_error'] = 'El usuario que deseas cambiarle el rango no se encuentra disponible.';
         Request::redirect('/admin/usuario/');
     }
     // Cargamos el modelo del usuario.
     $model_usuario = new Model_Usuario($usuario);
     if (!$model_usuario->existe()) {
         $_SESSION['flash_error'] = 'El usuario que deseas cambiarle el rango no se encuentra disponible.';
         Request::redirect('/admin/usuario/');
     }
     // Verifico su orden.
     if ($model_usuario->rango()->es_superior(Usuario::usuario()->rango)) {
         $_SESSION['flash_error'] = 'El usuario que deseas cambiarle el rango no se encuentra disponible.';
         Request::redirect('/admin/usuario/');
     }
     $rango = (int) $rango;
     // Verifico el rango.
     $model_rango = new Model_Usuario_Rango($rango);
     if ($model_rango->existe()) {
         // Verifico el nivel.
         if ($rango == Usuario::usuario()->rango || $model_rango->es_superior(Usuario::usuario()->rango)) {
             $_SESSION['flash_error'] = 'Rango que deseas asignar no se encuentra disponible.';
             Request::redirect('/admin/usuario/');
         }
         // Actualizo el rango.
         $model_usuario->actualizar_campo('rango', $rango);
         // Envio el suceso.
         $model_suceso = new Model_Suceso();
         if (Usuario::$usuario_id != $model_usuario->id) {
             $model_suceso->crear($model_usuario->id, 'usuario_cambio_rango', TRUE, $model_usuario->id, $rango, Usuario::$usuario_id);
             $model_suceso->crear(Usuario::$usuario_id, 'usuario_cambio_rango', FALSE, $model_usuario->id, $rango, Usuario::$usuario_id);
         } else {
             $model_suceso->crear($model_usuario->id, 'usuario_cambio_rango', FALSE, $model_usuario->id, $rango, Usuario::$usuario_id);
         }
         // Informo el resultado.
         $_SESSION['flash_success'] = 'El rango fue cambiado correctamente correctamente.';
         Request::redirect('/admin/usuario');
     }
     // Cargo la vista.
     $vista = View::factory('admin/usuario/cambiar_rango');
     // Seteo la información.
     $vista->assign('usuario', $model_usuario->as_array());
     // Cargamos los rangos.
     $lst = $model_rango->listado(Usuario::usuario()->rango()->orden);
     foreach ($lst as $k => $v) {
         $lst[$k] = $v->as_array();
     }
     $vista->assign('rangos', $lst);
     // 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('usuario'));
     // Asignamos la vista a la plantilla base.
     $this->template->assign('contenido', $admin_template->parse());
 }