diff options
author | Noah Loomans <noahloomans@gmail.com> | 2017-09-05 20:28:32 +0200 |
---|---|---|
committer | Noah Loomans <noahloomans@gmail.com> | 2017-09-05 20:28:32 +0200 |
commit | 600128bda0390f2051ad20ee42930f036c79323c (patch) | |
tree | d8af17fd1f30dc4b11f44763c3addba104636f40 /lib/getUserIndex.js | |
parent | e3947f0d11864f40a2c0a202af99e0b14ff14dcf (diff) |
Clear cache automaticly
Diffstat (limited to 'lib/getUserIndex.js')
-rw-r--r-- | lib/getUserIndex.js | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/lib/getUserIndex.js b/lib/getUserIndex.js deleted file mode 100644 index 393eab0..0000000 --- a/lib/getUserIndex.js +++ /dev/null @@ -1,72 +0,0 @@ -'use strict' - -const Promise = require('bluebird') -const cheerio = require('cheerio') -const _ = require('lodash') -const request = Promise.promisify(require('request')) - -exports = {} -module.exports = exports - -function getUsers (page) { - const script = page('script').eq(1).text() - - const regexs = [/var classes = \[(.+)\];/, /var teachers = \[(.+)\];/, /var rooms = \[(.+)\];/, /var students = \[(.+)\];/] - const items = regexs.map(function (regex) { - return script.match(regex)[1].split(',').map(function (item) { - return item.replace(/"/g, '') - }) - }) - - return [] - .concat(items[0].map(function (item, index) { - return { - type: 'c', - value: item, - index: index - } - })) - .concat(items[1].map(function (item, index) { - return { - type: 't', - value: item, - index: index - } - })) - .concat(items[2].map(function (item, index) { - return { - type: 'r', - value: item, - index: index - } - })) - .concat(items[3].map(function (item, index) { - return { - type: 's', - value: item, - index: index - } - })) -} - -function getValidWeekNumbers(page) { - const weekSelector = page('select[name="week"]'); - const weekNumbers = _.map(weekSelector.children(), option => parseInt(option.attribs.value)) - - return weekNumbers; -} - -function requestData() { - return request(`http://www.meetingpointmco.nl/Roosters-AL/doc/dagroosters/frames/navbar.htm`).then((response) => { - const page = cheerio.load(response.body) - const users = getUsers(page) - const validWeekNumbers = getValidWeekNumbers(page) - - return { users, validWeekNumbers } - }) -} - -requestData().then(({ users, validWeekNumbers }) => { - exports.users = users - exports.validWeekNumbers = validWeekNumbers -}) |