Example #1
0
 public function modificar($email = '')
 {
     $empleado = new Empleado_model();
     $this->titulo = 'modificar empleado';
     $this->estilo = array('jquery-te-1.3.3', 'registrar', 'jquery-ui');
     $this->javascript = array('jquery-ui', 'fecha', 'ciudades', 'jquery.validate.min', 'validarEmpleadoAct');
     if ($this->uri->segment(1) == 'empleado') {
         $this->permisos('empleado');
         $this->pagina = 'crear empleado';
         $this->carpeta = 'administrador';
         $datos['user'] = '******';
         $datos['datos'] = TRUE;
         $empleado->datos($this->session->userdata('email'));
         $email = $empleado->email();
         $datos['email'] = $email;
     } elseif ($this->session->userdata('usuario') == 'admin' && $this->uri->segment(2) == 'datos') {
         $this->permisos('admin');
         $this->pagina = 'crear empleado';
         $this->carpeta = 'administrador';
         $datos['user'] = '******';
         $datos['datos'] = TRUE;
         $empleado->datos($this->session->userdata('email'));
         $email = $empleado->email();
         $datos['email'] = $email;
     } else {
         $this->permisos('admin');
         $this->form_validation->set_error_delimiters('<span class="text-error">', '</span>');
         $email = urldecode($email);
         $this->pagina = 'crear empleado';
         $this->carpeta = 'administrador';
         $this->menu = 'menu_admin_empleados';
         $datos['email'] = $email;
         $datos['actualizar'] = TRUE;
         $empleado->datos($email);
     }
     if (Empleado_model::existe($empleado->email())) {
         $datos['provincias'] = $this->Provincia->obtener();
         $datos['ciudades'] = $this->Ciudad->ciudades($empleado->provincia($email, TRUE));
         $datos['imagen'] = $empleado->foto($email);
         $formulario = $this->formulario_registro();
         $formulario['nombre']['input']['value'] = $empleado->nombre();
         $formulario['apellidoPaterno']['input']['value'] = $empleado->primerApellido();
         $formulario['apellidoMaterno']['input']['value'] = $empleado->segundoApellido();
         $formulario['fechaNacimiento']['input']['value'] = $empleado->fechaNacimiento();
         $formulario['direccion']['input']['value'] = $empleado->direccion();
         $formulario['provincia']['input']['value'] = $empleado->provincia($email, TRUE);
         $formulario['ciudad']['input']['value'] = $empleado->ciudad($email, TRUE);
         $formulario['telefono']['input']['value'] = $empleado->telefono();
         $formulario['email']['input']['value'] = $empleado->email();
         $formulario['cargo'] = array('label' => array('accesskey' => '', 'name' => 'Cargo'), 'input' => array('class' => 'cargo', 'id' => 'cargo', 'name' => 'cargo', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->cargo()), 'requerido' => TRUE);
         $formulario['password']['requerido'] = FALSE;
         $formulario['passconf']['requerido'] = FALSE;
         $formulario['salario'] = array('label' => array('accesskey' => '', 'name' => 'Salario'), 'input' => array('class' => 'salario', 'id' => 'salario', 'name' => 'salario', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->salario()), 'requerido' => FALSE);
         $formulario['fechaContratacion'] = array('label' => array('accesskey' => '', 'name' => 'Fecha de contratación'), 'input' => array('class' => 'fechaContratacion', 'id' => 'fAlta', 'name' => 'fAlta', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->fechaContratacion()), 'requerido' => FALSE);
         $formulario['fechaFinContrato'] = array('label' => array('accesskey' => '', 'name' => 'Fecha fin de contrato'), 'input' => array('class' => 'fechaFinContrato', 'id' => 'fBaja', 'name' => 'fBaja', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->fechaFinContrato()), 'requerido' => FALSE);
         $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 ($input['input']['class'] == 'salario' && $input['input']['value'] == 0) {
                 $input['input']['value'] = '';
             }
         }
         $datos['boton'] = array('class' => 'btn btn-info', 'name' => 'button', 'id' => 'boton_empleado');
         $email = $empleado->email();
         if ($this->_validar()) {
             $codigo = '';
             $archivo = new Archivo_model();
             if ($empleado->foto($email, TRUE) != 0) {
                 $archivo->datos($empleado->foto($email, TRUE));
                 $archivo->actualizar($empleado->foto($email, TRUE), 'foto');
             } else {
                 if ($_FILES['archivo']['name'] != '') {
                     if ($archivo->inicializar('foto')) {
                         $codigo = $archivo->codigo();
                     }
                 }
             }
             if ($empleado->actualizar($email, $codigo)) {
                 $empleado->datos($email);
                 $datos['provincias'] = $this->Provincia->obtener();
                 $datos['ciudades'] = $this->Ciudad->ciudades($empleado->provincia($email, TRUE));
                 $datos['imagen'] = $empleado->foto($email);
                 $formulario = $this->formulario_registro();
                 $formulario['nombre']['input']['value'] = $empleado->nombre();
                 $formulario['apellidoPaterno']['input']['value'] = $empleado->primerApellido();
                 $formulario['apellidoMaterno']['input']['value'] = $empleado->segundoApellido();
                 $formulario['fechaNacimiento']['input']['value'] = $empleado->fechaNacimiento();
                 $formulario['direccion']['input']['value'] = $empleado->direccion();
                 $formulario['provincia']['input']['value'] = $empleado->provincia($email, TRUE);
                 $formulario['ciudad']['input']['value'] = $empleado->ciudad($email, TRUE);
                 $formulario['telefono']['input']['value'] = $empleado->telefono();
                 $formulario['email']['input']['value'] = $empleado->email();
                 $formulario['cargo'] = array('label' => array('accesskey' => '', 'name' => 'Cargo'), 'input' => array('class' => 'cargo', 'label' => 'Cargo', 'name' => 'cargo', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->cargo()), 'requerido' => TRUE);
                 $formulario['salario'] = array('label' => array('accesskey' => '', 'name' => 'Salario'), 'input' => array('class' => 'salario', 'label' => 'Salario', 'name' => 'salario', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->salario()), 'requerido' => FALSE);
                 $formulario['fechaContratacion'] = array('label' => array('accesskey' => '', 'name' => 'Fecha de contratación'), 'input' => array('class' => 'fechaContratacion', 'label' => 'Fecha contratación', 'name' => 'fAlta', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->fechaContratacion()), 'requerido' => FALSE);
                 $formulario['fechaFinContrato'] = array('label' => array('accesskey' => '', 'name' => 'Fecha fin de contrato'), 'input' => array('class' => 'fechaFinContrato', 'label' => 'Fin de contrato', 'name' => 'fBaja', 'maxlength' => '60', 'size' => '15', 'value' => $empleado->fechaFinContrato()), 'requerido' => FALSE);
                 $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'] = '';
                         }
                     }
                 }
                 $this->exito = 'El empleado ha sido actualizado satisfactoriamente';
             } else {
                 $this->error = array('nivel' => '2', 'mensaje' => 'No se ha podido completar la actualización por favor inténtelo de nuevo más tarde');
             }
         }
     } else {
         $this->error = array('nivel' => '1', 'mensaje' => 'No existe el empleado indicado.');
     }
     $this->mostrar($datos);
 }