/** * Listado de sessiones de usuarios activas. * @param int $pagina Número de página a mostrar. */ public function action_sesiones($pagina) { // Formato de la página. $pagina = (int) $pagina > 0 ? (int) $pagina : 1; // Cantidad de elementos por pagina. $cantidad_por_pagina = 20; // Cargamos la vista. $vista = View::factory('admin/usuario/sesiones'); // Modelo de sessiones. $model_session = new Model_Session(session_id()); // Quitamos sessiones terminadas. $model_session->limpiar(); // Cargamos el listado de usuarios. $lst = $model_session->listado($pagina, $cantidad_por_pagina); // Paginación. $paginador = new Paginator($model_session->cantidad(), $cantidad_por_pagina); $vista->assign('paginacion', $paginador->get_view($pagina, '/admin/usuario/sessiones/%s/')); // Obtenemos datos de las noticias. foreach ($lst as $k => $v) { $a = $v->as_array(); $a['usuario'] = $v->usuario()->as_array(); $a['ip_raw'] = $a['ip']; $a['ip'] = long2ip($a['ip']); $lst[$k] = $a; } // Seteamos listado de noticias. $vista->assign('sesiones', $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('usuario_sesiones')); // Asignamos la vista a la plantilla base. $this->template->assign('contenido', $admin_template->parse()); }