summaryrefslogtreecommitdiff
path: root/alarm/node_modules/pronote-api/src/fetch/pronote/infos.js
blob: 6e05ce170e25318dc6892b02c1809612e249123a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
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;