GithubHelp home page GithubHelp logo

dannebicque / intranetv3 Goto Github PK

View Code? Open in Web Editor NEW
30.0 30.0 12.0 95.08 MB

Version 3 de l'intranet

License: Mozilla Public License 2.0

Shell 0.03% PHP 53.48% JavaScript 4.23% CSS 0.26% SCSS 6.75% Twig 35.13% HTML 0.09% Makefile 0.03% Dockerfile 0.01%
des-absences edition-des-conventions suivi-des-notes suivi-des-tudiants

intranetv3's Introduction

Hi there 👋

dannebicque davidannebicque

Teacher at the university of Reims Champagne-Ardenne (web programming, ergonomics, accessibility), researcher in automation and decision support (e-health, collaborative work), I am above all passionately developer since the age of 10. I practice basic, Pascal, Visual Basic, .Net (C#), PHP, JS, HTML/CSS. Fan of the Symfony framework, and author of many tools within this framework for my university (intranet for the management of student education, serious games, ...), and program around automatism and decision support.

Languages and Tools:

bootstrap codeigniter csharp css3 git html5 javascript mysql nginx nuxtjs php sass symfony vuejs vuetify webpack

intranetv3's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

intranetv3's Issues

[Profil] Vulnérabilité dans la gestion du profil étudiant

Description

J'ai découvert une vulnérabilité dans l'application qui permet d'accéder à certaines ressources protégées, telles que les notes et les absences des étudiants, sans être authentifié avec le compte de l'utilisateur concerné. Il s'agit des ressources incluses dans intranetV3/src/Controller/ProfilEtudiantController.php notamment /notes, /apc_notes et /absences.

Étapes pour reproduire

  1. Se connecter à son compte étudiant, par exemple en tant que John Doe (john.doe)
  2. Accéder à l'URL suivante : /etudiant/profil/jane.smith/notes (ou autre endpoint)
  3. Vous devriez être en mesure d'accéder à la ressource de cet autre étudiant sans avoir à vous connecter avec son compte.

Comportement attendu

  • L'application doit refuser l'accès à une ressource d'un autre étudiant.

En outre, je me demande si l'accès à l'endpoint /actions pour les étudiants est intentionnel. Il semble qu'il soit destiné au personnel.

[Stage] refonte partie étudiant

Refaire le formulaire saisie des données par l'étudiant :

  • Type wizard avec :

  • Vérification des informations étudiantes (adresse, sécu...)

  • Données entreprises

  • Données tuteur

  • Donnes stages

  • Récap complet

  • Validation des données en ligne/live

  • Calcul du nombre de jour/semaine en live. Warning si différence entre calculé et saisie ? Pour gérer les cas particulier laisser saisie possible

  • Gratification obligatoire si supérieur à 8 semaine sinon saisie libre possible.

  • Validation/complétion adresses

  • Possibilité de sauvegarder et quitter à chaque étape, de sauvegarder sans valider définitivement et de soumettre le formulaire.

[APC] Import/Export Année

Ajouter l'année comme attribut d'un niveau pour la positionner au bon endroit.
Reprendre principe de RédigeTonBut

Config

Système d'écriture/lecture du fichier de configuration pour gérer le paramétrage apogée, celcat... + Détection si la clé n'est pas présente pour désactiver. Système de plugin?
Encodage des données sur le fichier yaml

[Exports] Revoir la manière de gérer les exports XLSX/PDF

L'export Excel ne fonctionne pas sur un nombre de niveau infini avec le serializer. Actuellement juste le premier niveau, et un enfant est accepté.

Remplacer l'export PDF (généré à partir de l'excel), par un export PDF généré avec DomPdf.

.

.

[imports] details

Indiquer une liste plus précise des éléments importés.
Liste des étudiants csv ou apogée
Imports OMEGA

[Application Stage]

Ajouter le lien pour récupérer une fiche par stagiaire (modèle administration)
Export Excel en Admin non fonctionnel

[Notes] Indiquer la présence de -0,01 dans les évaluations.

Pour chaque évaluation indiquer la présence ou non de -0.01. Idem lors du calcul de la sous-commission avec affiche des notes, étudiants et évaluations concernées.

