Example #1
0
 public function exito()
 {
     $this->pagina = 'mensaje';
     $this->carpeta = 'cliente';
     $this->titulo = 'Éxito';
     $this->estilo = array('menu_cliente', 'general', 'resultado');
     $this->javascript = array('menu_cliente', 'jquery-ui', 'tamanyo', 'confirmacion');
     $datos['mensaje'] = '<div class="alert alert-success">
                             <button type="button" class="close" data-dismiss="alert">
                                 &times;
                             </button> 
                             <h4>Éxito.</h4>  
                             La operación se ha realizado correctamente. 
                             Recibirá un correo electrónico para notificarle que su proyecto está listo.
                          </div>';
     if ($this->_comprobarCompra()) {
         $presupuesto = new Presupuesto_model();
         $presupuestos = array();
         $opciones = array('0' => '', '1' => 'Obra Nueva', '2' => 'Peritación', '3' => 'Rehabilitación', '4' => 'Adecuación de local', '5' => 'Tasación', '6' => 'Informe', '7' => 'Auditoría energética');
         //$datos = array('Estado'=>'Aceptado');
         foreach ($this->cart->contents() as $item) {
             array_push($presupuestos, array('codigo' => $item['id'], 'cliente' => $presupuesto->nombreCliente($item['id']), 'email' => htmlentities(strip_tags($presupuesto->email($item['id']))), 'estado' => 'Aceptado', 'Fecha' => date('d M Y', strtotime($presupuesto->fechaSolicitud($item['id']))), 'Hora' => date('H:i A', strtotime($presupuesto->fechaSolicitud($item['id']))), 'tipo' => $opciones[$presupuesto->tipo($item['id'])], 'direccion' => $presupuesto->direccion($item['id']), 'ciudad' => $presupuesto->ciudad($item['id']), 'provincia' => $presupuesto->provincia($item['id'])));
             $presupuesto->actualizar($item['id'], array('estado' => 'Aceptado'));
         }
         $this->pusher->trigger('private-notificaciones', 'presupuesto-comprar', $presupuestos);
         $this->_borrarCarro();
         $this->mostrar($datos);
     } else {
         $this->error();
     }
 }
Example #2
0
 public function notificaciones()
 {
     if (!$this->input->is_ajax_request()) {
         redirect('404');
     } else {
         $notificaciones = array();
         $notificaciones['presupuestos'] = Presupuesto_model::numero_abiertos();
         $evento = new Evento_model();
         $notificaciones['eventos'] = count($evento->evento(date('Y-m-d'), $this->session->userdata('email')));
         $notificaciones['proyectos'] = Presupuesto_model::numero_aceptados();
         $notificaciones['tareas'] = Tarea_model::numeroTareasNuevas($this->session->userdata('email'), $this->session->userdata('ultimoAcceso'));
         $notificaciones['respuestas'] = Respuesta_model::numeroRespuestasNuevas($this->session->userdata('email'), $this->session->userdata('ultimoAcceso'));
         $notificaciones['notas'] = Notas_model::numeroNotasNuevas($this->session->userdata('email'), $this->session->userdata('ultimoAcceso'));
         $notificaciones['archivos'] = Archivo_model::numeroArchivosNuevos($this->session->userdata('email'), $this->session->userdata('ultimoAcceso'));
         $notificaciones['novedades'] = $notificaciones['presupuestos'] + $notificaciones['proyectos'] + $notificaciones['tareas'] + $notificaciones['respuestas'] + $notificaciones['notas'] + $notificaciones['archivos'];
         $notificaciones['chat'] = Chat_model::numero_mensajes_nuevos($this->session->userdata('ultimoAcceso'), $this->session->userdata('email'));
         echo json_encode($notificaciones);
     }
 }
 static function obtener($campo, $orden, $offset, $limite)
 {
     $orden = $orden == 'desc' ? 'desc' : 'asc';
     $sort_columns = array('EmailCliente', 'Nombre', 'Estado', 'Tipo', 'Direccion', 'FechaCreacion', 'FechaSolicitud', 'Ciudad', 'Provincia');
     $campo = in_array($campo, $sort_columns) ? $campo : 'Nombre';
     self::$db->select('*');
     self::$db->from('Presupuestos');
     self::$db->limit($limite, $offset);
     self::$db->order_by($campo, $orden);
     $query = self::$db->get();
     $presupuestos = $query->result();
     foreach ($presupuestos as $presupuesto) {
         $presupuesto->Tipo = Presupuesto_model::_tipo($presupuesto->Tipo);
         $presupuesto->FechaSolicitud = date('d-m-Y H:i:s', strtotime($presupuesto->FechaSolicitud));
     }
     return $presupuestos;
 }
Example #4
0
 public function borrar($codigo = '')
 {
     $presupuesto = new Presupuesto_model();
     if ($codigo != '') {
         if (Presupuesto_model::existe($codigo)) {
             $presupuesto->datos($codigo);
             $codigo = urldecode($codigo);
             $codigoArchivo = $presupuesto->codigoArchivo($codigo);
             if (Archivo_model::existe($codigoArchivo)) {
                 $archivo = new Archivo_model();
                 $archivo->datos($codigoArchivo);
                 $archivo->eliminar();
             }
             if ($presupuesto->eliminar($codigo)) {
                 redirect('admin/presupuesto');
             }
         }
     } else {
         if ($this->input->post('checkbox') != '') {
             $codigos = $this->input->post('checkbox');
             foreach ($codigos as $codigo) {
                 if (Presupuesto_model::existe($codigo)) {
                     $presupuesto->datos($codigo);
                     $codigo = urldecode($codigo);
                     $codigoArchivo = $presupuesto->codigoArchivo($codigo);
                     if (Archivo_model::existe($codigoArchivo)) {
                         $archivo = new Archivo_model();
                         $archivo->datos($codigoArchivo);
                         $archivo->eliminar();
                     }
                     $presupuesto->eliminar($codigo);
                 }
             }
         }
         redirect('admin/presupuesto');
     }
 }
