Skip to content
Snippets Groups Projects
  1. Feb 10, 2024
  2. Feb 07, 2024
  3. Jan 25, 2024
    • Konrad Mohrfeldt's avatar
      refactor/fix: fetch rrules from steering and derive description from rulesets · e10e74db
      Konrad Mohrfeldt authored
      Up until now the dashboard used a hardcoded list of rrules that matched
      a long-gone fixture set of rrules in steering. Additionally, rrules were
      translated in the dashboard using the the ID of the rrules in steering.
      This means that any change to the fixture set, removing an rrule or not
      importing the fixture set at all would mix up the translations and
      therefore the actual schedules that people would create.
      
      A few months ago the rrules were reworked and an API endpoint was
      introduced that exposes the rrules defined in steering. No appropriate
      change was made in the dashboard and so the rrule definitions got
      out-of-sync.
      
      This change implements a rrule store that fetches data from the API.
      Additionally we’ve also implemented a custom rrule to natural language
      mechanism [1]. This is because the scope of the rulesets we use in the
      AURA radio context is well-known and not to complex and because rrule.js
      built-in `toText` function, which might have been an option, is limited:
      
      * bysetpos seems to be entirely unsupported
      * internationalization will produce gramatically questionable
        output for languages like German, because the translation
        interface is somewhat lacking.
      
      [1] #226 (comment 13669)
      e10e74db
  4. Oct 21, 2023
  5. Oct 13, 2023
  6. Jun 13, 2023
  7. Jun 12, 2023
  8. Jun 08, 2023
  9. Nov 29, 2022
  10. Nov 28, 2022
  11. Nov 24, 2022
    • Konrad Mohrfeldt's avatar
      feat: migrate to fullcalender v5 · 14a9ff20
      Konrad Mohrfeldt authored
      vue-full-calendar is not the official Vue package of fullcalendar, is
      only compatible with Vue 2.x, uses the outdated fullcalendar v3 library
      and contains a bunch of huge dependencies like jQuery and moment.
      
      The changes in this commit migrate the dashboard to fullcalendar v5 and
      the official vue component. Apart from that there have been a few
      refactors and fixes. These are:
      
      * remove irrelevant stub event callbacks
      * make view updates reactive instead of imperative
        (see removal of renderView method and introduction of renderWatcher)
      * rename methods to better reflect their purpose
          resolve → enterConflictMode
          resolveEvent → resolveConflict
      * emit events in modals instead of call to methods on this.$parent
      * let → const where applicable to prevent accidental reassignments
      * switch to for-of loops (from for-in) for better readability
      * fix some typos
      
      One other major change is that timeslot and collision data is no longer
      mixed with event data for fullcalendar and is assigned to the
      extendedProps property instead. As mentioned in fullcalendars
      documentation on event parsing [1], any data that fullcalendar does not
      handle on its own is moved into the extendedProps object with the
      explicit recommendation to put them there right from the start. We
      follow that recommendation.
      
      closes #94
      
      [1] https://fullcalendar.io/docs/event-parsing
      14a9ff20
  12. Nov 10, 2022
  13. Nov 09, 2022
    • Konrad Mohrfeldt's avatar
      feat: migrate to vue3/compat and Vite build system · 202388aa
      Konrad Mohrfeldt authored
      Notable changes:
       * Vue 2.6 to Vue 3 + compat migration.
       * Build system migration from vue-cli/webpack to Vite.
       * Application dependencies like bootstrap-vue, vue-router, vuex,
         or vue-toast-nofitication have been updated, if doing so was
         necessary or advisable for the Vue 3 migration.
       * Static file includes for the oidc-client in oidc_callback.html
         and oidc_callback_silentRenew.html have been removed in favor
         of automatic processing in the build system so that all assets
         are versioned and invalid cache hits are prevented.
      
      Fixes #53 and #110.
      202388aa
  14. Apr 24, 2022
    • Konrad Mohrfeldt's avatar
      fix: properly handle steering scheduling API errors · e01a3692
      Konrad Mohrfeldt authored
      The steering API returns HTTP 400 errors for general payload and 409
      errors for scheduling conflicts that we didn’t handle yet.
      
      fixes #93
      e01a3692
    • Konrad Mohrfeldt's avatar
      refactor: update old schedule attribute names · cb84bfe6
      Konrad Mohrfeldt authored
      The steering API has some deprecated attribute names that we should no
      longer use. These are:
      
        dstart → first_date
        until → last_date
        tstart → start_time
        tend → end_time
        byweekday → by_weekday
      
      These changes in naming have also been applied to variable names,
      attribute names and translatations in the dashboard code in order to
      avoid confusion.
      cb84bfe6
  15. Apr 22, 2022
  16. Nov 25, 2021
  17. Nov 18, 2021
  18. Jul 29, 2021
  19. Jul 23, 2021
  20. May 20, 2021
  21. Dec 15, 2020
  22. Dec 14, 2020
  23. Nov 24, 2020
  24. Oct 12, 2020
  25. Sep 14, 2020
  26. Sep 08, 2020
  27. May 29, 2020
  28. May 07, 2020
  29. Nov 26, 2019
  30. Oct 25, 2019
Loading