Skip to content

Commit

Permalink
Merge pull request #2 from RichardDorian/master
Browse files Browse the repository at this point in the history
- Creation to fetch report
- Creation for new Discussion
- Creation to see a discussion
- Creation to see discussions
- Set a homework as done
- Answer to a poll
- Mark an info as read
  • Loading branch information
Merlode11 authored Mar 26, 2023
2 parents c362bbe + 869b241 commit 6ef0bb0
Show file tree
Hide file tree
Showing 21 changed files with 3,230 additions and 4,812 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@
/node_modules
/src/cas/debug.js
/result.json
/bin/test-perso.js
17 changes: 10 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,18 @@ Disponible en tant que :

- Infos Pronote, établissement et utilisateur
- Emploi du temps
- Devoirs
- Devoirs (possibilité de valider le travail)
- Notes
- Bulletins
- Compétences/évaluations
- Absences/punitions/retenues
- Informations
- Informations/sondages (et possibilité de répondre)
- Menu de la cantine
- Fichiers
- Discussions (et création de discussions)
- Utilisateurs recevant des messages

À chaque fois, il est possible de choisir quelle période voire quelle intervalle de jours récupérer précisément.
À chaque fois, il est possible de choisir quelle période, voire quel intervalle de jours récupérer précisément.

## Comptes région supportés

Expand Down Expand Up @@ -163,19 +166,19 @@ Le serveur renverra alors une réponse de cette forme :
Retenez le Token, et vous pourrez appeler `POST /auth/logout` et `POST /graphql` **avec en Header `Token: LETOKEN`**,
pour cette dernière le contenu doit être un JSON avec un field `query` contenant votre requête GraphQL.

Exemple, pour récupérer les salles des cours du Mercredi 2 Septembre :
Exemple, pour récupérer les salles des cours du mercredi 2 septembre :
```graphql
{
timetable(from: "2020-09-02") {
room
}
}
```
Le schéma parent des requêtes et mutations se trouve [à cet endroit](https://github.com/Litarvan/pronote-api/blob/master/src/server/schemas/parent.graphql)
Le schéma parent des requêtes et mutations se trouve [à cet endroit](https://github.com/Merlode11/pronote-api/blob/master/src/server/schemas/parent.graphql)

Le schéma élèves des requêtes et mutations se trouve [à cet endroit](https://github.com/Litarvan/pronote-api/blob/master/src/server/schemas/student.graphql)
Le schéma élèves des requêtes et mutations se trouve [à cet endroit](https://github.com/Merlode11/pronote-api/blob/master/src/server/schemas/student.graphql)

Le schéma commun des requêtes et mutations se trouve [à cet endroit](https://github.com/Litarvan/pronote-api/blob/master/src/server/schemas/common.graphql)
Le schéma commun des requêtes et mutations se trouve [à cet endroit](https://github.com/Merlode11/pronote-api/blob/master/src/server/schemas/common.graphql)

### Au secours je n'arrive pas à m'y connecter

Expand Down
17 changes: 13 additions & 4 deletions bin/fetch.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,23 +37,32 @@ async function student()

const { from, to } = getFetchDate(session);

const timetable = await session.timetable(from, to);
const homeworks = await session.homeworks(from, to);

const marks = await session.marks();
const evaluations = await session.evaluations();
const absences = await session.absences();
const infos = await session.infos();
const contents = await session.contents(from, to);
const homeworks = await session.homeworks(from, to);

const menu = await session.menu(from, to);
const files = await session.files();

const report = await session.reports();

const recipients = await session.recipients();
const discussions = await session.discussions();
const seeDiscussion = discussions.length ? await session.seeDiscussion(discussions[0]) : null;


return {
name: session.user.name,
studentClass: session.user.studentClass.name,
avatar: session.user.avatar,

timetable, marks, evaluations, absences,
infos, contents, homeworks, menu, files
marks, evaluations, absences,
infos, contents, homeworks, menu, files,
report, recipients, discussions, seeDiscussion
};
}

Expand Down
2 changes: 1 addition & 1 deletion bin/test.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ function test(type)
fork(join(__dirname, 'fetch.js'), [DEMO_URL, DEMO_USERNAME, DEMO_PASSWORD, 'none', type], { stdio: 'inherit' });
}

['student', 'parent'].forEach(test);
['student'/* , 'parent' */].forEach(test);
268 changes: 218 additions & 50 deletions index.d.ts

Large diffs are not rendered by default.

15 changes: 12 additions & 3 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,13 @@ const { getFilledDaysAndWeeks, getTimetable } = require('./src/fetch/pronote/tim
const getMarks = require('./src/fetch/pronote/marks');
const getEvaluations = require('./src/fetch/pronote/evaluations');
const getAbsences = require('./src/fetch/pronote/absences');
const getInfos = require('./src/fetch/pronote/infos');
const { getInfos, markInfoAsSee } = require('./src/fetch/pronote/infos');
const getContents = require('./src/fetch/pronote/contents');
const getHomeworks = require('./src/fetch/pronote/homeworks');
const { getHomeworks, markHomeworkAs } = require('./src/fetch/pronote/homeworks');
const getMenu = require('./src/fetch/pronote/menu');
const getFiles = require('./src/fetch/pronote/files')
const getFiles = require('./src/fetch/pronote/files');
const getReport = require('./src/fetch/pronote/report');
const { getRecipients, createDiscussion, getDiscussion, getDiscussions } = require('./src/fetch/pronote/discussions');

const navigate = require('./src/fetch/pronote/navigate');
const keepAlive = require('./src/fetch/pronote/keepAlive');
Expand Down Expand Up @@ -57,8 +59,15 @@ module.exports = {
fetchInfos: getInfos,
fetchContents: getContents,
fetchHomeworks: getHomeworks,
markHomeworkAs,
markInfoAsSee,
fetchMenu: getMenu,
fetchFiles: getFiles,
fetchReport: getReport,
fetchRecipients: getRecipients,
createDiscussion,
fetchDiscussion: getDiscussion,
fetchDiscussions: getDiscussions,

navigate,
keepAlive,
Expand Down
Loading

0 comments on commit 6ef0bb0

Please sign in to comment.