Indiquer un taux de remplissage d'une évaluation (nombre de note !== -0.01 sur nb étudiant).

Ajouter sur une page la synthèse ?

[Justificatif] Tris

Trier selon la date de création et ajouter DataTableType
Idem rattrapage, tris faux.

Doctrine\DBAL\Exception\DriverException in POST /fr/messagerie/envoyer

Error in Intranet V3

Doctrine\DBAL\Exception\DriverException in POST /fr/messagerie/envoyer
An exception occurred while executing 'INSERT INTO message (created, updated, sujet, message, important, etat, type_destinataires, type, expediteur_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)' with params ["2020-10-19 17:27:14.761680", "2020-10-19 17:27:14.761675", "Bonjour, je vous ai autoris\u00e9 \u00e0 saisir votre convention dans l'intranet sans avoir votre fiche que vous devez me remettre au plus vite. Cordialement,", "undefined", 0, "E", "", "e", 420]:

SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 'sujet' at row 1

View on Bugsnag

Stacktrace

src/Classes/MyMessagerie.php:284 - App\Classes\MyMessagerie::saveMessageDatabase
src/Classes/MyMessagerie.php:150 - App\Classes\MyMessagerie::sendToEtudiants
src/Classes/MyMessagerie.php:255 - App\Classes\MyMessagerie::sendToDestinataires
src/Controller/MessagerieController.php:207 - App\Controller\MessagerieController::sendMessage

View full stacktrace

Created by David Annebicque via Bugsnag

[SsComm] Matières suspendues

Afficher les matières suspendues dans le tableau de sous-commission (en couleur, ou un warning). Afficher aussi sur le PN ? ou dans la synthèse des notes.

Points d'amélioration INFO

  • dans les listes d'étudiants (exports paramétrables), est-il possible d'ajouter une colonne contenant le login LDAP des étudiants
    messagerie :
  • il manque le champ pour le destinataire lorsqu'on souhaite envoyer un mail aux enseignants
  • plus compliqué, mais cela serait très pratique : ajouter la possibilité d'envoyer un message à tous les enseignants d'une matière donnée. Nous avons actuellement des listes de diffusion pour cet usage, mais leur maintenance est assez complexe, et elles ne fonctionnent que pour le département Info (basé sur le prévisionnel)

Swipe EDT

Ajouter la possibilité de faire un "Swipe" sur l'EDT en mode mobile (actuellement, juste un seul jour est accessible)

Symfony\Component\HttpKernel\Exception\ControllerDoesNotReturnResponseException in GET /fr/administration/semestre/export/definitif/manon.beal/8903

Error in Intranet V3

Symfony\Component\HttpKernel\Exception\ControllerDoesNotReturnResponseException in GET /fr/administration/semestre/export/definitif/manon.beal/8903
The controller must return a "Symfony\Component\HttpFoundation\Response" object but it returned null. Did you forget to add a return statement somewhere in your controller?

View on Bugsnag

Stacktrace

src/Controller/administration/SemestreExportController.php:80 - null

View full stacktrace

Created by David Annebicque via Bugsnag

[Trombi] Photo

La mise à jour des photos ne se fait pas. Les photos anciennes ne sont pas écrasées et remplacée lors de l'import d'un nouveau zip (? a confirmer). Et en tout cas le cache de Liip reste présent. A supprimer ?

[Ss Comm] Affichage préparation

(Il me semble d'ailleurs qu'il y a un bug d'affichage pour nous dans "Préparer la sous-commission" une fois que l'on publie aux étudiants, les données par colonnes se décalent.) J'actualise le PV du Grand Jury dans la foulée.

Une fois validé et publié.

Samedi/Dimanche EDT Responsive

L'affichage du bon jour sur l'EDT en mode responsive n'affiche rien si on est un samedi ou un dimanche. Devrait dans ce cas afficher le lundi suivant.

Modification des templates et calcul du jour suivant?

[Login] Accès vacataires non URCA

Remettre la possibilité d'ajouter un vacataire sans accès URCA. Avec bouton pour initialiser le mot de passe. Du coup ajouter le bouton "mot de passe" perdu.

