diff options
Diffstat (limited to 'alarm/node_modules/pronote-api/src/cas/atrium-sud.js')
-rw-r--r-- | alarm/node_modules/pronote-api/src/cas/atrium-sud.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/alarm/node_modules/pronote-api/src/cas/atrium-sud.js b/alarm/node_modules/pronote-api/src/cas/atrium-sud.js new file mode 100644 index 0000000..c508a3d --- /dev/null +++ b/alarm/node_modules/pronote-api/src/cas/atrium-sud.js @@ -0,0 +1,43 @@ +const jsdom = require('jsdom'); +const { getDOM, extractStart } = require('./api'); + +async function login(url, account, username, password) +{ + const jar = new jsdom.CookieJar(); + let dom = await getDOM({ + url: 'https://www.atrium-sud.fr/connexion/login?service=' + url, + jar + }); + + let lt = dom.window.document.getElementsByName('lt'); + let execution = dom.window.document.getElementsByName('execution'); + lt = lt[0].value; + execution = execution[0].value; + + dom = await getDOM({ + url: 'https://www.atrium-sud.fr/connexion/login?service=' + url, + jar, + method: 'POST', + data: { + username, + password, + lt, + execution, + _eventId: 'submit', + submit: '' + }, + asIs: true + }) + + dom = await getDOM({ + url, + jar, + method: 'GET', + asIs: true, + followRedirects: true + }); + + return extractStart(dom); +} + +module.exports = login; |