Beispiel #1
0
 /**
  * Enter description here...
  *
  */
 function add_employee()
 {
     $data['page_name'] = '<b>Add employee</b>';
     $data['msg'] = '';
     //Office
     $data['options'] = $this->options->office_options();
     $data['selected'] = Session::get('office_id');
     // Divisions options
     $data['division_options'] = $this->options->division_options(Session::get('office_id'));
     //Detailed office
     $detailed_options = $this->options->office_options($add_select = TRUE);
     $data['detailed_options'] = $detailed_options;
     $data['detailed_selected'] = '';
     //Type of employment
     $data['permanent_options'] = $this->options->type_employment();
     $data['permanent_selected'] = '';
     //Salary grade options
     $data['sg_options'] = $this->options->salary_grade();
     $data['sg_selected'] = '';
     //Step increment
     $data['step_options'] = $this->options->step();
     $data['step_selected'] = '';
     //Shift List
     $data['shifts_options'] = $this->options->shift();
     // Lets check if the auto generate employee
     // number is enabled
     $data['employee_id_readonly'] = '';
     $data['auto_generate_employee_id'] = 'no';
     $auto_generate_employee_id = Setting::getField('auto_generate_employee_id');
     $data['auto_employee_id'] = '';
     if ($auto_generate_employee_id == 'yes') {
         $data['employee_id_readonly'] = 'readonly';
         $data['auto_generate_employee_id'] = 'yes';
         // Lets get the maximum employee_id
         $e = new Employee_m();
         $e->where('office_id', Session::get('office_id'));
         $e->select_max('employee_id');
         $e->get();
         //$data['auto_employee_id'] = $e->employee_id + 1;
         //echo $this->db->last_query();
     }
     //If form submit
     if (Input::get('op')) {
         $this->form_validation->set_rules('employee_id', 'Employee ID', 'required|callback_employee_id_check');
         $this->form_validation->set_rules('salutation', 'Salutation', 'required');
         $this->form_validation->set_rules('lname', 'Last Name', 'required');
         $this->form_validation->set_rules('fname', 'First Name', 'required');
         $this->form_validation->set_rules('extension', 'First Name', '');
         $this->form_validation->set_rules('position', 'Position', 'required');
         $this->form_validation->set_rules('permanent', 'Type of employment', 'required');
         //$this->form_validation->set_rules('password', 'Password', 'required|matches[repassword]');
         if ($this->form_validation->run($this) == FALSE) {
             $data['selected'] = Input::get('office_id');
             $data['detailed_selected'] = Input::get('detailed_office_id');
             $data['permanent_selected'] = Input::get('permanent');
             $data['sg_selected'] = Input::get('sg');
             $data['step_selected'] = Input::get('step');
         } else {
             $shift_id = Input::get('shift2');
             $shift_type = Input::get('shift2');
             //File name of the photo
             $file_register = Session::get('file_register');
             $finger_pics = '/../' . current_work_dir() . '/pics/' . Session::get('file_register');
             $info = array('employee_id' => Input::get('employee_id'), 'lname' => Input::get('lname'), 'fname' => Input::get('fname'), 'mname' => Input::get('mname'), 'extension' => Input::get('extension'), 'position' => Input::get('position'), 'assistant_dept_head' => Input::get('assistant_dept_head'), 'office_id' => Input::get('office_id'), 'division_id' => Input::get('division_id'), 'section_id' => Input::get('section_id'), 'detailed_office_id' => Input::get('detailed_office_id'), 'salut' => Input::get('salutation'), 'pics' => $file_register, 'finger_pics' => $finger_pics, 'shift_id' => $shift_id, 'shift_type' => $shift_type, 'status' => 1, 'permanent' => Input::get('permanent'), 'first_day_of_service' => Input::get('first_day_of_service'), 'salary_grade' => Input::get('sg'), 'step' => Input::get('step'), 'newly_added' => 1, 'updated' => 1, 'emergency_contact' => Input::get('emergency_contact'), 'emergency_contact_no' => Input::get('emergency_contact_no'));
             $id = $this->Employee->add_employee($info);
             $this->Logs->insert_logs('employees', 'ADD EMPLOYEE', 'Add new employee (' . $id . ')', $id);
             // Use for messaging
             Session::flash('msg', 'New Employee added!');
             if ($this->config->item('active_apps') == 'hris') {
                 // Add to personal info
                 $p = new Personal_m();
                 $p->get_by_employee_id($id);
                 $p->employee_id = $id;
                 $p->lname = Input::get('lname');
                 $p->fname = Input::get('fname');
                 $p->mname = Input::get('mname');
                 $p->save();
                 // Redirect to pds page
                 //return Redirect::to('pds/employee_profile/'.$id, 'refresh');
             }
             // Redirect to adding new employee form
             return Redirect::to('employees/add_employee', 'refresh');
         }
     }
     $data['main_content'] = 'add_employee';
     return View::make('includes/template', $data);
 }