diff --git a/CHANGELOG.md b/CHANGELOG.md index c46cd9e..f54f8d3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ All Notable changes to `jobs-govt` will be documented in this file ### Added - Name and title field equal to returned job title - Using start date as posted date +- Adding city/state parsing to use setCity/setState methods ### Deprecated - Nothing diff --git a/src/Govt.php b/src/Govt.php index 47e9d05..0e0e08f 100644 --- a/src/Govt.php +++ b/src/Govt.php @@ -33,15 +33,24 @@ public function createJobObject($payload) 'title' => $payload['position_title'], 'name' => $payload['position_title'], 'url' => $payload['url'], - 'company' => $payload['organization_name'], 'location' => $payload['location'], - 'minimumSalary' => $payload['minimum'], 'maximumSalary' => $payload['maximum'], 'startDate' => $payload['start_date'], 'endDate' => $payload['end_date'], ]); - $job->setDatePostedAsString($payload['start_date']); + $location = $this->parseLocation($payload['location']); + + $job->setCompany($payload['organization_name']) + ->setDatePostedAsString($payload['start_date']) + ->setMinimumSalary($payload['minimum']); + + if (isset($location[0])) { + $job->setCity($location[0]); + } + if (isset($location[1])) { + $job->setState($location[1]); + } return $job; } @@ -208,4 +217,14 @@ public function getVerb() { return 'GET'; } + + /** + * Parse city and state from string given by API + * + * @return array + */ + public function parseLocation($location) + { + return explode(', ', $location); + } }