function setUp() { parent::setUp(); $permissionIndividual1Id = Contact::createIndividual(); $permissionIndividual2Id = Contact::createIndividual(); $juniorposition = 'Junior Support Specialist ' . substr(sha1(rand()), 0, 7); $this->juniorParams = array('position' => $juniorposition, 'location' => 'Headquaters', 'salary' => '$110-$130k/yr', 'description' => 'Answer phone calls and emails from irate customers.', 'benefits' => 'Have a place to park', 'requirements' => 'Pro-actively looks to build cross discipline experience and increase knowledge.', 'application_profile' => CRM_Core_DAO::getFieldValue('CRM_Core_DAO_UFGroup', 'application_profile', 'id', 'name'), 'evaluation_profile' => CRM_Core_DAO::getFieldValue('CRM_Core_DAO_UFGroup', 'evaluation_profile', 'id', 'name'), 'status_id' => '1', 'start_date' => '20140425151100', 'end_date' => '20140426231100', 'permission' => array('manage Applicants', 'administer Vacancy'), 'permission_contact_id' => array($permissionIndividual1Id, $permissionIndividual2Id)); $this->juniorPosition = CRM_HRRecruitment_BAO_HRVacancy::create($this->juniorParams); $juniorposition2 = 'Junior Support Specialist ' . substr(sha1(rand()), 0, 7); $this->juniorParams2 = array('position' => $juniorposition2, 'location' => 'Home or Home-Office', 'salary' => '$110-$130k/yr', 'status_id' => '1', 'start_date' => '20140425151100', 'end_date' => '20140426231100'); $this->juniorPosition2 = CRM_HRRecruitment_BAO_HRVacancy::create($this->juniorParams2); $seniorposition = 'Senior Support Specialist ' . substr(sha1(rand()), 0, 7); $this->seniorParams = array('position' => $seniorposition, 'location' => 'Headquaters', 'salary' => '$110-$130k/yr', 'description' => 'Answer phone calls and emails from irate customers.', 'benefits' => 'Have a place to park', 'requirements' => 'Pro-actively looks to build cross discipline experience and increase knowledge.', 'application_profile' => CRM_Core_DAO::getFieldValue('CRM_Core_DAO_UFGroup', 'application_profile', 'id', 'name'), 'evaluation_profile' => CRM_Core_DAO::getFieldValue('CRM_Core_DAO_UFGroup', 'evaluation_profile', 'id', 'name'), 'status_id' => '2', 'start_date' => '20140425151100', 'end_date' => '20140426231100', 'permission' => array('manage Applicants', 'administer Vacancy'), 'permission_contact_id' => array($permissionIndividual1Id, $permissionIndividual2Id)); $this->seniorPosition = CRM_HRRecruitment_BAO_HRVacancy::create($this->seniorParams); }
/** * create() method (create and update modes) */ function testCreateGet() { $permissionIndividual1Id = Contact::createIndividual(); $permissionIndividual2Id = Contact::createIndividual(); $stages = array_keys(CRM_Core_OptionGroup::values('case_status', FALSE, FALSE, FALSE, " AND grouping = 'Vacancy'")); $params = array('position' => 'Senior Support Specialist', 'location' => 'Headquaters', 'salary' => '$110-$130k/yr', 'description' => 'Answer phone calls and emails from irate customers.', 'benefits' => 'Have a place to park', 'requirements' => 'Pro-actively looks to build cross discipline experience and increase knowledge.', 'stages' => $stages, 'application_profile' => CRM_Core_DAO::getFieldValue('CRM_Core_DAO_UFGroup', 'application_profile', 'id', 'name'), 'evaluation_profile' => CRM_Core_DAO::getFieldValue('CRM_Core_DAO_UFGroup', 'evaluation_profile', 'id', 'name'), 'status_id' => '4', 'start_date' => '20140425151100', 'end_date' => '20140426231100', 'permission' => array('manage Applicants', 'administer Vacancy'), 'permission_contact_id' => array($permissionIndividual1Id, $permissionIndividual2Id)); $vacancy = CRM_HRRecruitment_BAO_HRVacancy::create($params); $getValues = array(); $getParams = array('id' => $vacancy->id); CRM_HRRecruitment_BAO_HRVacancy::retrieve($getParams, $getValues); //stage array index always starts with 1 so in order to make changes in //$getValues['stages'] in order to just match the value $getValues['stages'] = array_values($getValues['stages']); $getValues['permission'] = array_values($getValues['permission']); $getValues['permission_contact_id'] = array_values($getValues['permission_contact_id']); //process date back to mysql format $getValues['start_date'] = CRM_Utils_Date::isoToMysql($getValues['start_date']); $getValues['end_date'] = CRM_Utils_Date::isoToMysql($getValues['end_date']); foreach ($params as $column => $value) { $this->assertEquals($params[$column], $getValues[$column], "Check for Job {$column}."); } }
/** * Function to process the form * * @access public * @return void */ public function postProcess() { $params = $this->exportValues(); if ($this->_id) { $params['id'] = $this->_id; } $params['is_template'] = $this->_isTemplate; CRM_HRRecruitment_BAO_HRVacancy::create($params); if ($this->controller->getButtonName('submit') == "_qf_HRVacancy_next") { $urlParams = "reset=1"; if ($this->_isTemplate) { $urlParams .= "&template={$this->_isTemplate}"; } CRM_Core_Session::singleton()->pushUserContext(CRM_Utils_System::url('civicrm/vacancy/find', $urlParams)); } }