public function addAction() { $req_model = new Default_Model_Requisition(); $candsmodel = new Default_Model_Candidatedetails(); $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; $loginuserRole = $auth->getStorage()->read()->emprole; $loginUserGroup = $auth->getStorage()->read()->group_id; } $popConfigPermission = array(); if (sapp_Global::_checkprivileges(COUNTRIES, $loginUserGroup, $loginuserRole, 'add') == 'Yes') { array_push($popConfigPermission, 'country'); } if (sapp_Global::_checkprivileges(STATES, $loginUserGroup, $loginuserRole, 'add') == 'Yes') { array_push($popConfigPermission, 'state'); } if (sapp_Global::_checkprivileges(CITIES, $loginUserGroup, $loginuserRole, 'add') == 'Yes') { array_push($popConfigPermission, 'city'); } $managerStr = ''; $messages = array(); $inter_options = array(); $id = $this->getRequest()->getParam('id'); $callval = $this->getRequest()->getParam('call'); if ($callval == 'ajaxcall') { $this->_helper->layout->disableLayout(); } $form = new Default_Form_Interviewrounds(); $form->setAction(BASE_URL . 'scheduleinterviews/add'); $form->id->setValue($id); $form->removeElement('cand_status'); $form->removeElement('interview_status'); $form->submit->setLabel('Save'); $data = array(); $req_data = $req_model->getReqForInterviews(); $req_options = array(); foreach ($req_data as $req) { $req_options[$req['id']] = $req['requisition_code'] . ' - ' . $req['jobtitlename']; } $form->req_id->addMultiOptions(array('' => 'Select Requisition ID') + $req_options); if (count($req_options) == 0) { $messages['req_id'] = "No approved requisitions."; $messages['candidate_name'] = "Candidates are not added yet."; $messages['interviewer_id'] = "Interviewers are not added yet."; } if (count($form->country->getMultiOptions()) == 1) { $messages['country'] = "Countries are not configured yet."; $messages['state'] = "States are not configured yet."; $messages['city'] = "Cities are not configured yet."; } if (isset($_POST['req_id']) && $_POST['req_id'] != '') { $candsData = $candsmodel->getnotscheduledcandidateData($_POST['req_id']); $cand_data_opt = array(); if (count($candsData) > 0) { foreach ($candsData as $cand) { $cand_data_opt[$cand['id']] = $cand['candidate_name']; } } $form->candidate_name->addMultiOptions(array('' => 'Select Candidate') + $cand_data_opt); if (isset($req['department_id'])) { $repmanData = $req_model->getReportingmanagers($loginUserGroup, $loginUserId, '', $req['department_id'], 'interviewer'); $managers_data_opt = array(); if (!empty($repmanData)) { foreach ($repmanData as $rep) { $inter_options[] = array('id' => $rep['id'], 'name' => $rep['name'], 'profileimg' => $rep['profileimg']); } } } else { $managerStr = "nomanagers"; } } if (isset($_POST['country']) && $_POST['country'] != '') { $statesmodel = new Default_Model_States(); $statesmodeldata = $statesmodel->getBasicStatesList(intval($_POST['country'])); $st_opt = array(); if (count($statesmodeldata) > 0) { foreach ($statesmodeldata as $dstate) { $st_opt[$dstate['state_id_org']] = $dstate['state']; } } $form->state->addMultiOptions(array('' => 'Select State') + $st_opt); } if (isset($_POST['state']) && $_POST['state'] != '') { $citiesmodel = new Default_Model_Cities(); $citiesmodeldata = $citiesmodel->getBasicCitiesList(intval($_POST['state'])); $ct_opt = array(); if (count($citiesmodeldata) > 0) { foreach ($citiesmodeldata as $dcity) { $ct_opt[$dcity['city_org_id']] = $dcity['city']; } } $form->city->addMultiOptions(array('' => 'Select City') + $ct_opt); } $this->view->form = $form; $this->view->round_count = 0; $this->view->messages = $messages; $this->view->inter_options = $inter_options; $this->view->popConfigPermission = $popConfigPermission; if ($this->getRequest()->getPost()) { $result = $this->save($form, $data); $this->view->msgarray = $result; $this->view->messages = $result; } }
/** * */ public function addAction() { $req_model = new Default_Model_Requisition(); $candsmodel = new Default_Model_Candidatedetails(); $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; $loginuserRole = $auth->getStorage()->read()->emprole; $loginUserGroup = $auth->getStorage()->read()->group_id; } $managerStr = ''; $messages = array(); $inter_options = array(); $id = $this->getRequest()->getParam('id'); $callval = $this->getRequest()->getParam('call'); if ($callval == 'ajaxcall') { $this->_helper->layout->disableLayout(); } $form = new Default_Form_Interviewrounds(); $form->setAction(DOMAIN . 'scheduleinterviews/add'); $form->id->setValue($id); $form->removeElement('cand_status'); $form->removeElement('interview_status'); $form->submit->setLabel('Save'); $data = array(); $req_data = $req_model->getReqForInterviews(); $req_options = array(); foreach ($req_data as $req) { $req_options[$req['id']] = $req['requisition_code'] . ' - ' . $req['jobtitlename']; } $form->req_id->addMultiOptions(array('' => 'Select Requisition ID') + $req_options); if (count($req_options) == 0) { $messages['req_id'] = "No approved requisitions."; $messages['candidate_name'] = "Candidates are not added yet."; $messages['interviewer_id'] = "Interviewers are not added yet."; } if (isset($_POST['req_id']) && $_POST['req_id'] != '') { $candsData = $candsmodel->getnotscheduledcandidateData($_POST['req_id']); $cand_data_opt = array(); if (count($candsData) > 0) { foreach ($candsData as $cand) { $cand_data_opt[$cand['id']] = $cand['candidate_name']; } } $form->candidate_name->addMultiOptions(array('' => 'Select Candidate') + $cand_data_opt); if (isset($req['department_id'])) { #$repmanData = $req_model->getReportingmanagers($loginUserGroup, $loginUserId, '', $req['department_id'], 'interviewer'); #$requi_number = $_POST['req_id']; $repmanData = $req_model->getRequisitionInterviewPanel($_POST['req_id']); $managers_data_opt = array(); if (!empty($repmanData)) { foreach ($repmanData as $rep) { $inter_options[] = array('id' => $rep['id'], 'name' => $rep['name'], 'profileimg' => $rep['profileimg']); } } } else { $managerStr = "nomanagers"; } } $this->view->form = $form; $this->view->round_count = 0; $this->view->messages = $messages; $this->view->inter_options = $inter_options; if ($this->getRequest()->getPost()) { $result = $this->save($form, $data); $this->view->msgarray = $result; $this->view->messages = $result; } }
/** * This function acts as a service for adding a interview. * @param array $params_arr = array of parameters * @return array Array of results. */ public function addinterview($params_arr) { $result = array(); $status = 0; $message = "No access to add interview."; if (isset($params_arr['role_id']) && $params_arr['role_id'] != '' && isset($params_arr['group_id']) && $params_arr['group_id'] != '' && isset($params_arr['userid']) && $params_arr['userid'] != '') { $role_id = $params_arr['role_id']; $group_id = $params_arr['group_id']; $userid = $params_arr['userid']; if ($role_id == SUPERADMINROLE || $group_id == MANAGEMENT_GROUP || $group_id == HR_GROUP) { $privilege_flag = sapp_Global::_checkprivileges(SCHEDULEINTERVIEWS, $group_id, $role_id, 'add'); if ($privilege_flag == 'Yes') { $status = 1; $message = "success"; $req_model = new Default_Model_Requisition(); $countryModal = new Default_Model_Countries(); $req_data = $req_model->getReqForInterviews(); $req_options = $requisition_options = array(); $countries_options = $cntry_options = array(); foreach ($req_data as $req) { $req_options[$req['id']] = $req['requisition_code'] . ' - ' . $req['jobtitlename']; } $requisition_options = array('' => 'Select Requisition ID') + $req_options; $countriesData = $countryModal->fetchAll('isactive=1', 'country'); foreach ($countriesData->toArray() as $data) { $cntry_options[trim($data['country_id_org'])] = $data['country']; } $countries_options = array('' => 'Select country') + $cntry_options; $interview_type_options = array('' => 'Select Interview Type', 'In person' => 'In person', 'Phone' => 'Phone', 'Video conference' => 'Video conference'); if (empty($req_options) && count($req_options) == 0) { $status = 0; $message = "No approved requisitions."; } else { if (empty($cntry_options) && count($cntry_options) == 0) { $status = 0; $message = "Countries are not configured yet."; } else { $result['req_id'] = $requisition_options; $result['country'] = $countries_options; $result['interview_mode'] = $interview_type_options; } } } } } return array('status' => $status, 'message' => $message, 'result' => $result); }