TypeError in GET /fr/change-departement/32000000-0000-0000-0000-000000000000

Error in Intranet V3

TypeError in GET /fr/change-departement/32000000-0000-0000-0000-000000000000
Argument 1 passed to Symfony\Bundle\FrameworkBundle\Controller\AbstractController::redirect() must be of the type string, null given, called in /var/www/html/intranetV3/src/Controller/SecurityController.php on line 208

View on Bugsnag

Stacktrace

src/Controller/SecurityController.php:208 - App\Controller\SecurityController::changeDepartement

View full stacktrace

Created by David Annebicque via Bugsnag

[Cohorte] Suivi

Remettre en place le suivi de cohorte (modèle GEA?).
Importer les anciennes promos depuis intranetV2

[EDT] PDF

Les PDF de l'EDT sont en lien et pas en download forcé. Les navigateurs peuvent donc proposer le cache et pas le bon doc.
Modifier la gestion. Proposer un export Zip.
Déporter la génération dans messenger.

Symfony\Component\HttpKernel\Exception\ControllerDoesNotReturnResponseException in POST /fr/application/personnel/salle-examen/application/salle-examen/genere/document

Error in Intranet V3

Symfony\Component\HttpKernel\Exception\ControllerDoesNotReturnResponseException in POST /fr/application/personnel/salle-examen/application/salle-examen/genere/document
The controller must return a "Symfony\Component\HttpFoundation\Response" object but it returned null. Did you forget to add a return statement somewhere in your controller?

View on Bugsnag

Stacktrace

src/Controller/appPersonnel/SalleExamenController.php:81 - null

View full stacktrace

Created by David Annebicque via Bugsnag

[Liens] : liens utiles

Repositionner les liens utiles (ou ajouter) dans le menu haut (moodle, webmail, portfolio?)

Points d'amélioration GEA

  • Réduire taille de l'edt
  • Accès justificatifs déposés dans admin. -> dans afficher les absences pouvoir avoir un indicateur si un justificatif existe (validé ou pas)
  • Trombi -> filtres -> affiche tous les groupes (segmentation FC/FI) -> arrivée sur TD et pas grpe de langue => Permettre la configuration depuis le trombi
  • Edt -> saisie des absences -> doit re-sélectionner le groupe concerné + heure de fin du cours non auto
  • Filtrer les matières par rapport au semestre actif saisie des absences
  • Saisie des abs pour les alternants -> get la durée du module dans celcat ou edt pour déclaration studea
  • Feuilles de présence -> nom du fichier dl ne correspond pas au groupe sélectionné
  • Justification d'abs en avance par le dir. d'études -> saisie de l'abs par enseignant justifiée automatiquement
  • Est-ce que les infos saisies par les étudiants sur leur alternance sont gardées d'une année à l'autre ?
  • Suivi des conv. de stage -> après envoi de convention pour signature -> date d'envoi et date de retour attendue (saisie par l'assistante) -> btn pour relance signature (enregistrement de la date de relance on clic). Sur le tableau de synthèse (sinon plus possible) => Accéder à la timeline plus rapidement sans entrer dans la fiche du stage (modal).
  • Justification des absences par les étudiants -> formaté par choix d'un créneau de cours existant (peut-être depuis l'edt ?)
  • Afficher le libellé matière dans liste des absences (sur profil) en tooltip
  • page des stages liste déroulante avec les périodes plutôt que bouton
  • page "liste des fiches de suivi de stage" pas de nom de l'étudiant qui s'affiche
  • Bouton pour récupérer tous les PDF de fiches de suivi
  • Motif de refus de justification d'absence
  • Retrait des infos perso saisies pendant les demandes d'entrée sur site pdt la covid
  • Avenants -> Modification des dates de stage dans la convention -> saisie d'un motif par l'assistant.e ? (prolongement de stage, modification de dates sans motif spécifique)
  • Erreurs codes ressources dans l'EDT (saisie par bloc hebdomadaire)
  • Pour les FC, Synthèse de semestre non visible dans le profil et alternance non visible
  • Mail signature de la convention pas éditable en GEA

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.