Exemplo n.º 1
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);
     }
 }
Exemplo n.º 2
0
 public function listar($campo = 'Estado', $orden = 'asc', $limit = '5', $offset = 0)
 {
     if ($this->uri->segment(1) == 'cliente') {
         $this->permisos('cliente');
         $this->load->library('cart');
         $this->pagina = 'listado proyectos';
         $this->carpeta = 'cliente';
         $this->titulo = 'proyectos';
         $this->estilo = 'listado%20presupuesto';
         $this->javascript = array('menu_cliente', 'jquery-ui', 'tamanyo', 'confirmacion');
         $proyectos = Proyecto_model::cliente($this->session->userdata('email'));
         $datos['proyectos'] = $proyectos;
     } else {
         $this->pagina = 'proyectos';
         $this->carpeta = 'empleado';
         $this->titulo = 'proyectos';
         $this->estilo = 'tablas';
         $this->javascript = array('marcar_checkbox', 'solicitudProyecto');
         $datos['buscador'] = array('class' => 'search-query input-medium', 'type' => 'text', 'name' => 'buscador', 'placeholder' => 'Buscar', 'autofocus' => 'autofocus');
         $datos['boton'] = array('class' => 'btn', 'id' => 'buscador', 'name' => 'button', 'value' => 'Buscar');
         $datos['borrar'] = array('class' => 'btn btn-danger', 'id' => 'borrar', 'value' => 'Borrar selección', 'data-confirm' => "¿Estás seguro?");
         if ($this->uri->segment(1) == 'admin') {
             $this->permisos('admin');
             $datos['user'] = '******';
             $numeroProyectos = Proyecto_model::numero();
         }
         if ($this->uri->segment(1) == 'empleados') {
             $this->permisos('empleado');
             $datos['user'] = '******';
             $numeroProyectos = Proyecto_model::numero($this->session->userdata('email'));
         }
         $opciones = $this->seleccion($numeroProyectos);
         $datos['opciones'] = $opciones;
         $datos['numero'] = $opciones;
         if ($this->input->post('cantidad') != '') {
             if ($opciones[$this->input->post('cantidad')] == 'Todo') {
                 $limit = $numeroProyectos;
             } else {
                 $limit = $opciones[$this->input->post('cantidad')];
             }
         }
         $datos['elementos'] = $limit;
         if ($this->input->post('cantidad') != '') {
             $datos['limit'] = $this->input->post('cantidad');
         } else {
             $aux = 0;
             if ($limit % 5 != 0) {
                 $aux = 1;
             }
             $datos['limit'] = floor($limit / 5) - 1 + $aux;
         }
         $datos['fields'] = array('NombreProyecto' => 'Proyecto', 'Estado' => 'Estado', 'Progreso' => 'Progreso', 'FechaComienzo' => 'Comienzo', 'FechaFinPrevista' => 'Fin previsto', 'Tipo' => 'Tipo', 'Direccion' => 'Dirección', 'Ciudad' => 'Ciudad', 'Provincia' => 'Provincia');
         $datos['numPresupuestos'] = Presupuesto_model::numero_aceptados();
         $datos['presupuestos'] = Presupuesto_model::aceptados();
         //print_r($datos['presupuestos']);
         if ($this->uri->segment(1) == 'admin') {
             $proyectos = Proyecto_model::obtener($campo, $orden, $offset, $limit);
         } else {
             $proyectos = Proyecto_model::obtener($campo, $orden, $offset, $limit, $this->session->userdata('email'));
         }
         foreach ($proyectos as $proyecto) {
             $proyecto->Progreso = $this->_progreso($proyecto->Codigo);
         }
         $datos['proyectos'] = $proyectos;
         $config = array();
         if ($this->uri->segment(1) == 'admin') {
             $config['base_url'] = base_url() . "admin/proyecto/" . $campo . "/" . $orden . "/" . $limit . "/";
         } else {
             $config['base_url'] = base_url() . "empleados/proyecto/" . $campo . "/" . $orden . "/" . $limit . "/";
         }
         $config['total_rows'] = $numeroProyectos;
         $config['per_page'] = $limit;
         $config['uri_segment'] = 6;
         $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['campo'] = $campo;
         $datos['orden'] = $orden;
     }
     //}
     $this->mostrar($datos);
 }