Exemplo n.º 1
0
 protected function cargaValores()
 {
     if (!isset($_SESSION['usuarioPortal']['menu'])) {
         // Está logeado (viene del portal), pero es la primera vez que entra
         $_SESSION['usuarioPortal']['accesosPortal'] = array();
         // Carga la cadena de conexion a la base de datos del proyecto
         $proyectoApp = new PcaeProyectosApps();
         $proyectoApp = $proyectoApp->find('PrimaryKeyMD5', $this->request[1]);
         //print_r($proyectoApp);
         $_SESSION['project']['Id'] = $proyectoApp->getId();
         $_SESSION['project']['IdEmpresa'] = $proyectoApp->getIdProyecto()->getIdEmpresa()->getId();
         $_SESSION['project']['empresa'] = $proyectoApp->getIdProyecto()->getIdEmpresa()->getRazonSocial();
         $_SESSION['project']['title'] = $proyectoApp->getIdProyecto()->getProyecto();
         $_SESSION['project']['url'] = $proyectoApp->getUrl();
         $_SESSION['project']['conection'] = array('dbEngine' => $proyectoApp->getDbEngine(), 'host' => $proyectoApp->getHost(), 'user' => $proyectoApp->getUser(), 'password' => $proyectoApp->getPassword(), 'database' => $proyectoApp->getDatabase());
         // Carga la cadena de conexión al servidor ftp del proyecto
         $_SESSION['project']['ftp'] = array('server' => $proyectoApp->getFtpServer(), 'port' => $proyectoApp->getFtpPort(), 'timeout' => $proyectoApp->getFtpTimeout(), 'folder' => $proyectoApp->getFtpFolder(), 'user' => $proyectoApp->getFtpUser(), 'password' => $proyectoApp->getFtpPassword());
         unset($proyectoApp);
         // Establece el perfil del usuario para el proyecto y carga
         // el menú en base a su perfil
         $usuario = new Agentes($_SESSION['usuarioPortal']['Id']);
         //print_r($usuario);
         if ($usuario->getStatus()) {
             $idPerfil = $usuario->getIDPerfil()->getPrimaryKeyValue();
             $_SESSION['usuarioPortal']['IdPerfil'] = $idPerfil;
             $_SESSION['usuarioPortal']['IdRol'] = $usuario->getIDRol()->getIDTipo();
             $_SESSION['usuarioPortal']['email'] = $usuario->getEMail();
             $_SESSION['emp'] = $_SESSION['project']['IdEmpresa'];
             $_SESSION['usuarioPortal']['sucursales'] = $usuario->getSucursales('', false);
             $_SESSION['suc'] = $_SESSION['usuarioPortal']['sucursales'][0]['Id'];
             $_SESSION['usuarioPortal']['menu'] = $usuario->getArrayMenu();
             // Carga las variables de entorno y web del proyecto
             $this->cargaVariables();
             // Activar la versión
             $var = new CpanVariables('Pro', 'Web');
             $erp = $var->getNode('erp');
             $_SESSION['ver'] = $erp['version'] != '' ? $erp['version'] : '0';
             // Activar o no la posibilidad de cambiar precios
             $rolesCambioPrecio = explode(",", trim($erp['rolesCambioPrecios']));
             $_SESSION['usuarioPortal']['cambioPrecios'] = in_array($_SESSION['usuarioPortal']['IdRol'], $rolesCambioPrecio);
             // Poner en la sesión la política de actualización de precios en base
             $_SESSION['usuarioPortal']['actuPrecios'] = $erp['actuPrecios'] != '' ? $erp['actuPrecios'] : 'PVP';
             // Poner en la sesión el margén mínimo de venta
             $_SESSION['usuarioPortal']['margenMinimo'] = $erp['alertaMargen'] > 0 ? $erp['alertaMargen'] : 0;
             // Poner en la sesión si se generar alertas o no por falta de stock
             $_SESSION['usuarioPortal']['alertaStock'] = $erp['alertaStock'];
             // Establece los idiomas en base a la varible web del proyecto
             /**
              $langs = trim($_SESSION['VARIABLES']['WebPro']['globales']['lang']);
              $_SESSION['idiomas']['disponibles'] = ($langs == '') ? array('0' => 'es') : explode(",", $langs);
             
              if (!isset($_SESSION['idiomas']['actual'])) {
              $_SESSION['idiomas']['actual'] = 0;
              }
             */
         }
         //print_r($_SESSION);
         unset($usuario);
     }
 }