Example #5
0
 public function proyectos()
 {
     $this->pagina = 'proyectos';
     $this->titulo = 'proyectos';
     $this->estilo = array('listProyectos', 'bootstrap-lightbox');
     $this->javascript = array('bootstrap-lightbox', 'proyectos', 'tamanyo');
     $offset = $this->uri->segment(2);
     $limit = 2;
     $visibles = array();
     if (Proyecto_model::numeroVisibles() > 0) {
         $visibles = Proyecto_model::visibles($offset, $limit);
     }
     if (empty($visibles)) {
         $datos['mensaje'] = 'Actualmente no existen proyectos disponibles para mostrar.';
     } else {
         $opciones = array('0' => '', '1' => 'Obra Nueva', '2' => 'Peritación', '3' => 'Rehabilitación', '4' => 'Adecuación de local', '5' => 'Tasación', '6' => 'Informe', '7' => 'Auditoría energética');
         $proyectos = array();
         $presupuesto = new Presupuesto_model();
         foreach ($visibles as $visible) {
             $presupuesto->datos($visible->CodigoPresupuesto);
             $imagenes = Archivo_model::obtenerVisibles($visible->Codigo);
             $proyectos[$visible->Codigo] = array('Nombre' => $visible->NombreProyecto, 'Ciudad' => $presupuesto->ciudad(), 'Provincia' => $presupuesto->provincia(), 'Tipo' => $opciones[$visible->Tipo], 'Descripcion' => $visible->Contenido, 'imagenes' => $imagenes);
         }
         $config = array();
         $config['base_url'] = base_url() . "proyectos";
         $config['total_rows'] = Proyecto_model::numeroVisibles();
         $config['per_page'] = $limit;
         $config['uri_segment'] = 2;
         $config['prev_link'] = 'anterior';
         $config['next_link'] = 'siguiente';
         $config['first_link'] = '<<';
         $config['last_link'] = '>>';
         $config['num_tag_open'] = '<li>';
         $config['num_tag_close'] = '</li>';
         $config['cur_tag_open'] = '<li class="disabled"><a href="#">';
         $config['cur_tag_close'] = '</a></li>';
         $config['prev_tag_open'] = '<li>';
         $config['prev_tag_close'] = '</li>';
         $config['next_tag_open'] = '<li>';
         $config['next_tag_close'] = '</li>';
         $config['first_tag_open'] = '<li>';
         $config['first_tag_close'] = '</li>';
         $config['last_tag_open'] = '<li>';
         $config['last_tag_close'] = '</li>';
         $this->pagination->initialize($config);
         $datos['links'] = $this->pagination->create_links();
         $datos['proyectos'] = $proyectos;
     }
     $this->mostrar($datos);
 }
Example #6
0
 public function descargar($codigo)
 {
     if (Archivo_model::existe($codigo)) {
         $aux = FALSE;
         $archivo = new Archivo_model();
         $archivo->datos($codigo);
         $file = str_replace('http://localhost', realpath(__DIR__ . '/../../../'), $archivo->ruta($codigo));
         if ($archivo->codigoTarea() != NULL || $archivo->codigoRespuesta() != NULL) {
             if ($this->session->userdata('usuario') == 'admin' || Tarea_model::existeEmpleado($archivo->codigoTarea($codigo), $this->session->userdata('email'))) {
                 $aux = TRUE;
             }
         } else {
             if ($this->session->userdata('usuario') == 'admin' || $archivo->emailEmpleado() == $this->session->userdata('email') || Proyecto_model::existeEmpleado($archivo->codigoProyecto($codigo), $this->session->userdata('email'))) {
                 $aux = TRUE;
             } elseif ($this->session->userdata('usuario') == 'cliente') {
                 if ($archivo->CodigoProyecto != NULL) {
                     $proyecto = new Proyecto_model();
                     $codigoP = $proyecto->codigoPresupuesto($archivo->CodigoProyecto);
                     $presupuesto = new Presupuesto_model();
                     if ($codigoP != '') {
                         if ($presupuesto->email($codigoP) == $this->session->userdata('email')) {
                             $aux = TRUE;
                         }
                     }
                 } else {
                     $codigoP = $archivo->codigoPresupuesto($codigo);
                     $presupuesto = new Presupuesto_model();
                     if ($codigoP != '') {
                         if ($presupuesto->email($codigoP) == $this->session->userdata('email')) {
                             $aux = TRUE;
                         }
                     }
                 }
             }
         }
         if ($aux) {
             if (file_exists($file)) {
                 $extension = $archivo->Extension;
                 if ($extension == 'pdf') {
                     header('Content-type: application/pdf');
                 } elseif ($extension == 'jpg' || $extension == 'png' || $extension == 'jpeg') {
                     header('Content-type: application/jpg');
                 }
                 header('Content-Disposition: attachment; filename=' . basename($file));
                 header('Expires: 0');
                 header('Cache-Control: must-revalidate');
                 header('Pragma: public');
                 header('Content-Length: ' . filesize($file));
                 ob_clean();
                 flush();
                 readfile($file);
             } else {
                 echo "El archivo no existe";
             }
         } else {
             echo 'No puedes descargar el archivo';
         }
     } else {
         echo 'El archivo no existe';
     }
 }