function addresses_management() { $this->load->library('grocery_CRUD'); $this->load->library('ajax_grocery_CRUD'); //create ajax_grocery_CRUD instead of grocery_CRUD. This extends the functionality with the set_relation_dependency method keeping all original functionality as well $crud = new ajax_grocery_CRUD(); //this is the default grocery CRUD model declaration $crud->set_table('address'); $crud->set_relation('ad_country_id', 'country', 'c_name'); $crud->set_relation('ad_state_id', 'state', 's_name'); //this is the specific line that specifies the relation. // 'ad_state_id' is the field (drop down) that depends on the field 'ad_country_id' (also drop down). // 's_country_id' is the foreign key field on the state table that specifies state's country $crud->set_relation_dependency('ad_state_id', 'ad_country_id', 's_country_id'); $crud->unset_print(); $crud->unset_export(); //$crud->unset_add(); // $crud->unset_edit(); $crud->unset_delete(); $output = $crud->render(); $this->_example_output($output); }
function student_management() { if ($this->userconfig->perfil == 'ADMIN' or $this->userconfig->perfil == 'CALL') { //$crud = new grocery_CRUD(); $this->config->set_item('grocery_crud_file_upload_allow_file_types', 'jpg|png'); $this->load->library('ajax_grocery_CRUD'); $crud = new ajax_grocery_CRUD(); $crud->set_theme('datatables'); $crud->set_table('alumno'); $crud->set_subject('Cliente'); $crud->columns('idsucursal', 'idgrado', 'nombre', 'codigo', 'idparada', 'idparada_tarde'); $crud->fields('codigo', 'clave', 'idsucursal', 'idgrado', 'nombre', 'foto1', 'foto2', 'idparada', 'idparada_tarde'); $crud->display_as('idsucursal', 'Institución'); $crud->display_as('idgrado', 'Cliente'); $crud->display_as('idparada', 'Parada mañana'); $crud->display_as('idparada_tarde', 'Parada tarde'); $crud->required_fields('codigo', 'idsucursal', 'nombre'); //$crud->set_relation('idparadas', 'paradas', 'direccion'); $crud->set_field_upload('foto1', 'assets/images/students'); $crud->display_as('foto1', 'Foto uno'); $crud->set_field_upload('foto2', 'assets/images/students'); $crud->display_as('foto2', 'Foto dos'); $crud->callback_after_upload(array($this, 'image_callback_after_upload')); $crud->change_field_type('clave', 'password'); $crud->callback_edit_field('clave', array($this, 'set_password_input_to_empty')); $crud->callback_add_field('clave', 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')); $state = $crud->getState(); $state_info = $crud->getStateInfo(); $primary_key = '-1'; if ($state == 'edit') { $primary_key = $state_info->primary_key; } if ($this->userconfig->perfil == 'ADMIN') { $crud->set_relation('idsucursal', 'sucursales', 'nombre'); $crud->set_relation('idparada', 'paradas', 'descripcion', array('idalumno' => $primary_key)); $crud->set_relation('idparada_tarde', 'paradas', 'descripcion', array('idalumno' => $primary_key)); $crud->set_relation('idgrado', 'grados', 'descripcion'); } else { $crud->set_relation('idsucursal', 'sucursales', 'nombre', 'id IN ("' . $this->userconfig->idsucursal . '")'); $crud->set_relation('idgrado', 'grados', 'descripcion', 'id IN ("' . $this->userconfig->idsucursal . '")'); $crud->set_relation('idparada', 'paradas', 'descripcion', array('idalumno' => $primary_key)); $crud->set_relation('idparada_tarde', 'paradas', 'descripcion', array('idalumno' => $primary_key)); } $crud->set_relation_dependency('idgrado', 'idsucursal', 'idsucursal'); if ($this->userconfig->perfil != 'ADMIN') { $crud->where('alumno.idsucursal =', $this->userconfig->idsucursal); } $crud->order_by('idsucursal,idgrado,nombre'); $output = $crud->render(); $output->op = 'student_management'; $this->_admin_output($output); } else { $this->close(); } }
function end_tasks() { 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('tasks'); $crud->set_subject('Tareas'); $crud->columns('id_taller', 'id_sucursales', 'id_auto', 'auto_placa', 'id_tipodetrabajo', 'km_auto', 'id_estado', 'task_begin', 'task_end'); $crud->fields('id_taller', 'id_sucursales', 'id_auto', 'auto_placa', 'id_tipodetrabajo', 'km_auto', 'id_estado'); $crud->required_fields('id_taller', 'id_sucursal', 'id_auto', 'auto_placa', 'id_tipodetrabajo', 'km_auto', 'id_estado'); $crud->display_as('id_taller', 'Nombre Taller'); $crud->display_as('id_sucursales', 'Nombre Sucursal'); $crud->display_as('id_auto', 'Auto'); $crud->display_as('id_auto', 'Placa'); $crud->display_as('id_tipodetrabajo', 'Tarea'); $crud->display_as('id_estado', 'Estado'); if ($this->session->userdata('perfil') == 'worker') { $crud->unset_delete(); $crud->unset_edit(); } //$crud->unset_read(); $crud->set_relation('id_estado', 'estados', 'estado'); if ($this->session->userdata('perfil') == 'admin') { $crud->set_relation('id_taller', 'talleres', 'taller_nombre'); $crud->set_relation('id_sucursales', 'sucursales', 'sucursal_nombre'); $crud->set_relation('id_tipodetrabajo', 'tipo_trabajos', 'nombre_trabajo'); $crud->set_relation('id_auto', 'autos', 'auto_marca'); $crud->set_relation('auto_placa', 'autos', 'auto_placa'); } 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->set_relation('id_tipodetrabajo', 'tipo_trabajos', 'nombre_trabajo', 'id_taller IN ("' . $this->session->userdata('id_taller') . '")'); $crud->set_relation('id_auto', 'autos', 'auto_marca', 'id_taller IN ("' . $this->session->userdata('id_taller') . '")'); $crud->set_relation('auto_placa', 'autos', 'auto_placa', 'id_taller IN ("' . $this->session->userdata('id_taller') . '")'); //$crud->set_relation_dependency('id_auto','auto_placa','auto_placa'); } $crud->where('estado = "Finalizado" or estado = "Cancelado"'); 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(); } }