flixbus
Version:
Catch flixbus data
38 lines (33 loc) • 1.08 kB
JavaScript
/*global require, module*/
const cities = require('./lib/flixbus/cities');
const stations = require('./lib/flixbus/stations');
const search = require('./lib/flixbus/search');
var app = module.exports;
app.search = function (params, cb) {
var possibleDepartures = app.find(params.departureCity);
var possibleArrivals = app.find(params.arrivalCity);
if (possibleDepartures.length > 1) {
// @todo inquirer list
}
if (possibleArrivals.length > 1) {
// @todo inquirer list
}
search({
adults: 1,
children: 0,
bikes: 0,
departureStation: "",
arrivalStation: "",
departureCity: possibleDepartures.shift().cityId,
arrivalCity: possibleArrivals.shift().cityId,
rideDate: params.rideDate,
backRideDate: params.backRideDate,
oneWay: ""
}, cb)
};
app.find = function (query) {
query = query.replace("ae", "\u00e4").replace("ue", "\u00fc").replace("oe", "\u00f6").replace("ss", "\u00df");
return stations.all().filter(function (station) {
return station.name.toLowerCase().indexOf(query.toLowerCase()) > -1;
});
};