freeCodeCamp/server/services/hikes.js

36 lines
851 B
JavaScript
Raw Normal View History

import debugFactory from 'debug';
import assign from 'object.assign';
2016-01-27 19:34:44 +00:00
const debug = debugFactory('fcc:services:hikes');
export default function hikesService(app) {
const Challenge = app.models.Challenge;
return {
name: 'hikes',
2016-01-27 19:34:44 +00:00
read: (req, resource, { dashedName } = {}, config, cb) => {
2015-07-14 01:42:14 +00:00
const query = {
2016-04-15 04:19:37 +00:00
where: {
challengeType: '6',
isComingSoon: false
},
2015-12-23 03:28:40 +00:00
order: ['order ASC', 'suborder ASC' ]
2015-07-14 01:42:14 +00:00
};
2016-01-27 19:34:44 +00:00
debug('dashedName', dashedName);
if (dashedName) {
assign(query.where, {
2016-01-27 19:34:44 +00:00
dashedName: { like: dashedName, options: 'i' }
});
}
debug('query', query);
2015-07-14 01:42:14 +00:00
Challenge.find(query, (err, hikes) => {
if (err) {
return cb(err);
}
2016-03-03 04:54:14 +00:00
return cb(null, hikes.map(hike => hike.toJSON()));
});
}
};
}