diff --git a/README.md b/README.md index afff3ca..2c80532 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,8 @@ const ogm = require('opengov-meetings') const opts = { host: 'http://opengov.cloudapp.net', path: '/Meetings/tfk', - boardId: '200151' + boardId: '200151', + year: 2015 } function cb (err, data) { diff --git a/lib/parse-meetings.js b/lib/parse-meetings.js index 4b6685b..758c0b1 100644 --- a/lib/parse-meetings.js +++ b/lib/parse-meetings.js @@ -2,6 +2,10 @@ const cheerio = require('cheerio') +function fixMonth (elem) { + return elem > 11 ? elem - 12 : elem +} + module.exports = page => { var $ = cheerio.load(page) var data = {} @@ -16,15 +20,20 @@ module.exports = page => { Object.keys(dates).forEach(function (elem) { if (typeof parseInt(elem, 10) === 'number') { + const month = fixMonth(elem) cell = dates[elem] if (cell.hasOwnProperty('type') && cell.children.length > 0) { item = {} if (cell.attribs.title) { - item.date = cell.children[0].data + '. ' + headers[elem].attribs.title + item.date = cell.children[0].data + '. ' + headers[month].attribs.title + item.day = cell.children[0].data + item.month = parseInt(month, 10) + 1 item.status = cell.attribs.title item.id = '' } else { - item.date = cell.children[0].children[0].data + '. ' + headers[elem].attribs.title + item.date = cell.children[0].children[0].data + '. ' + headers[month].attribs.title + item.day = cell.children[0].children[0].data + item.month = parseInt(month, 10) + 1 item.status = cell.children[0].attribs.title item.id = cell.children[0].attribs.href.split('/').pop() } diff --git a/package.json b/package.json index d3f8dc7..a0b37f3 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "opengov-meetings", "description": "Connect to 360 OpenGov Meetings", - "version": "3.0.0", + "version": "3.1.0", "license": "MIT", "author": { "name": "Geir GĂ„sodden", diff --git a/test/data/get-meetings-data-full.json b/test/data/get-meetings-data-full.json index 28954e7..9b31912 100644 --- a/test/data/get-meetings-data-full.json +++ b/test/data/get-meetings-data-full.json @@ -3,18 +3,24 @@ "meetings": [ { "date": "19. mars", + "day": "19", + "month": 3, "status": "Offentlig", "id": "212860", "year": "2015" }, { "date": "8. juni", + "day": "8", + "month": 6, "status": "Offentlig", "id": "212864", "year": "2015" }, { "date": "21. september", + "day": "21", + "month": 9, "status": "Avlyst", "id": "", "year": "2015" diff --git a/test/data/get-meetings-data.json b/test/data/get-meetings-data.json index e436503..b4fd0f1 100644 --- a/test/data/get-meetings-data.json +++ b/test/data/get-meetings-data.json @@ -3,16 +3,22 @@ "meetings": [ { "date": "19. mars", + "day": "19", + "month": 3, "status": "Offentlig", "id": "212860" }, { "date": "8. juni", + "day": "8", + "month": 6, "status": "Offentlig", "id": "212864" }, { "date": "21. september", + "day": "21", + "month": 9, "status": "Avlyst", "id": "" }