diff options
Diffstat (limited to 'alarm/node_modules/pronote-api/src/fetch/pronote/infos.js')
-rw-r--r-- | alarm/node_modules/pronote-api/src/fetch/pronote/infos.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/alarm/node_modules/pronote-api/src/fetch/pronote/infos.js b/alarm/node_modules/pronote-api/src/fetch/pronote/infos.js new file mode 100644 index 0000000..6e05ce1 --- /dev/null +++ b/alarm/node_modules/pronote-api/src/fetch/pronote/infos.js @@ -0,0 +1,33 @@ +const parse = require('../../data/types'); +const navigate = require('./navigate'); + +const PAGE_NAME = 'PageActualites'; +const TAB_ID = 8; +const ACCOUNTS = ['student', 'parent']; + +async function getInfos(session, user) +{ + const infos = await navigate(session, user, PAGE_NAME, TAB_ID, ACCOUNTS, { + estAuteur: false + }); + + if (!infos) { + return null; + } + + return { + categories: parse(infos.listeCategories, ({ estDefaut }) => ({ + isDefault: estDefaut + })), + infos: parse(infos.listeActualites, ({ dateDebut, elmauteur, listeQuestions }) => ({ + date: parse(dateDebut), + author: parse(elmauteur), + content: parse(listeQuestions, ({ texte, listePiecesJointes }) => ({ + text: parse(texte), + files: parse(listePiecesJointes) + })) + })) + }; +} + +module.exports = getInfos; |