Пример #1
0
 public function modificar($email = '')
 {
     $cliente = new Cliente_model();
     $this->titulo = 'modificar cliente';
     if ($this->uri->segment(2) == 'modificar') {
         $this->pagina = 'modificar datos';
         $this->carpeta = 'cliente';
         $this->estilo = array('registrar', 'jquery-ui');
         $this->javascript = array('jquery.validate.min', 'validarCliente', 'ciudades', 'tamanyo');
         $this->permisos('cliente');
         $datos['boton'] = $this->boton_registro();
         $cliente->datos($this->session->userdata('email'));
         $email = $this->session->userdata('email');
     } else {
         $this->pagina = 'crear cliente';
         $this->carpeta = 'empleado';
         $this->estilo = array('jquery-te-1.3.3', 'registrar', 'jquery-ui');
         $this->javascript = array('jquery-ui', 'fecha', 'ciudades', 'jquery.validate.min', 'validarClienteMod');
         $this->menu = 'menu_empleado_clientes';
         $this->form_validation->set_error_delimiters('<div class="alert alert-error"> <button type="button" class="close" data-dismiss="alert">&times;</button>
                             <h4>Error</h4>', '</div>');
         $datos['boton'] = array('class' => 'btn btn-info', 'name' => 'button', 'id' => 'boton_cliente');
         $datos['actualizar'] = TRUE;
         $email = urldecode($email);
         if (Cliente_model::existe($email)) {
             $datos['email'] = $email;
             $cliente->datos($email);
         }
         if ($this->uri->segment(1) == 'admin') {
             $this->permisos('admin');
             $datos['user'] = '******';
         } else {
             $this->permisos('empleado');
             $datos['user'] = '******';
         }
     }
     if (Cliente_model::existe($cliente->email())) {
         $datos['provincias'] = $this->Provincia->obtener();
         $datos['ciudades'] = $this->Ciudad->ciudades($cliente->provincia($email, TRUE));
         $formulario = $this->formulario_registro();
         $formulario['nombre']['input']['value'] = $cliente->nombre();
         $formulario['apellidoPaterno']['input']['value'] = $cliente->primerApellido();
         $formulario['apellidoMaterno']['input']['value'] = $cliente->segundoApellido();
         $formulario['fechaNacimiento']['input']['value'] = $cliente->fechaNacimiento();
         $formulario['direccion']['input']['value'] = $cliente->direccion();
         $formulario['provincia']['input']['value'] = $cliente->provincia($email, TRUE);
         $formulario['ciudad']['input']['value'] = $cliente->ciudad($email, TRUE);
         $formulario['telefono']['input']['value'] = $cliente->telefono();
         $formulario['email']['input']['value'] = $cliente->email();
         $datos['formulario'] = $formulario;
         foreach ($datos['formulario'] as &$input) {
             if ($input['input']['class'] != 'password' && $input['input']['class'] != 'passconf') {
                 if ($input['input']['value'] == 'Desconocido' || $input['input']['value'] == 'Desconocida' || $input['input']['value'] == 'Desconoci') {
                     $input['input']['value'] = '';
                 }
             }
         }
         if ($this->_validar()) {
             if ($cliente->actualizar($email)) {
                 $cliente->datos($email);
                 $datos['ciudades'] = $this->Ciudad->ciudades($cliente->provincia($email, TRUE));
                 $formulario['nombre']['input']['value'] = $cliente->nombre();
                 $formulario['apellidoPaterno']['input']['value'] = $cliente->primerApellido();
                 $formulario['apellidoMaterno']['input']['value'] = $cliente->segundoApellido();
                 $formulario['fechaNacimiento']['input']['value'] = $cliente->fechaNacimiento();
                 $formulario['direccion']['input']['value'] = $cliente->direccion();
                 $formulario['provincia']['input']['value'] = $cliente->provincia($email, TRUE);
                 $formulario['ciudad']['input']['value'] = $cliente->ciudad($email, TRUE);
                 $formulario['telefono']['input']['value'] = $cliente->telefono();
                 $formulario['email']['input']['value'] = $cliente->email();
                 $datos['formulario'] = $formulario;
                 foreach ($datos['formulario'] as &$input) {
                     if ($input['input']['class'] != 'password' && $input['input']['class'] != 'passconf') {
                         if ($input['input']['value'] == 'Desconocido' || $input['input']['value'] == 'Desconocida') {
                             $input['input']['value'] = '';
                         }
                     }
                 }
                 if ($this->uri->segment(3) == 'modificar') {
                     $datos['mensaje'] = '<div class="alert alert-success span9">
                                         <button type="button" class="close" data-dismiss="alert">&times;</button>
                                         <h4>Ok.</h4> Sus datos personales se han actualizado correctamente.</div>';
                 } else {
                     $this->exito = 'Los datos del cliente han sido modificados satisfactoriamente.';
                 }
             } else {
                 if ($this->uri->segment(3) == 'modificar') {
                     $datos['mensaje'] = '<div class="alert alert-error span9">
                                         <button type="button" class="close" data-dismiss="alert">&times;</button>
                                         <h4>Error.</h4> Sus datos personales no se han actualizado correctamente.</div>';
                 } else {
                     $this->error = array('nivel' => '2', 'mensaje' => 'No se ha podido completar el registro por favor intentelo de nuevo más tarde');
                 }
             }
         }
     } else {
         $this->error = array('nivel' => '1', 'mensaje' => 'El cliente indicado no existe');
     }
     $this->mostrar($datos);
 }
Пример #2
0
 public function informacion($codigo)
 {
     $this->permisos('admin');
     $this->pagina = 'proyecto';
     $this->carpeta = 'administrador';
     $this->titulo = 'Información proyecto';
     $this->menu = 'menu_admin_proyecto';
     $this->submenu = 'menu_proyecto';
     $this->estilo = array('jquery-te-1.3.3', 'jquery-ui', 'proyectos', $this->pagina);
     $this->javascript = array('editor', 'proyecto', 'campos', 'jquery-te-1.3.3.min');
     $datos['user'] = '******';
     if (Proyecto_model::existe($codigo)) {
         $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['codigo'] = $codigo;
         $datos['estados'] = array('0' => 'Ejecución', '1' => 'Cerrado');
         $proyecto = new Proyecto_model();
         $datos['proyecto'] = $proyecto->datos($codigo);
         $datos['estado'] = $proyecto->estado();
         $archivo = new Archivo_model();
         $datos['mem'] = $archivo->memProyecto($codigo);
         $datos['mostrar'] = array('name' => 'mostrar', 'id' => 'mostrar', 'value' => 'accept', 'checked' => $proyecto->visible());
         $datos['nombreProyecto'] = $proyecto->nombre();
         $datos['empleadosProyectos'] = Proyecto_model::empleadosProyecto($codigo);
         $presupuesto = new Presupuesto_model();
         $datos['presupuesto'] = $presupuesto->datos($proyecto->codigoPresupuesto());
         $datos['presupuesto']->Tipo = $opciones[$datos['presupuesto']->Tipo];
         $datos['precio'] = $presupuesto->precio();
         $datos['editor'] = array('class' => 'editor', 'id' => 'contenido', 'name' => 'contenido', 'label' => 'contenido', 'value' => $proyecto->contenido($codigo));
         $cliente = new Cliente_model();
         $datos['cliente'] = $cliente->datos($presupuesto->email());
         $archivos = Archivo_model::archivosProyecto($codigo);
         $datos['archivos'] = array();
         $datos['imagenes'] = array();
         foreach ($archivos as $archivo) {
             if (substr($archivo->Ruta, -1) != '/') {
                 $ext = substr(strrchr($archivo->Ruta, "."), 1);
                 if ($ext == 'jpg' || $ext == 'JPG' || $ext == 'jpeg' || $ext == 'JPEG' || $ext == 'png' || $ext == 'PNG') {
                     array_push($datos['imagenes'], $archivo);
                 } else {
                     array_push($datos['archivos'], $archivo);
                 }
             }
         }
         if (Empresa_model::existe($proyecto->constructora())) {
             $constructora = new Constructora_model();
             $datos['constructora'] = $proyecto->constructora();
             $constructoras = Constructora_model::obtener('RazonSocial', 'asc');
             $datos['constructoras'] = array('0' => '');
             foreach ($constructoras as $constructora) {
                 $datos['constructoras'][$constructora->Cif] = $constructora->RazonSocial;
             }
         } else {
             $constructoras = Constructora_model::obtener('RazonSocial', 'asc');
             $datos['constructoras'] = array('0' => '');
             foreach ($constructoras as $constructora) {
                 $datos['constructoras'][$constructora->Cif] = $constructora->RazonSocial;
             }
         }
         $proveedores = Proveedor_model::obtener('Cif', 'asc');
         $datos['proveedores'] = array('0' => '');
         foreach ($proveedores as $proveedor) {
             $datos['proveedores'][$proveedor->Cif] = $proveedor->RazonSocial;
         }
         $empleados = Proyecto_model::empleadosProyecto($codigo);
         $datos['empleados'] = array();
         foreach ($empleados as $aux) {
             $empleado = new Empleado_model();
             $empleado->Foto = $empleado->foto($aux->EmailEmpleado);
             array_push($datos['empleados'], $empleado->datos($aux->EmailEmpleado));
         }
         $tareas = Tarea_model::obtener($this->session->userdata('email'), $codigo);
         $datos['tareas'] = $tareas;
         $materiales = Material_model::obtener($codigo);
         $datos['materiales'] = $materiales;
         $this->form_validation->set_rules('material[]', 'material', 'trim|min_length[3]|xss_clean');
         $this->form_validation->set_rules('contenido', 'material', 'trim|min_length[3]|xss_clean');
         $this->form_validation->set_message('min_length', '%s debe tener mínimo %s caracteres');
         $this->form_validation->set_message('xss_clean', ' %s no es válido');
         if ($this->form_validation->run() == TRUE) {
             if ($this->input->post('estado') != TRUE) {
                 $estado = 'Ejecución';
                 $datos['estado'] = $estado;
             } else {
                 $estado = 'Cerrado';
                 $datos['estado'] = $estado;
             }
             $data = array('Visible' => FALSE, 'Estado' => $estado);
             $proyecto->actualizar($codigo, $data);
             Archivo_model::ocultar($codigo);
             if ($this->input->post('mem') != '') {
                 $codigoArchivo = $this->input->post('mem');
                 $data = array('Codigo' => $codigoArchivo[0], 'CodigoProyecto' => $codigo, 'ArchivoProyecto' => TRUE);
                 $archivo = new Archivo_model();
                 $archivo->memProyecto($codigo, $data, TRUE);
                 $datos['mem'] = $codigoArchivo[0];
             }
             if ($this->input->post('contenido') != '') {
                 $data = array('Contenido' => $this->input->post('contenido'));
                 $proyecto->actualizar($codigo, $data);
                 $datos['editor']['value'] = $this->input->post('contenido');
             }
             $aux = $this->input->post('mostrar');
             if ($aux == 'accept') {
                 $data = array('Visible' => TRUE);
                 $proyecto->actualizar($codigo, $data);
                 Archivo_model::ocultar($codigo);
                 $aux = $this->input->post();
                 $value = 'accept';
                 foreach ($aux as $key => $value) {
                     if ($key != 'mostrar') {
                         $archivo = new Archivo_model();
                         $archivo->visible($key, TRUE);
                     }
                 }
             }
             if ($this->input->post('constructora') != 0) {
                 $aux = $this->input->post();
                 $data = array('CifConstructora' => $this->input->post('constructora'));
                 $datos['constructora'] = $this->input->post('constructora');
                 $proyecto->actualizar($codigo, $data);
             }
             if ($this->input->post('proveedor') != '' && $this->input->post('material') != '') {
                 $mat = $this->input->post('material');
                 $prov = $this->input->post('proveedor');
                 for ($i = 0; $i != count($this->input->post('proveedor')); $i++) {
                     $material = new Material_model();
                     $material->inicializar($mat[$i], $prov[$i], $codigo);
                 }
             }
         } else {
             $datos['errores'] = validation_errors();
         }
         $datos['mostrar']['checked'] = $proyecto->visible($codigo);
         $archivos = Archivo_model::archivosProyecto($codigo);
         $materiales = Material_model::obtener($codigo);
         $datos['materiales'] = $materiales;
         $datos['archivos'] = array();
         $datos['imagenes'] = array();
         foreach ($archivos as $archivo) {
             if (substr($archivo->Ruta, -1) != '/') {
                 $ext = substr(strrchr($archivo->Ruta, "."), 1);
                 if ($ext == 'jpg' || $ext == 'JPG' || $ext == 'jpeg' || $ext == 'JPEG' || $ext == 'png' || $ext == 'PNG') {
                     array_push($datos['imagenes'], $archivo);
                 } else {
                     array_push($datos['archivos'], $archivo);
                 }
             }
         }
     } else {
         $this->error = array('nivel' => '1', 'mensaje' => 'El proyecto indicado no existe');
     }
     $this->mostrar($datos);
 }