Exemple #1
0
 /**
  * Returns the standardized job object
  *
  * @param array $payload
  *
  * @return \JobBrander\Jobs\Client\Job
  */
 public function createJobObject($payload)
 {
     $defaults = ["creation_date", "locations", "id", "state", "update_date", "level_displays", "company_name", "apply_link", "external_apply_link", "title", "company_f1_image", "full_description", "categories", "search_image", "type"];
     $payload = static::parseAttributeDefaults($payload, $defaults);
     $job = new Job(['title' => $payload['title'], 'name' => $payload['title'], 'description' => $payload['full_description'], 'url' => 'https://www.themuse.com' . $payload['apply_link'], 'sourceId' => $payload['id'], 'location' => $payload['locations']]);
     $job->setCompany($payload['company_name'])->setCompanyLogo($payload['company_f1_image'])->setDatePostedAsString($payload['creation_date'])->setOccupationalCategory($payload['categories'])->setExperienceRequirements($payload['level_displays']);
     return $job;
 }
Exemple #2
0
 /**
  * Returns the standardized job object
  *
  * @param array $payload
  *
  * @return \JobBrander\Jobs\Client\Job
  */
 public function createJobObject($payload)
 {
     $defaults = ['jobTitle', 'company', 'location', 'date', 'detailUrl'];
     $payload = static::parseAttributeDefaults($payload, $defaults);
     $job = new Job(['title' => $payload['jobTitle'], 'name' => $payload['jobTitle'], 'url' => $payload['detailUrl'], 'location' => $payload['location']]);
     $location = static::parseLocation($payload['location']);
     $job->setCompany($payload['company'])->setDatePostedAsString($payload['date']);
     if (isset($location[0])) {
         $job->setCity($location[0]);
     }
     if (isset($location[1])) {
         $job->setState($location[1]);
     }
     return $job;
 }
Exemple #3
0
 /**
  * Returns the standardized job object
  *
  * @param array $payload
  *
  * @return \JobBrander\Jobs\Client\Job
  */
 public function createJobObject($payload)
 {
     $defaults = ['title', 'date', 'onclick', 'company', 'city', 'description', 'price', 'id', 'industry0'];
     $payload = static::parseAttributeDefaults($payload, $defaults);
     $job = new Job(['title' => $payload['title'], 'name' => $payload['title'], 'description' => $payload['description'], 'javascriptFunction' => $payload['onclick'], 'javascriptAction' => 'onclick', 'sourceId' => $payload['id'], 'industry' => $payload['industry0']]);
     $location = static::parseLocation($payload['city']);
     $job->setDatePostedAsString($payload['date'])->setCompany($payload['company']);
     if (isset($location[0])) {
         $job->setCity($location[0]);
     }
     if (isset($location[1])) {
         $job->setState($location[1]);
     }
     return $job;
 }
 public function testItCanBeRepresentedAsArray()
 {
     $attributes = $this->getJobAttributes();
     $address = new PostalAddress();
     $hiringOrg = new Organization();
     $jobLocation = new Place();
     $hiringOrg->setAddress($address);
     $jobLocation->setAddress($address);
     $job = new Job($attributes);
     $jobArray = $job->setHiringOrganization($hiringOrg)->setJobLocation($jobLocation)->toArray();
     array_walk_recursive($attributes, function ($value, $key) use($jobArray) {
         $this->assertEquals($jobArray[$key], $value);
     });
     $this->assertEquals($hiringOrg->toArray(), $jobArray['hiringOrganization']);
     $this->assertEquals($address->toArray(), $jobArray['hiringOrganization']['address']);
     $this->assertEquals($jobLocation->toArray(), $jobArray['jobLocation']);
     $this->assertEquals($address->toArray(), $jobArray['jobLocation']['address']);
 }
 /**
  * Attempt to parse and add location to Job
  *
  * @param Job     $job
  * @param string  $location
  *
  * @return  Job
  */
 private function setJobLocation(Job $job, $location)
 {
     $location = static::parseLocation($location);
     if (isset($location[0])) {
         $job->setCity($location[0]);
     }
     if (isset($location[1])) {
         $job->setState($location[1]);
     }
     return $job;
 }