Skip to content

Instantly share code, notes, and snippets.

@darrellpratt
Created September 26, 2016 17:12
Show Gist options
  • Save darrellpratt/f29d63c5e6b2f24b26bae1c301f4ead6 to your computer and use it in GitHub Desktop.
Save darrellpratt/f29d63c5e6b2f24b26bae1c301f4ead6 to your computer and use it in GitHub Desktop.
var _ = require('lodash');
var xml2js = require('xml2js@0.4.8')
var parser = new xml2js.Parser();
var rp = require("request-promise");
var url = 'https://cars-openhire.silkroad.com/api/index.cfm?fuseaction=app.getJobListings&FORMAT=xml&JOBPLACEMENT=external&KEYWORD=&VERSION=1';
module.exports =
function (ctx,cb) {
ctx.storage.get(function (error, data) {
console.log(data);
if (data === null || typeof dat === 'undefined') {
rp(url)
.then(function (body) {
var xml = body;
parser.parseString(xml, function(err, res) {
var jobs = res.jobs.job;
console.log(jobs);
var listings = jobs.map(_.partialRight(_.pick, ['jobId', 'title']));
ctx.storage.set(listings, function (error) {
console.log(error);
})
cb(null, listings);
});
})
.catch(function (err) {
console.log(err);
cb(null, { error: err });
});
} else {
cb(null, data);
}
});
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment