/** * Método principal */ public function index() { $pais = new Pais(); $estado = new Estado(); $municipio = new Municipio(); if (Input::hasPost('empresa')) { if (DwSecurity::isValidKey(Input::post('empresa_id_key'), 'form_key')) { if (Empresa::setEmpresa('save', Input::post('empresa'))) { DwMessage::valid('Los datos se han actualizado correctamente'); } else { DwMessage::get('error_form'); } } } $empresa = new Empresa(); if (!$empresa->getInformacionEmpresa()) { DwMessage::get('id_no_found'); return DwRedirect::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->pais = $pais->getListadoPais(); $this->estado = $estado->getListadoEstado(); $this->municipio = $municipio->getListadoMunicipio(); $this->page_title = 'Información de la empresa'; }
/** * Método para cerrar sesión */ public function salir($js = '') { if (Usuario::setSession('close')) { DwMessage::valid("La sesión ha sido cerrada correctamente."); } if ($js == 'no-script') { DwMessage::info('Activa el uso de JavaScript en su navegador para poder continuar.'); } return DwRedirect::toAction('entrar/'); }
/** * Método para listar */ public function listar($order = 'order.modulo.asc', $page = 'pag.1') { if (Input::hasPost('privilegios') or Input::hasPost('old_privilegios')) { if (RecursoPerfil::setRecursoPerfil(Input::post('privilegios'), Input::post('old_privilegios'))) { DwMessage::valid('Los privilegios se han registrado correctamente!'); Input::delete('privilegios'); //Para que no queden persistentes Input::delete('old_privilegios'); } } $page = Filter::get($page, 'page') > 0 ? Filter::get($page, 'page') : 1; $recurso = new Recurso(); $this->recursos = $recurso->getListadoRecurso(Recurso::ACTIVO, $order, $page); $perfil = new Perfil(); $this->perfiles = $perfil->getListadoPerfil(Perfil::ACTIVO); $privilegio = new RecursoPerfil(); $this->privilegios = $privilegio->getPrivilegiosToArray(); $this->order = $order; $this->page_title = 'Permisos y privilegios de usuarios'; }
/** * Método principal */ public function index() { $usuario = new Usuario(); if (!$usuario->getInformacionUsuario(Session::get('id'))) { DwMessage::get('id_no_found'); return DwRedirect::to('dashboard'); } $perfil = $usuario->perfil; $app_ajax_old = $usuario->app_ajax; if (Input::hasPost('usuario')) { if (DwSecurity::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(); DwMessage::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 { DwRedirect::to('sistema/mi_cuenta'); } } $usuario->perfil = $perfil; $usuario->fotografia = $persona->fotografia; } } else { ActiveRecord::rollbackTrans(); } } } $this->temas = DwUtils::getFolders(dirname(APP_PATH) . '/public/css/backend/themes/'); $this->usuario = $usuario; $this->page_title = 'Actualizar mis datos'; }
/** * Método para eliminar */ public function eliminar($key) { if (!($id = DwSecurity::isValidKey($key, 'del_profesion', 'int'))) { return DwRedirect::toAction('listar'); } $profesion = new Profesion(); if (!$profesion->getInformacionProfesion($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('listar'); } try { if (Profesion::setProfesion('delete', array('id' => $profesion->id))) { DwMessage::valid('La profesion se ha eliminado correctamente!'); } } catch (KumbiaException $e) { DwMessage::error('Esta profesion no se puede eliminar porque se encuentra relacionada con otro registro.'); } return DwRedirect::toAction('listar'); }
/** * Método para eliminar */ public function eliminar($key) { if (!($id = DwSecurity::isValidKey($key, 'del_sucursal', 'int'))) { return DwRedirect::toAction('listar'); } $sucursal = new Sucursal(); if (!$sucursal->getInformacionSucursal($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('listar'); } try { if (Sucursal::setSucursal('delete', array('id' => $sucursal->id))) { DwMessage::valid('La sucursal se ha eliminado correctamente!'); } } catch (KumbiaException $e) { DwMessage::error('Esta sucursal no se puede eliminar porque se encuentra relacionada con otro registro.'); } return DwRedirect::toAction('listar'); }
/** * Método para optimizar tablas */ public function optimizar($key) { if (!($tabla = DwSecurity::isValidKey($key, 'optimizar'))) { return DwRedirect::toAction('index'); } try { $sistema = new Sistema(); if ($sistema->getOptimizacion($tabla)) { DwMessage::valid("Se ha optimizado la tabla '{$tabla}' correctamente!"); } else { DwMessage::error('Se ha presentado un error interno al optimizar la tabla. <br />Por favor intenta más tarde.'); } } catch (KumbiaException $e) { DwMessage::error('Oops! hemos realizado algo mal. <br />Por favor intenta más tarde.'); } return DwRedirect::toAction('index'); }
/** * 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 eliminar */ public function eliminar($key) { if (!($id = DwSecurity::isValidKey($key, 'del_tiposolicitud', 'int'))) { return DwRedirect::toAction('listar'); } $tiposolicitud = new tiposolicitud(); if (!$tiposolicitud->getInformaciontiposolicitud($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('listar'); } try { if (tiposolicitud::settiposolicitud('delete', array('id' => $tiposolicitud->id))) { DwMessage::valid('El tipo solicitud se ha eliminado correctamente!'); } } catch (KumbiaException $e) { DwMessage::error('Esta tipo de solicitud no se puede eliminar porque se encuentra relacionada con otro registro.'); } return DwRedirect::toAction('listar'); }
/** * Método para eliminar */ public function eliminar($key) { if (!($id = DwSecurity::isValidKey($key, 'del_fabricante', 'int'))) { return DwRedirect::toAction('listar'); } $fabricante = new Fabricante(); if (!$fabricante->getInformacionFabricante($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('listar'); } try { if (Fabricante::setFabricante('delete', array('id' => $fabricante->id))) { DwMessage::valid('La fabricante se ha eliminado correctamente!'); } } catch (KumbiaException $e) { DwMessage::error('Este fabricante no se puede eliminar porque se encuentra relacionada con otro registro.'); } return DwRedirect::toAction('listar'); }
/** * Método para resetear las configuraciones del sistema * @return type */ public function reset() { try { if (Sistema::reset()) { DwMessage::valid('El sistema se ha reseteado correctamente!'); } } catch (KumbiaException $e) { DwMessage::error('Se ha producido un error al resetear la configuración del sistema.'); } return DwRedirect::toAction('index'); }
/** * Método para eliminar */ public function eliminar($key) { if (!($id = DwSecurity::isValidKey($key, 'eliminar_recurso', 'int'))) { return DwRedirect::toAction('listar'); } $recurso = new Recurso(); if (!$recurso->find_first($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('listar'); } try { if ($recurso->delete()) { DwMessage::valid('El recurso se ha eliminado correctamente!'); } else { DwMessage::warning('Lo sentimos, pero este recurso no se puede eliminar.'); } } catch (KumbiaException $e) { DwMessage::error('Este recurso no se puede eliminar porque se encuentra relacionado con otro registro.'); } return DwRedirect::toAction('listar'); }
/** * Método que verifica la conexión con la base de datos * @param type $data * @param type $source * @return boolean */ public static function testConnection($data, $source, $db = false) { //Filtro el array con los parámetros $data = Filter::data($data, array('host', 'username', 'password', 'name', 'type'), 'trim'); //Se utiliza por defecto el driver mysqli por ser orientado a objetos $data['type'] = 'mysqli'; $data['charset'] = 'UTF-8'; try { //Seteo las variables del core Config::set("databases.{$source}", $data); //Reviso la conexión, sino, genera la excepción @Db::factory($source, true); DwMessage::valid("Conexión establecida en modo <b>{$source}!</b>"); } catch (KumbiaException $e) { DwMessage::error("Error en modo '{$source}': <br /> " . $e->getMessage()); return false; } }
/** * Método para inactivar/reactivar */ public function estado($tipo, $key) { if (!($id = DwSecurity::isValidKey($key, $tipo . '_perfil', 'int'))) { return DwRedirect::toAction('listar'); } $perfil = new Perfil(); if (!$perfil->find_first($id)) { DwMessage::get('id_no_found'); } else { if ($tipo == 'inactivar' && $perfil->estado == Perfil::INACTIVO) { DwMessage::info('El perfil ya se encuentra inactivo'); } else { if ($tipo == 'reactivar' && $perfil->estado == Perfil::ACTIVO) { DwMessage::info('El perfil ya se encuentra activo'); } else { $estado = $tipo == 'inactivar' ? Perfil::INACTIVO : Perfil::ACTIVO; if (Perfil::setPerfil('update', $perfil->to_array(), array('id' => $id, 'estado' => $estado))) { $estado == Perfil::ACTIVO ? DwMessage::valid('El perfil se ha reactivado correctamente!') : DwMessage::valid('El perfil se ha inactivado correctamente!'); } } } } return DwRedirect::toAction('listar'); }
/** * Método para inactivar/reactivar */ public function estado($tipo, $key) { if (!($id = DwSecurity::isValidKey($key, $tipo . '_usuario', 'int'))) { return DwRedirect::toAction('listar'); } $usuario = new Usuario(); if (!$usuario->getInformacionUsuario($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('listar'); } if ($tipo == 'reactivar' && $usuario->estado_usuario == EstadoUsuario::ACTIVO) { DwMessage::info('El usuario ya se encuentra activo.'); return DwRedirect::toAction('listar'); } else { if ($tipo == 'bloquear' && $usuario->estado_usuario == EstadoUsuario::BLOQUEADO) { DwMessage::info('El usuario ya se encuentra bloqueado.'); return DwRedirect::toAction('listar'); } } if (Input::hasPost('estado_usuario')) { if (EstadoUsuario::setEstadoUsuario($tipo, Input::post('estado_usuario'), array('usuario_id' => $usuario->id))) { $tipo == 'reactivar' ? DwMessage::valid('El usuario se ha reactivado correctamente!') : DwMessage::valid('El usuario se ha bloqueado correctamente!'); return DwRedirect::toAction('listar'); } } $this->page_title = $tipo == 'reactivar' ? 'Reactivación de usuario' : 'Bloqueo de usuario'; $this->usuario = $usuario; }
/** * Método para restaurar */ public function restaurar($key = '') { if (!Input::isAjax()) { DwMessage::error('Método incorrecto para restaurar el sistema.'); return DwRedirect::toAction('listar'); } if (!($id = DwSecurity::isValidKey($key, 'restaurar_backup', 'int'))) { return View::ajax(); } $pass = Input::post('password'); $usuario = Usuario::getUsuarioLogueado(); if ($usuario->password != md5(sha1($pass))) { DwMessage::error('Acceso incorrecto al sistema. Tu no tienes los permisos necesarios para realizar esta acción.'); return View::ajax(); } if ($backup = Backup::restoreBackup($id)) { DwMessage::valid('El sistema se ha restaurado satisfactoriamente con la copia de seguridad <b>' . $backup->archivo . '</b>'); } else { DwMessage::error('Se ha producido un error interno al restaurar el sistema. Por favor contacta al administrador.'); } return View::ajax(); }
/** * Método para eliminar */ public function eliminar($key) { if (!($id = DwSecurity::isValidKey($key, 'del_solicitud_servicio', 'int'))) { return DwRedirect::toAction('listar'); } $solicitud_servicio = new Mantenimientos(); if (!$solicitud_servicio->getInformacionMantenimientos($id)) { DwMessage::get('id_no_found'); return DwRedirect::toAction('listar'); } try { if (Mantenimientos::setMantenimientos('delete', array('id' => $solicitud_servicio->id))) { DwMessage::valid('La solicitud se ha eliminado correctamente!'); } } catch (KumbiaException $e) { DwMessage::error('Esta solicitud no se puede eliminar porque se encuentra relacionada con otro registro.'); } return DwRedirect::toAction('listar'); }