Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scripts for å sende ut Nettskjema-kursevaluering til hele IFI

  • Henter en liste med alle IFI-emner fra Vortex/nettsidene til UiO
    • Sorterer de mellom bachelor/master, så master-emnene kan få engelsk skjema
  • Genererer et "script" man paster i konsollen inne på Nettskjema. Det scriptet vil for hvert emne:
    • Opprette skjema fra mal som ligger i scriptet
    • Sende ut invitasjoner til alle studentene, til en spesifisert tid

Brukerguide

  1. Gå på IFI, vær i FUI, og ha tilgang til emneevalueringsfunksjonaliteten til Nettskjema.
  2. Åpne main.py i din editor of choice
    • Tilpass BLAKCLISTED_COURSES utifra hva som måtte ligge på Vortex, som du ikke ønsker å sende ut KE for
    • Sett hardkodet semester øverst i filen. Du skriver det semesteret du vil sende KE for, ikke det semesteret som nødvendigvis er nå.
  3. Kjør $ python main.py. Dette vil hente alle emnene, og skrive de til courses.js, sortert. Du vil måtte innstallere BeautifulSoup hvis du ikke har det fra før, $ pip install beautifulsoup4. Dette er en pakke som brukes for å ekstrahere info fra nettsidene til UiO.
    • En liste med { code: 'IN5700', name: 'Tåke og Sky Databehandling', level: 'master', semester: 'h25' },, for alle emner
    • course_codes.py er en ressursfil, som gjør det faktiske arbeidet. Den kjøres aldri direkte. Der kan man også endre IFI-spesifikke ting for å bruke dette opplegget et annet sted på UiO.
  4. Tilpass console.js utifra din kontekst. NB: Alle endringer må gjøres både for console.js og console-ENGELSK.js (fortrinnsvis med forskjellige emner).
    • Lim inn kursene fra forrige steg nederst i filen.
    • Sett verdi på INVITE_TIMESTAMP-konstanten. Invitasjonene vil scheduleres til dette tidspunktet.
    • Endre commonHeaders til å være dine faktiske Nettskjema-headers
      • Litt usikker på hvor nødvendig dette er, kanskje det ikke trengs 🤷
    • Legg inn riktig semester (1) i payload og (2) der tittelen på det nye skjemaet blir satt.
  5. Gå til nettskjema.no, og paste console.js i konsollen. Dette vil sende ut invitasjoner til samtlige emner.
    • Samme for den engelske versjonen, hvis relevant.
  6. Profit

Hvilket skjema som blir brukt // Redigere skjemaet

Alle Nettskjema™-skjemaer, er JSON. Du vil få tak i relevant JSON, og legge den øverst i console.js. Den greieste måten å få tak i JSON, er å bygge et skjema på Nettskjema, og kopiere det, når det er ferdigbygget. Når du kopierer det, vil det gå ut en request, som har den JSONen du er ute etter som payload. Finn requesten i nettverksfanen, og kopier payloaden.

Denne JSONen inneholder både info om skjemaets innhold og innstillinger, og dermed ogå hvilke brukere/API-klienter som har tilgang til det. Du ønsker naturligvis at riktige folk skal ha tilgang til skjemaet ditt. Dette sikrer dét. NB: Hvis du kjører scriptet sånn det ligger nå uten å endre på skjema-definisjonen, vil jeg få tilgang til skjemaet ditt 😈

Husk å se over både (1) skjema-innhold, og (2) skjema-innstillinger. Viktig.

Disclaimer

Dette er basically hackathon-kode laget for å slukke branner. Det gjorde jobben H25 OG V26(!), men det er ikke vakkert :)

All bruk på eget ansvar.


oliverrj@fui, januar 2026.

About

Scripts for automatisk utsending av Nettskjema-emneevaluering til alle studenter på alle emner på IFI, UiO.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages