/**
  * Método principal
  */
 public function index()
 {
     $usuario = new Usuario();
     if (!$usuario->getInformacionUsuario(Session::get('id'))) {
         MkcMessage::get('id_no_found');
         return MkcRedirect::to('dashboard');
     }
     $perfil = $usuario->perfil;
     $app_ajax_old = $usuario->app_ajax;
     if (Input::hasPost('usuario')) {
         if (MkcSecurity::isValidKey(Input::post('usuario_id_key'), 'form_key')) {
             ActiveRecord::beginTrans();
             //Guardo la persona
             $persona = Persona::setPersona('update', Input::post('persona'), array('id' => $usuario->persona_id));
             if ($persona) {
                 $usuario = Usuario::setUsuario('update', Input::post('usuario'), array('persona_id' => $persona->id, 'repassword' => Input::post('repassword'), 'oldpassword' => Input::post('oldpassword'), 'id' => $usuario->id, 'login' => $usuario->login, 'sucursal_id' => $usuario->sucursal_id, 'perfil_id' => $usuario->perfil_id));
                 if ($usuario) {
                     ActiveRecord::commitTrans();
                     MkcMessage::valid('El usuario se ha actualizado correctamente.');
                     if ($app_ajax_old != $usuario->app_ajax) {
                         Session::set('app_ajax', $usuario->app_ajax);
                         if (APP_AJAX) {
                             View::redirect(PUBLIC_PATH . 'sistema/mi_cuenta/');
                         } else {
                             MkcRedirect::to('sistema/mi_cuenta');
                         }
                     }
                     $usuario->perfil = $perfil;
                     $usuario->fotografia = $persona->fotografia;
                 }
             } else {
                 ActiveRecord::rollbackTrans();
             }
         }
     }
     $this->temas = MkcUtils::getFolders(dirname(APP_PATH) . '/public/css/backend/themes/');
     $this->usuario = $usuario;
     $this->page_title = 'Actualizar mis datos';
 }
 /**
  * Método principal
  */
 public function index()
 {
     if (Input::hasPost('empresa')) {
         if (MkcSecurity::isValidKey(Input::post('empresa_id_key'), 'form_key')) {
             if (Empresa::setEmpresa('save', Input::post('empresa'))) {
                 MkcMessage::valid('Los datos se han actualizado correctamente');
             } else {
                 MkcMessage::get('error_form');
             }
         }
     }
     $empresa = new Empresa();
     if (!$empresa->getInformacionEmpresa()) {
         MkcMessage::get('id_no_found');
         return MkcRedirect::toRoute('module: dashboard', 'controller: index');
     }
     if (!APP_OFFICE) {
         $sucursal = new Sucursal();
         $this->sucursal = $sucursal->getInformacionSucursal(1);
         $this->ciudades = Load::model('params/ciudad')->getCiudadesToJson();
     }
     $this->empresa = $empresa;
     $this->page_title = 'Información de la empresa';
 }
示例#3
0
 /**
  * Método para restaurar el sistema
  * @param type $id
  */
 public static function restoreBackup($id, $path = '')
 {
     $id = Filter::get($id, 'int');
     if (empty($id)) {
         return FALSE;
     }
     $obj = new Backup();
     if (!$obj->find_first($id)) {
         MkcMessage::get('id_no_found');
         return FALSE;
     }
     if (empty($path)) {
         $path = APP_PATH . 'temp/backup/';
     }
     $file = $path . $obj->archivo;
     if (!is_file($file)) {
         MkcMessage::error('Error: BKP-RES001. Se ha producido un error en la restauración del sistema. <br />No se pudo localizar el archivo de restaruación.');
         return FALSE;
     }
     //Almaceno las copias de seguridad anteriores
     $old_backup = $obj->find('order: registrado_at ASC');
     $system = $obj->_getSystem(TRUE);
     //Verifico el sistema operativo para la restauración
     $database = Config::get('config.application.database');
     //tomo el entorno actual
     $config = $obj->_getConfig($database);
     //Tomo la configuración de conexión
     $exec = "gunzip < {$file} | {$system} -h " . $config['host'] . " -u " . $config['username'] . " --password="******" " . $config['name'];
     system($exec, $result);
     if (!$result) {
         //Inserto los backups anteriores
         foreach ($old_backup as $backup) {
             if ($backup->id >= $obj->id) {
                 $obj->sql("REPLACE INTO `backup` (`id`,`usuario_id`,`denominacion`,`tamano`,`archivo`,`registrado_at`) VALUES ('{$backup->id}', '{$backup->usuario_id}', '{$backup->denominacion}', '{$backup->tamano}', '{$backup->archivo}', '{$backup->registrado_at}')");
             }
         }
         if ($obj) {
             MkcAudit::debug("Se ha restaurado el sistema con la copia de seguridad: {$obj->denominacion}");
         }
         return $obj ? $obj : FALSE;
     }
     return FALSE;
 }
 /**
  * Método para ver
  */
 public function ver($key)
 {
     if (!($id = MkcSecurity::isValidKey($key, 'shw_usuario', 'int'))) {
         return MkcRedirect::toAction('listar');
     }
     $usuario = new Usuario();
     if (!$usuario->getInformacionUsuario($id)) {
         MkcMessage::get('id_no_found');
         return MkcRedirect::toAction('listar');
     }
     $estado = new EstadoUsuario();
     $this->estados = $estado->getListadoEstadoUsuario($usuario->id);
     $acceso = new Acceso();
     $this->accesos = $acceso->getListadoAcceso($usuario->id, 'todos', 'order.fecha.desc');
     $this->usuario = $usuario;
     $this->page_title = 'Información del usuario';
 }
 /**
  * Método para eliminar
  */
 public function eliminar($key)
 {
     if (!($id = MkcSecurity::isValidKey($key, 'eliminar_recurso', 'int'))) {
         return MkcRedirect::toAction('listar');
     }
     $recurso = new Recurso();
     if (!$recurso->find_first($id)) {
         MkcMessage::get('id_no_found');
         return MkcRedirect::toAction('listar');
     }
     try {
         if ($recurso->delete()) {
             MkcMessage::valid('El recurso se ha eliminado correctamente!');
         } else {
             MkcMessage::warning('Lo sentimos, pero este recurso no se puede eliminar.');
         }
     } catch (KumbiaException $e) {
         MkcMessage::error('Este recurso no se puede eliminar porque se encuentra relacionado con otro registro.');
     }
     return MkcRedirect::toAction('listar');
 }
示例#6
0
 /**
  * Método para descargar
  */
 public function descargar($key = '')
 {
     if (!($id = MkcSecurity::isValidKey($key, 'descargar_backup', 'int'))) {
         return View::ajax();
     }
     $backup = new Backup();
     if (!$backup->find_first($id)) {
         MkcMessage::get('id_no_found');
         return MkcRedirect::toAction('listar');
     }
     $file = APP_PATH . 'temp/backup/' . $backup->archivo;
     if (!is_file($file)) {
         MkcMessage::warning('No hemos podido localizar el archivo. Por favor contacta al administrador del sistema.');
         MkcAudit::error("No se ha podido encontrar la copia de seguridad {$backup->archivo} en el sistema");
         return MkcRedirect::toAction('listar');
     }
     View::template(NULL);
     $this->backup = $backup;
 }
 /**
  * Método para eliminar
  */
 public function eliminar($key)
 {
     if (!($id = MkcSecurity::isValidKey($key, 'del_sucursal', 'int'))) {
         return MkcRedirect::toAction('listar');
     }
     $sucursal = new Sucursal();
     if (!$sucursal->getInformacionSucursal($id)) {
         MkcMessage::get('id_no_found');
         return MkcRedirect::toAction('listar');
     }
     try {
         if (Sucursal::setSucursal('delete', array('id' => $sucursal->id))) {
             MkcMessage::valid('La sucursal se ha eliminado correctamente!');
         }
     } catch (KumbiaException $e) {
         MkcMessage::error('Esta sucursal no se puede eliminar porque se encuentra relacionada con otro registro.');
     }
     return MkcRedirect::toAction('listar');
 }
示例#8
0
 /**
  * Método para ver
  */
 public function ver($key, $order = 'order.perfil.asc', $page = 'pag.1')
 {
     $page = Filter::get($page, 'page') > 0 ? Filter::get($page, 'page') : 1;
     if (!($id = MkcSecurity::isValidKey($key, 'show_perfil', 'int'))) {
         return MkcRedirect::toAction('listar');
     }
     $perfil = new Perfil();
     if (!$perfil->find_first($id)) {
         MkcMessage::get('id_no_found');
         return MkcRedirect::toAction('listar');
     }
     $usuario = new Usuario();
     $this->usuarios = $usuario->getUsuarioPorPerfil($perfil->id, $order, $page);
     $this->perfil = $perfil;
     $this->order = $order;
     $this->page_title = 'Información del Perfil';
     $this->key = $key;
 }