本文整理汇总了PHP中Usuario::usuario方法的典型用法代码示例。如果您正苦于以下问题:PHP Usuario::usuario方法的具体用法?PHP Usuario::usuario怎么用?PHP Usuario::usuario使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Usuario
的用法示例。
在下文中一共展示了Usuario::usuario方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: action_index
/**
* Portada del sitio.
* @param int $pagina Número de página para lo últimos posts.
*/
public function action_index($pagina)
{
// Cargamos la portada.
$view = View::factory('notificaciones/index');
// Seteo el menu.
$this->template->assign('master_bar', parent::base_menu('inicio'));
// 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 notificaciones.
$sucesos = Suceso_Barra::obtener_listado_completo(Usuario::$usuario_id, $pagina, $cantidad_por_pagina);
// Verifivo validez de la pagina.
if (count($sucesos) == 0 && $pagina != 1) {
Request::redirect('/notificaciones/');
}
// Paginación.
$paginador = new Paginator(Suceso_Barra::cantidad_completa(Usuario::$usuario_id), $cantidad_por_pagina);
$view->assign('paginacion', $paginador->get_view($pagina, '/notificaciones/index/%d'));
unset($paginador);
// Proceso el listado de sucesos.
$eventos = array();
foreach ($sucesos as $v) {
// Obtengo información del suceso.
$s_data = Suceso_Perfil::procesar($v);
// Verifico su existencia.
if ($s_data === NULL) {
continue;
}
// Obtenemos el tipo de suceso.
$tipo = $v->tipo;
// Cargamos la vista.
$suceso_vista = View::factory('/suceso/notificaciones/' . $tipo);
// Asigno los datos del usuario actual.
$suceso_vista->assign('actual', Usuario::usuario()->as_array());
// Asigno información del suceso.
$suceso_vista->assign('suceso', $s_data);
// Datos del suceso.
$suceso_vista->assign('fecha', $v->fecha);
$suceso_vista->assign('visto', $v->visto);
// Agregamos el evento.
$eventos[] = $suceso_vista->parse();
}
$view->assign('sucesos', $eventos);
unset($sucesos);
// Asignamos la vista a la plantilla base.
$this->template->assign('contenido', $view->parse());
}
示例2: action_utilizar_nick
/**
* Seleccionamos un nick a utilizar de nuestra lista.
* @param string $nick Nick que vamos a utilizar.
*/
public function action_utilizar_nick($nick)
{
// Verifico el formato.
if (!preg_match('/^[a-zA-Z0-9]{4,20}$/D', $nick)) {
$_SESSION['flash_error'] = 'El nick que desea liberar no es correcto.';
Request::redirect('/cuenta/nick');
}
// Verifico si es del usuario.
if (!in_array($nick, Usuario::usuario()->nicks())) {
$_SESSION['flash_error'] = 'El nick que desea liberar no es correcto.';
Request::redirect('/cuenta/nick');
}
// Elimino el nick y lo asigno nuevamente.
Usuario::usuario()->eliminar_nick($nick);
Usuario::usuario()->cambiar_nick($nick);
// Envio el suceso.
$model_suceso = new Model_Suceso();
//TODO: Implementar campos alphanumericos.
$model_suceso->crear(Usuario::$usuario_id, 'usuario_cambio_nick', Usuario::$usuario_id);
// Informo el resultado.
$_SESSION['flash_success'] = 'El nick se ha actualizado correctamente.';
Request::redirect('/cuenta/nick');
}
示例3: action_fotos
/**
* Portada de los favoritos.
* @param int $pagina Número de página a mostrar.
*/
public function action_fotos($pagina)
{
// Cargamos la portada.
$vista = View::factory('favoritos/fotos');
// Cantidad de elementos por pagina.
$model_configuracion = new Model_Configuracion();
$cantidad_por_pagina = $model_configuracion->get('elementos_pagina', 20);
// Formato de la página.
$pagina = (int) $pagina > 0 ? (int) $pagina : 1;
// Cargamos el listado de favoritos.
$favoritos = Usuario::usuario()->listado_fotos_favoritos($pagina, $cantidad_por_pagina);
// Verifivo que la página seleccionada sea válida.
if (count($favoritos) == 0 && $pagina != 1) {
Request::redirect('/favoritos/fotos/');
}
// Paginación.
$paginador = new Paginator(Usuario::usuario()->cantidad_favoritos_fotos(), $cantidad_por_pagina);
$vista->assign('paginacion', $paginador->get_view($pagina, '/favoritos/fotos/%d'));
unset($paginador);
// Obtengo información de los favoritos.
foreach ($favoritos as $k => $v) {
$a = $v->as_array();
$a['usuario'] = $v->usuario()->as_array();
$a['categoria'] = $v->categoria()->as_array();
$favoritos[$k] = $a;
}
// Seteo parámetros a la vista.
$vista->assign('favoritos', $favoritos);
unset($favoritos);
// Seteo el menu.
$this->template->assign('master_bar', parent::base_menu('inicio'));
$this->template->assign('top_bar', self::submenu('fotos'));
// Asignamos la vista a la plantilla base.
$this->template->assign('contenido', $vista->parse());
}
示例4: action_desbloquear
/**
* Desbloqueamos el acceso a mi perfil del usuario.
* @param string $usuario Usuario a desbloquear.
*/
public function action_desbloquear($usuario)
{
// Cargamos el usuario.
$this->cargar_usuario($usuario);
// Verifico estar logueado.
if (!Usuario::is_login()) {
$_SESSION['flash_error'] = 'Debes estar logueado para poder desbloquear usuarios.';
Request::redirect('/usuario/login');
}
// Verificamos no sea uno mismo.
if (Usuario::$usuario_id == $this->usuario->id) {
$_SESSION['flash_error'] = 'El usuario al cual quieres desbloquear no se encuentra disponible.';
Request::redirect('/perfil/index/' . $usuario->nick);
}
// Verifico el estado.
if ($this->usuario->estado !== Model_Usuario::ESTADO_ACTIVA) {
$_SESSION['flash_error'] = 'El usuario al cual quieres desbloquear no se encuentra disponible.';
Request::redirect('/perfil/index/' . $this->usuario->nick);
}
// Verifico esté bloqueado.
if (!Usuario::usuario()->esta_bloqueado($this->usuario->id)) {
$_SESSION['flash_error'] = 'El usuario al cual quieres desbloquear no se encuentra disponible.';
Request::redirect('/perfil/index/' . $this->usuario->nick);
}
// Desbloqueo al usuario.
Usuario::usuario()->desbloquear($this->usuario->id);
// Envio el suceso.
$model_suceso = new Model_Suceso();
if ($this->usuario->id != Usuario::$usuario_id) {
$model_suceso->crear($this->usuario->id, 'usuario_bloqueo', TRUE, Usuario::$usuario_id, $this->usuario->id, 1);
$model_suceso->crear(Usuario::$usuario_id, 'usuario_bloqueo', FALSE, Usuario::$usuario_id, $this->usuario->id, 1);
} else {
$model_suceso->crear($this->usuario->id, 'usuario_bloqueo', FALSE, Usuario::$usuario_id, $this->usuario->id, 1);
}
// Informo resultado.
$_SESSION['flash_success'] = 'El usuario se ha desbloqueado correctamente.';
Request::redirect('/perfil/index/' . $this->usuario->nick);
}
示例5: make_user_header
/**
* Generamos el menu de usuario a colocar en la cabecera.
* @return RainTPL
*/
protected function make_user_header()
{
// Cargamos la vista.
$vista = View::factory('header/login');
// Cargamos el usuario y sus datos.
$vista->assign('usuario', Usuario::usuario()->as_array());
// Sucesos.
$lst = Suceso_Barra::obtener_listado(Usuario::$usuario_id, 1, 20);
$eventos = array();
foreach ($lst as $v) {
// Obtengo información del suceso.
$s_data = Suceso_Barra::procesar($v);
// Verifico su existencia.
if ($s_data === NULL) {
continue;
}
// Obtenemos el tipo de suceso.
$tipo = $v->as_object()->tipo;
// Cargamos la vista.
$suceso_vista = View::factory('suceso/barra/' . $tipo);
// Asigno los datos del usuario actual.
$suceso_vista->assign('actual', Usuario::usuario()->as_array());
// Asigno información del suceso.
$suceso_vista->assign('suceso', $s_data);
// Datos del suceso.
$suceso_vista->assign('fecha', $v->fecha);
// Agregamos el evento.
$eventos[] = $suceso_vista->parse();
}
$vista->assign('sucesos', $eventos);
unset($lst, $eventos);
// Listado de mensajes.
$model_mensajes = new Model_Mensaje();
$vista->assign('mensajes_nuevos', $model_mensajes->total_recibidos(Usuario::$usuario_id, Model_Mensaje::ESTADO_NUEVO));
$msg_rst = $model_mensajes->recibidos(Usuario::$usuario_id, 1, 5);
$msg_event = array();
foreach ($msg_rst as $v) {
// Datos del post.
$aux = $v->as_array();
$aux['emisor'] = $v->emisor()->as_array();
switch ($aux['estado']) {
case 0:
$aux['estado_string'] = 'nuevo';
break;
case 1:
$aux['estado_string'] = 'leido';
break;
case 2:
$aux['estado_string'] = 'respondido';
break;
case 3:
$aux['estado_string'] = 'reenviado';
break;
}
$msg_event[] = $aux;
}
$vista->assign('mensajes', $msg_event);
unset($msg_event, $msg_rst);
return $vista;
}
示例6: action_puntuar
/**
* Damos puntos a un post.
* @param int $post ID del post al cual darle puntos.
* @param int $cantidad Cantidad de puntos. Número entre 1 y 10.
*/
public function action_puntuar($post, $cantidad)
{
// Verificamos usuario logueado.
if (!Usuario::is_login()) {
$_SESSION['flash_error'] = 'Debes iniciar sessión para poder puntuar posts.';
Request::redirect('/usuario/login');
}
// Verifico permisos.
if (!Usuario::permiso(Model_Usuario_Rango::PERMISO_POST_PUNTUAR)) {
$_SESSION['flash_error'] = 'No tienes permisos para puntuar posts.';
Request::redirect('/');
}
// Convertimos el post a ID.
$post = (int) $post;
// Validamos la cantidad.
$cantidad = (int) $cantidad;
if ($cantidad < 1 || $cantidad > 10) {
$_SESSION['flash_error'] = 'La petición que has realizado es inválida.';
Request::redirect('/');
}
// Cargamos el post.
$model_post = new Model_Post($post);
// Verificamos exista.
if (!is_array($model_post->as_array())) {
$_SESSION['flash_error'] = 'El post que desea puntuar no se encuentra disponible.';
Request::redirect('/');
}
// Verifico el estado del post.
if ($model_post->estado !== Model_Post::ESTADO_ACTIVO) {
$_SESSION['flash_error'] = 'El post que desea puntuar no se encuentra disponible.';
Request::redirect('/post/index/' . $post);
}
// Verifico el autor.
if ($model_post->usuario_id === Usuario::$usuario_id) {
$_SESSION['flash_error'] = 'El post que desea puntuar no se encuentra disponible.';
Request::redirect('/post/index/' . $post);
}
// Verificamos si ya dio puntos.
if ($model_post->dio_puntos(Usuario::$usuario_id)) {
$_SESSION['flash_error'] = 'El post que desea puntuar ya ha sido puntuado por usted.';
Request::redirect('/post/index/' . $post);
}
// Verificamos la cantidad de puntos.
if (Usuario::usuario()->puntos_disponibles < $cantidad) {
$_SESSION['flash_error'] = 'El post que desea puntuar ya ha sido puntuado por usted.';
Request::redirect('/post/index/' . $post);
}
// Damos los puntos.
$model_post->dar_puntos(Usuario::$usuario_id, $cantidad);
// Enviamos el suceso.
$model_suceso = new Model_Suceso();
if (Usuario::$usuario_id != $model_post->usuario_id) {
$model_suceso->crear($model_post->usuario_id, 'post_puntuar', TRUE, $post, Usuario::$usuario_id, $cantidad);
$model_suceso->crear(Usuario::$usuario_id, 'post_puntuar', FALSE, $post, Usuario::$usuario_id, $cantidad);
} else {
$model_suceso->crear($model_post->usuario_id, 'post_puntuar', FALSE, $post, Usuario::$usuario_id, $cantidad);
}
// Informamos el resultado.
$_SESSION['flash_success'] = 'Has puntuado el post de manera correcta.';
Request::redirect('/post/index/' . $post);
}
示例7: action_cambiar_rango
/**
* 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());
}
示例8: submenu
/**
* Submenu del usuario.
* @param string $activo Elemento activo.
* @return array
*/
protected function submenu($activo)
{
return array('index' => array('link' => '/mensaje/', 'caption' => 'Bandeja entrada', 'active' => $activo == 'index', 'cantidad' => Usuario::usuario()->cantidad_mensajes_nuevos(), 'tipo' => 'success'), 'enviados' => array('link' => '/mensaje/enviados', 'caption' => 'Bandeja salida', 'active' => $activo == 'enviados'), 'nuevo' => array('link' => '/mensaje/nuevo', 'caption' => 'Enviar', 'active' => $activo == 'nuevo'));
}