function user_worker() { if ($this->session->userdata('perfil') == 'admin' || $this->session->userdata('perfil') == 'owner' || $this->session->userdata('perfil') == 'worker') { $crud = new ajax_grocery_CRUD(); $crud->set_theme('datatables'); $crud->set_table('usuarios'); $crud->set_subject('Empleados de taller'); if ($this->session->userdata('perfil') == 'admin') { $crud->columns('id_taller', 'usuario_nombres', 'usuario_usuario', 'id_sucursales', 'usuario_mail', 'usuario_telf'); } else { $crud->columns('usuario_nombres', 'usuario_usuario', 'id_sucursales', 'usuario_mail', 'usuario_telf'); } $crud->fields('id_taller', 'id_sucursales', 'usuario_nombres', 'usuario_usuario', 'usuario_password', 'usuario_mail', 'usuario_telf', 'usuario_perfil'); $crud->required_fields('id_taller', 'usuario_nombres', 'usuario_usuario', 'id_sucursales', 'usuario_password'); $crud->display_as('usuario_nombres', 'Nombres'); $crud->display_as('usuario_usuario', 'Login'); $crud->display_as('usuario_password', 'Password'); $crud->display_as('usuario_mail', 'Mail'); $crud->display_as('id_sucursales', 'Sucursal'); $crud->display_as('usuario_telf', 'Teléfono'); $crud->display_as('id_taller', 'Taller'); $crud->change_field_type('usuario_password', 'password'); $crud->change_field_type('usuario_perfil', 'hidden', 'worker'); $crud->unset_read(); $crud->where('usuario_perfil = "worker"'); if ($this->session->userdata('perfil') == 'admin') { $crud->set_relation('id_taller', 'talleres', 'taller_nombre'); $crud->set_relation('id_sucursales', 'sucursales', 'sucursal_nombre'); } else { $crud->set_relation('id_taller', 'talleres', 'taller_nombre', 'id_taller IN ("' . $this->session->userdata('id_taller') . '")'); $crud->set_relation('id_sucursales', 'sucursales', 'sucursal_nombre', 'id_taller IN ("' . $this->session->userdata('id_taller') . '")'); } $crud->callback_edit_field('usuario_password', array($this, 'set_password_input_to_empty')); $crud->callback_add_field('usuario_password', array($this, 'set_password_input_to_empty')); $crud->callback_before_update(array($this, 'encrypt_password_callback')); $crud->callback_before_insert(array($this, 'encrypt_password_callback')); if ($this->session->userdata('perfil') != 'admin') { $crud->where('taller_nombre =', $this->session->userdata('nombre_taller')); } $output = $crud->render(); //$output -> op = 'user_management'; $this->_example_output($output); } else { $this->close(); } }