LeEnno / htwk2ical

A Better Schedule for HTWK Students
22 stars 0 forks source link

Courses don't get filtered properly (when "Studiengänge" have intersecting courses?) #1

Open virtuaCode opened 5 years ago

virtuaCode commented 5 years ago

Steps to reproduce the bug

  1. Choose "18MI-M/VZ – Medien-Informatik (Master)"

  2. Select 18MI-M/VZ courses like this:

[X] 1020 Prinzipien von Programmiersprachen   IN-M & MI-M 1. FS  (pf)
[ ] 8064 Mikrocontroller Anwendungen  IN-M 1.& 3. FS & MI-M 1. FS (wpf)
[ ] 8081 Crossmedia-Produktion MIM 1.& 3. & 5. FS & IN-M 1. & 3. FS (wpf)
[ ] 8110 Innovative Rechnerarchitekturen  IN-M & MI-M 1. & 3. FS (wpf)
[ ] 8160 Kombinatorik AM-B 5.FS & 8335 Rechnen in endlichen Strukturen  IN-M 1. FS & MI-M 1. FS  (wpf)
[ ] 8400 Fortgeschr. Themen d. Inf.: Computermusik IN-M 1. & 3. FS, MI-M 1. & 3. & 5. FS (wpf)
[ ] 8400 Fortgeschr. Themen d. Inf.: Web- u. Enterprise-Dokumenten-Management IN-M 1. & 3. FS, MI-M 1. & 3. & 5. FS (wpf)
[ ] Algorithm Engineering  1040 IN-M (pf) & 8143 MI-M 1. & 3. FS FS  (wpf)
[ ] Einführungsveranstaltung
[ ] Feiertage und lehrveranstaltungsfreie Tage
[ ] Immatrikulation
[ ] Netzwerk- und Systemmanagement 1045 MI-M 1. FS (pf) & 8045 IN-M 1. FS (pf) & IN-M 3. FS (wpf)
[ ] Operations Research  8070 AM-B 5. FS & 8333 MI-M & IN-M 1.& 3. FS (wpf)
[ ] Studienstart
  1. Click "Module aus anderem Studiengang hinzufügen"

  2. Choose "18IN-M/VZ – Informatik (Master)"

  3. Select 18IN-M/VZ courses like this:

[ ] 1020 Prinzipien von Programmiersprachen   IN-M & MI-M 1. FS  (pf)
[ ] 2040 Projektmanagementpraktikum IN-M 1. FS (pf) &  4080 Softwareprojekt IN-B und MI-B 3.FS (pf)
[ ] 8042 Programmverifikation IN-M 1. & 3. FS (wpf)
[ ] 8064 Mikrocontroller Anwendungen  IN-M 1.& 3. FS & MI-M 1. FS (wpf)
[ ] 8065 Message-Passing- Programming  IN-M 1. FS & 3. FS (wpf)
[ ] 8081 Crossmedia-Produktion MIM 1.& 3. & 5. FS & IN-M 1. & 3. FS (wpf)
[ ] 8110 Innovative Rechnerarchitekturen  IN-M & MI-M 1. & 3. FS (wpf)
[ ] 8160 Kombinatorik AM-B 5.FS & 8335 Rechnen in endlichen Strukturen  IN-M 1. FS & MI-M 1. FS  (wpf)
[ ] 8400 Fortgeschr. Themen d. Inf.: Computermusik IN-M 1. & 3. FS, MI-M 1. & 3. & 5. FS (wpf)
[ ] 8400 Fortgeschr. Themen d. Inf.: Web- u. Enterprise-Dokumenten-Management IN-M 1. & 3. FS, MI-M 1. & 3. & 5. FS (wpf)
[ ] Algorithm Engineering  1040 IN-M (pf) & 8143 MI-M 1. & 3. FS FS  (wpf)
[ ] Einführungsveranstaltung
[ ] Feiertage und lehrveranstaltungsfreie Tage
[ ] Immatrikulation
[ ] Kryptologie  8170 IN-M 1. u. 3. FS (wpf) & 3070 MI-M 3. FS (pf)
[ ] Netzwerk- und Systemmanagement 1045 MI-M 1. FS (pf) & 8045 IN-M 1. FS (pf) & IN-M 3. FS (wpf)
[ ] Operations Research  8070 AM-B 5. FS & 8333 MI-M & IN-M 1.& 3. FS (wpf)
[ ] Studienstart
  1. Create ical

Expected result:

screenshot_2018-10-15 google calendar - week of october 14 2018 1

Actual result:

screenshot_2018-10-15 google calendar - week of october 14 2018

LeEnno commented 5 years ago

Congrats on opening the first issue 🎉 tl;dr: use two separate calendars to circumvent the issue.

The bug you're reporting is a known issue since the very beginning. Unfortunately the fix is not an easy one. Actually a major part of the underlying data structure needs to change in order to solve it.

It affects only a small portion of users so it never justified the amount of work needed to fix it. One lucky day I will find enough time to revamp the whole thing and also tackle this specific problem.

Until then I recommend creating 2 separate calendars, one for each course. This way the duplicated events won't appear anymore.