/**
  * 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';
 }
Esempio n. 2
0
 /**
  * Método para crear una copia de seguridad
  * 
  * @param type $data Input del post
  * @param string $path Ruta donde se almacenará la copia de seguridad
  * @param type $database Pull de conexión
  * @return boolean|\Backup
  */
 public static function createBackup($data, $path = '', $database = '')
 {
     $obj = new Backup($data);
     $obj->archivo = "backup-" . ($obj->count() + 1) . ".sql.gz";
     $obj->usuario_id = Session::get('id');
     //Inicio transacción
     ActiveRecord::beginTrans();
     if (!$obj->create()) {
         ActiveRecord::rollbackTrans();
         return FALSE;
     }
     if (empty($path)) {
         $path = APP_PATH . 'temp/backup/';
     }
     if (!is_writable($path)) {
         ActiveRecord::rollbackTrans();
         DwMessage::error('Error: BKP-CRE001. El directorio de las copias de seguridad no tiene permisos de escritura.');
         return false;
     }
     $file = $path . $obj->archivo;
     $system = $obj->_getSystem();
     $database = empty($databases) ? Config::get('config.application.database') : $database;
     $config = $obj->_getConfig($database);
     $exec = "{$system} -h " . $config['host'] . " -u " . $config['username'] . " --password="******" --opt --default-character-set=latin1 " . $config['name'] . " | gzip > {$file}";
     system($exec, $resultado);
     if ($resultado) {
         ActiveRecord::rollbackTrans();
         DwMessage::error('Error: BKP-CRE002. Se ha producido un error al intentar crear una nueva copia de seguridad.');
         return false;
     }
     $tamano = filesize($file);
     $clase = array(" Bytes", " KB", " MB", " GB", " TB");
     $obj->tamano = round($tamano / pow(1024, $i = floor(log($tamano, 1024))), 2) . $clase[$i];
     $obj->update();
     @chmod($file, 0744);
     ActiveRecord::commitTrans();
     if ($obj) {
         DwAudit::debug("Se crea una copia de seguridad bajo la denominación: {$obj->denominacion}");
     }
     return $obj;
 }
 /**
  * Método para editar
  */
 public function editar($key)
 {
     if (!($id = DwSecurity::isValidKey($key, 'upd_usuario', 'int'))) {
         return DwRedirect::toAction('listar');
     }
     $usuario = new Usuario();
     if (!$usuario->getInformacionUsuario($id)) {
         DwMessage::get('id_no_found');
         return DwRedirect::toAction('listar');
     }
     if (Input::hasPost('usuario')) {
         // if(DwSecurity::isValidKey(Input::post('usuario_id_key'), 'form_key')) {
         ActiveRecord::beginTrans();
         if (Usuario::setUsuario('update', Input::post('usuario'), array('repassword' => Input::post('repassword'), 'id' => $usuario->id, 'login' => $usuario->login))) {
             ActiveRecord::commitTrans();
             DwMessage::valid('El usuario se ha actualizado correctamente.');
             return DwRedirect::toAction('listar');
         } else {
             ActiveRecord::rollbackTrans();
         }
         //}
     }
     $this->temas = DwUtils::getFolders(dirname(APP_PATH) . '/public/css/backend/themes/');
     $this->usuario = $usuario;
     $this->page_title = 'Actualizar usuario';
 }
 /**
  * Método para cargar las facturas
  */
 public function facturar($key)
 {
     if (!($id = DwSecurity::isValidKey($key, 'upd_incidencias', 'int'))) {
         return DwRedirect::toAction('registro');
     }
     $incidencias = new Incidencias();
     $obj = new IncidenciasPatologia();
     //$factura = new Factura();
     $factura_dt = new FacturaDt();
     $this->sol = $obj->getInformacionIncidenciasPatologia($id);
     if (!$incidencias->getInformacionIncidencias($id)) {
         DwMessage::get('id_no_found');
         return DwRedirect::toAction('registro');
     }
     if (Input::hasPost('factura')) {
         ActiveRecord::beginTrans();
         $factu = Factura::setFactura('create', Input::post('factura'));
         if ($factu) {
             if (FacturaDt::setFacturaDt(Input::post('descripcion'), Input::post('cantidad'), Input::post('monto'), Input::post('exento'), $factu->id)) {
                 $solfactura = IncidenciasFactura::setIncidenciasFactura($factu->id, $id);
                 if ($solfactura) {
                     if (Input::post('multifactura')) {
                         //para saber si va a cargar multiples facturas sobre esa solicitud
                         $solser = $incidencias->getInformacionIncidencias($id);
                         $solser->estado_solicitud = "G";
                         //estado G parcialmente facturada
                         $solser->save();
                         ActiveRecord::commitTrans();
                         DwMessage::valid('Se ha cargado la factura exitosamente!');
                         $key_upd = DwSecurity::getKey($id, 'upd_incidencias');
                         return DwRedirect::toAction('facturar/' . $key_upd);
                         //retorna a la misma visata de facturacion
                     } else {
                         $solser = $incidencias->getInformacionIncidencias($id);
                         $solser->estado_solicitud = "F";
                         $solser->save();
                         ActiveRecord::commitTrans();
                         DwMessage::valid('Se ha cargado la factura exitosamente!');
                         return DwRedirect::toAction('facturacion');
                     }
                 } else {
                     ActiveRecord::rollbackTrans();
                     DwMessage::error('No se pudo enviar a cargar multiples facturas!');
                 }
             } else {
                 ActiveRecord::rollbackTrans();
                 DwMessage::error('Los detalles de la Factura no se han cargado correctamente Intente de nuevo!');
             }
         } else {
             ActiveRecord::rollbackTrans();
             DwMessage::error('La Factura no se ha cargado con exito!');
         }
     }
     $this->incidencias = $incidencias;
     $this->page_title = 'Cargar Facturas a la solicitud';
 }
Esempio n. 5
0
 /**
  * Método para editar
  */
 public function editar($key)
 {
     if (!($id = Security::getKey($key, 'edit_menu', 'int'))) {
         return Redirect::toAction('listar');
     }
     $usuario = new Usuario();
     if (!$usuario->getInformacionUsuario($id)) {
         Flash::error('Lo sentimos, no se ha podido establecer la información del usuario');
         return Redirect::toAction('listar');
     }
     if (Input::hasPost('usuario')) {
         ActiveRecord::beginTrans();
         if (Usuario::setUsuario('update', Input::post('usuario'), array('repassword' => Input::post('repassword'), 'id' => $id, 'login' => $usuario->login))) {
             ActiveRecord::commitTrans();
             Flash::valid('El usuario se ha actualizado correctamente.');
             return Redirect::toAction("editar/{$key}/");
         } else {
             ActiveRecord::rollbackTrans();
         }
     }
     $this->temas = DwUtils::getFolders(dirname(APP_PATH) . '/public/css/backend/themes/');
     $this->usuario = $usuario;
     $this->page_title = 'Actualizar usuario';
 }