Commit Graph

762 Commits

Author SHA1 Message Date
Livio Bieri 8109446602 fix: hide sample solution if learning mentors are present 2024-03-26 10:38:56 +01:00
Livio Bieri df441d57a2 fix: sample solution praxis assignment w/o mentor 2024-03-25 16:55:56 +01:00
Livio Bieri 5c73efdfb2 fix: incorrect link
2024-03-21 10:19:55 +01:00
Livio Bieri 6712635437 fix: visual fix
2024-03-20 17:58:10 +01:00
Livio Bieri dd121fe1ac feat: mentor can remove mentee 2024-03-20 14:42:07 +01:00
Livio Bieri 5f9b7a86fd feat: api for removal of participant as menotor 2024-03-20 09:14:54 +01:00
Livio Bieri e374ad98de chore: learning mentor course → course session 2024-03-19 16:24:18 +01:00
Livio Bieri e33bf185c1 fix: participant-less mentor edge case


2024-03-18 15:21:11 +01:00
Livio Bieri 72bc985bf1 fix: ergebnisse -> feedback 2024-03-15 14:59:11 +01:00
Livio Bieri f3cadedb05 fix: remove unused file 2024-03-15 14:39:01 +01:00
Livio Bieri eea1e95572 workaround for roll-up issue with static assets 2024-03-14 16:05:05 +01:00
Livio Bieri 9b67a46b56 feat: mentor & mentee list styling 2024-03-14 15:56:22 +01:00
Livio Bieri 9b5845d89b feat: participants 2024-03-14 12:19:54 +01:00
Livio Bieri 8fd2234011 chore: refactor 2024-03-14 12:19:43 +01:00
Livio Bieri 9e30efd59d chore: move AssignmentEvaluationPage.vue out of cockpit (shared) 2024-03-13 15:37:15 +01:00
Livio Bieri 050d0a6e72 fix: prepare router / routing 2024-03-13 10:36:55 +01:00
Livio Bieri 16e0aba504 feat: mentorCockpit -> learningMentees 2024-03-11 17:05:21 +01:00
Livio Bieri e88a9dae4d feat: move self-evaluation feedback out of cockpit 2024-03-11 16:50:45 +01:00
Livio Bieri 742801bf22 feat: cockpit type / navigation
TODO dashboard -> cockpit/mentor (temporary)
TODO dashboard -> cockpit/expert
2024-03-08 16:19:38 +01:00
Livio Bieri d9cb334404 chore: move profile out of cockpit (shared) 2024-03-08 10:48:09 +01:00
Livio Bieri 7743039938 Merge branch 'develop' into feat/vv-read-only-komp-navi 2024-03-06 20:28:14 +01:00
Livio Bieri 709931c888 Merged in feat/course-feature-toggles (pull request #295)
Introduce Course Configuration

Approved-by: Daniel Egger
2024-03-06 19:24:53 +00:00
Livio Bieri 42211db6ed fix: UX/styling improvements based on PR feedback 2024-03-06 20:20:06 +01:00
Livio Bieri 84f2761795 chore: workaround to make show all clickable in competence profile page 2024-03-06 13:36:52 +01:00
Livio Bieri 7de9766381 feat: competence navi in profile 2024-03-06 12:09:18 +01:00
Livio Bieri 7073beee49 fix: make SelfEvaluation.vue preview-friendly 2024-03-06 10:00:36 +01:00
Livio Bieri cfa3450704 feat: comp.navi. in cockpit profile page 2024-03-04 17:59:50 +01:00
Reto Aebersold fff16da479 Merge branch 'develop' into feature/circle-page-unify 2024-03-03 22:47:11 +01:00
Livio Bieri e3f8e4556f chore: remove feedback_user
removed in favor of just using the course-level configuration.
2024-02-29 13:57:00 +01:00
Livio Bieri e4329194ee chore: introduce course configuration "feature" flags in client 2024-02-28 14:14:23 +01:00
Livio Bieri b8c7d22400 fix: cypress 2024-02-22 16:30:52 +01:00
Livio Bieri 964c1f7276 feat: kompetenznavi overview 2024-02-22 12:58:59 +01:00
Livio Bieri de351bb3c1 feat: kompetenz navi tab 2024-02-20 15:24:02 +01:00
Reto Aebersold 4e3b4785f0 feat: circle cleanup 2024-02-20 10:56:06 +01:00
Reto Aebersold d95bfd9495 feat: circle status cleanup 2024-02-20 10:43:52 +01:00
Reto Aebersold cb9977bab3 feat: circle status cleanup 2024-02-20 10:43:45 +01:00
Christian Cueni 41ae32642e Revert "Circle Seite Inhaltstyp Einheit (pull request #290)" 2024-02-20 07:47:34 +00:00
Reto Aebersold 48d6f7393f feat: circle status cleanup 2024-02-19 13:43:14 +01:00
Reto Aebersold c180fd4406 feat: circle status cleanup 2024-02-19 13:35:55 +01:00
Christian Cueni cc96bb8a76 Merged develop into feat/588-vv-fremdeinschatzung 2024-02-14 06:26:24 +00:00
Livio Bieri 0e5e311829 chore: use page suffix + smaller changes (pr feedback) 2024-02-12 13:28:48 +01:00
Christian Cueni 0c170979c0 Merged develop into feature/VBV-641-vorschau-lernbegleitung 2024-02-09 08:00:27 +00:00
Reto Aebersold 8cff12fc10 feat: add course session permissions 2024-02-08 10:04:17 +01:00
Reto Aebersold cc61816c92 feat: manually close popovers 2024-02-06 16:01:57 +01:00
Reto Aebersold c103d29f31 feat: remove settings 2024-02-06 15:53:33 +01:00
Reto Aebersold 6263d905fd feat: split profile edit 2024-02-06 15:35:25 +01:00
Livio Bieri 162f8a50a9 fix: visual fixes 2024-02-06 14:54:12 +01:00
Reto Aebersold a40f066279 feat: avatar upload 2024-02-06 11:03:55 +01:00
Reto Aebersold 2d2b5a86c3 fix: user state name 2024-02-06 09:20:09 +01:00
Reto Aebersold 44868f4673 feat: user store cleanup 2024-02-06 09:15:34 +01:00
Reto Aebersold d9fefe1d62 feat: save profile 2024-02-05 18:12:51 +01:00
Livio Bieri b44db0d788 fix: smaller visual "bug" fixes 2024-02-05 15:41:31 +01:00
Reto Aebersold befbee23b4 feat: user store 2024-02-05 12:02:15 +01:00
Livio Bieri fcaf604fbb fix: shall not show confirmation banner if submitted 2024-02-01 18:27:36 +01:00
Livio Bieri f0748c1267 feat: self evaluation feedback front-end 2024-02-01 16:59:07 +01:00
Livio Bieri f228f9ee47 feat: mentor feedback 2024-01-30 22:59:29 +01:00
Livio Bieri 95a5d1b671 Merge branch 'develop' into feat/588-vv-fremdeinschatzung 2024-01-29 16:41:46 +01:00
Livio Bieri c5ff3e9fb6 feat: mentor cockpit summary pages wrap up 2024-01-26 15:53:26 +01:00
Reto Aebersold 28db4bc1f9 feat: edit view 2024-01-25 21:19:25 +01:00
Livio Bieri 864a00107e feat: mentor cockpit self evaluation feedback 2024-01-25 18:32:46 +01:00
Reto Aebersold 51540324b4 feat: edit view 2024-01-25 14:13:22 +01:00
Reto Aebersold 5d956cbfd7 feat: edit view 2024-01-25 14:11:55 +01:00
Livio Bieri 654ccb0d47 feat: feedback received screen 2024-01-25 13:39:13 +01:00
Reto Aebersold 19548b2b07 feat: move models for profile page 2024-01-24 21:00:26 +01:00
Livio Bieri 3f9742550f wip: self evaluation mentor 2024-01-19 13:20:44 +01:00
Livio Bieri ab494a1c67 wip: mentor dropdown 2024-01-18 15:05:29 +01:00
Reto Aebersold 6a985ce607 feat: cockpit user profile 2024-01-15 11:33:45 +01:00
Reto Aebersold 35250bb93b Merge branch 'develop' into feature/VBV-597-umsetzung-cockpit-lernbegleitung 2023-12-21 10:06:57 +01:00
Christian Cueni d58b884d65 Use correct emails for uk and vv 2023-12-20 09:52:18 +01:00
Reto Aebersold ce234a0538 chore: translation 2023-12-19 11:01:36 +01:00
Reto Aebersold 6769169817 feat: move detail page 2023-12-19 10:40:51 +01:00
Reto Aebersold 480c82e466 Merge branch 'develop' into feature/VBV-597-umsetzung-cockpit-lernbegleitung 2023-12-19 10:01:16 +01:00
Christian Cueni 44c2cc1d5c Update email and text 2023-12-18 15:44:00 +01:00
Christian Cueni 9eee55cbbf Style start pages 2023-12-18 15:44:00 +01:00
Livio Bieri 90bbe75dbf chore: remove FAQ link from onboarding (not ready yet) 2023-12-18 15:43:59 +01:00
Livio Bieri bf1353553b chore: add i18n to NoCourseSession.vue 2023-12-18 15:43:59 +01:00
Livio Bieri b414e4cf93 chore: shop vv-it, vv-de, vv-fr 2023-12-18 15:43:59 +01:00
Reto Aebersold 447ac05859 feat: local login URL 2023-12-18 15:43:59 +01:00
Reto Aebersold 62a7eb5f2e chore: translations 2023-12-18 15:43:59 +01:00
Reto Aebersold 1ac67f9ce2 chore: translations 2023-12-18 15:43:59 +01:00
Livio Bieri a282427f24 feat: sso login flow 2023-12-18 15:43:58 +01:00
Reto Aebersold bbf4208228 feat: address handling 2023-12-18 15:43:57 +01:00
Reto Aebersold cd6585790e fix: initial data loading 2023-12-18 15:42:41 +01:00
Reto Aebersold 5916212857 fix: address stuff 2023-12-18 15:42:41 +01:00
Livio Bieri 9d806e6ede chore: 2-way binding for address forms, like this?
follow up to 1f0c9e2
2023-12-18 15:42:41 +01:00
Reto Aebersold 9febbc0857 fix: static assets 2023-12-18 15:42:11 +01:00
Reto Aebersold 97f4e96b5c feat: handle no course session 2023-12-18 15:40:57 +01:00
Reto Aebersold c95bdbe7b7 fix: grow wizard page 2023-12-18 15:40:57 +01:00
Reto Aebersold 31ee830960 chore: cleanup 2023-12-18 15:40:57 +01:00
Reto Aebersold 9592005419 feat: onboarding course checkout 2023-12-18 15:40:57 +01:00
Reto Aebersold 607789d599 feat: onboarding course type 2023-12-18 15:40:57 +01:00
Reto Aebersold 515900ca9d feat: setup complete 2023-12-18 15:40:57 +01:00
Reto Aebersold 7ccdcf51f2 feat: avatar upload 2023-12-18 15:34:31 +01:00
Reto Aebersold c4418676fb feat: wizard uk 2023-12-18 15:34:31 +01:00
Reto Aebersold e87c5a7cd8 feat: generic task rendering 2023-12-18 14:52:59 +01:00
Reto Aebersold b319b539fe Merge branch 'develop' into feature/VBV-597-umsetzung-cockpit-lernbegleitung 2023-12-18 13:37:38 +01:00
Christian Cueni 2168feb74b Merged develop into feature/VBV-594-dashboard-feedback 2023-12-18 08:51:47 +00:00
Reto Aebersold 2bf741ab67 feat: praxis assigment evaluation user 2023-12-14 15:22:15 +01:00
Livio Bieri 10c8178aaa fix: mobile menu 2023-12-14 14:27:05 +01:00
Reto Aebersold 6479683ad8 feat: praxis assigment evaluation user 2023-12-14 11:03:04 +01:00
Livio Bieri 712d6d2868 chore: mentor management only available for VV courses (#1097) 2023-12-14 10:34:27 +01:00
Reto Aebersold 1979dcd428 feat: split assigment submit 2023-12-14 09:21:17 +01:00
Livio Bieri e61dce95f6 chore: cockpit for mentor 2023-12-13 18:43:17 +01:00
Livio Bieri 14e8d5da49 feat: mentor has no medialibrary 2023-12-13 15:44:26 +01:00
Reto Aebersold 6bd913307c feat: learning mentor mgmt UI 2023-12-12 10:01:11 +01:00
Christian Cueni 0fc428ff06 wip: Add evaluation tests 2023-12-04 14:06:06 +01:00
Reto Aebersold 620a48723a chore: small fixes 2023-11-27 14:58:51 +01:00
Daniel Egger 0ee783219b VBV-585 feat: "Wissens- und Verständnisfragen im Cockpit" 2023-11-08 08:00:05 +01:00
Livio Bieri 1fdc28419d chore: adds missing cypress test for assignment 2023-11-06 10:00:13 +01:00
Daniel Egger e6aa6f0cbe Merge branch 'develop' into feature/VBV-496-dash-regionalleiter 2023-11-03 10:44:22 +01:00
Livio Bieri 3748ce44fa chore: cypress tests supervisor dashboard 2023-11-01 17:14:47 +01:00
Livio Bieri 2e0c8205ee wip: e2e cypress tests 2023-11-01 15:16:12 +01:00
Reto Aebersold 4776206bb8 feat: Rich-text component for ext. link handling 2023-11-01 14:27:53 +01:00
Reto Aebersold eebb512348 fix: FF rendering bug & cleanup 2023-11-01 08:54:34 +01:00
Reto Aebersold 3664ddf6d7 feat: add rating colors 2023-10-31 11:20:21 +01:00
Reto Aebersold 513b203604 feat: add course list sub page 2023-10-31 09:20:35 +01:00
Reto Aebersold 0ca1ab50f7 chore: loading indicator, ext links 2023-10-31 08:30:06 +01:00
Livio Bieri e453fcaf3b fix: round average satisfaction 2023-10-30 15:14:03 +01:00
Reto Aebersold e2a346caed feat: add feedback list 2023-10-30 11:50:46 +01:00
Reto Aebersold 0635602c68 Merge remote-tracking branch 'origin/feature/VBV-496-dash-regionalleiter' into feature/VBV-496-dash-regionalleiter 2023-10-30 10:58:54 +01:00
Reto Aebersold c079be32e7 feat: add statistic filter 2023-10-30 10:58:09 +01:00
Livio Bieri a354650882 chore: use basebox based boxes for progress page 2023-10-30 10:55:42 +01:00
Livio Bieri d78b216875 fix: fixes small ui bug in dashboard 2023-10-30 10:02:31 +01:00
Livio Bieri 235c3985e6 feat: wraps up dashboard boxes ui 2023-10-30 09:56:04 +01:00
Livio Bieri 63bcb44fa2 wip: summary boxes 2023-10-27 16:26:15 +02:00
Reto Aebersold 9d6a0a561b feat: add dashboard page variants 2023-10-25 16:40:41 +02:00
Daniel Egger 0c40bb9341 Rename composable to useCourseData 2023-10-14 16:06:16 +02:00
Daniel Egger aa67c2c8b7 Remove unneeded feedbackSummary 2023-10-14 01:42:24 +02:00
Daniel Egger a6cf4ad128 Show Diagram for users in cockpit 2023-10-13 14:21:26 +02:00
Daniel Egger 8544898bbf Load stuff 2023-10-12 18:38:14 +02:00
Daniel Egger 8621d4af07 Load CompletionData 2023-10-12 17:29:05 +02:00
Daniel Egger 2eddb93be5 Adapt code to user more of the codegen generated typescript types 2023-10-12 10:51:10 +02:00
Daniel Egger a3e16dc107 Fix problems 2023-10-10 15:55:46 +02:00
Daniel Egger 227e9f317d Fix loading of DueDates 2023-10-10 15:20:48 +02:00
Daniel Egger dcf450339d Every REST response returns `id`-field as string 2023-10-10 15:02:03 +02:00
Daniel Egger 06d284b1ce Refactor course url handling 2023-10-10 10:12:58 +02:00
Daniel Egger 41ead1dad4 Refactor circle handling in cockpit 2023-10-10 10:12:58 +02:00
Daniel Egger 778dde12d7 Improve course session loading 2023-10-10 10:12:58 +02:00
Daniel Egger d92b514759 Merge branch 'develop' into feature/VBV-488-import-edoniq-data 2023-10-05 09:16:49 +02:00
Daniel Egger a180c5c825 Filter appointments by course 2023-10-04 18:27:42 +02:00
Daniel Egger 6048129507 Add courseSessionId query param to url and switch to it 2023-10-04 16:59:59 +02:00
Daniel Egger 8b4b00170a Merged develop into feature/VBV-524 2023-10-04 11:40:00 +00:00
Livio Bieri 7794203cd9 chore: due dates list refactor 2023-10-02 15:09:37 +02:00
Livio Bieri 13581389c0 fix: navigation 2023-10-02 13:53:39 +02:00
Livio Bieri fd885d7b5e chore: styling 2023-10-02 13:53:26 +02:00
Reto Aebersold 417b2c58b8 Move document upload to cockpit 2023-10-02 11:27:14 +02:00
Livio Bieri 540f8c7eb7 chore: use new due date format 2023-10-02 09:20:26 +02:00
Daniel Egger f8c6daf9eb VBV-519: Anpassungen Darstellung Wissens- und Verständnisfragen für Lernende 2023-09-28 17:56:29 +02:00
Livio Bieri daaecb57a0 fix: use trainer url 2023-09-28 17:45:00 +02:00
Livio Bieri 4672698895 wip: appointment filtering poc 2023-09-28 17:45:00 +02:00
Livio Bieri dbe74f754b chore: more tests for mobile navigation 2023-09-28 09:38:48 +02:00
Livio Bieri 5247b6061b chore: navigation tests (desktop) 2023-09-28 09:38:48 +02:00
Daniel Egger 966533e13b Add feedback trainer cypress test 2023-09-26 18:48:25 +02:00
Daniel Egger 89e068fb09 Add cypress test for student 2023-09-26 14:34:22 +02:00
Daniel Egger 3ae215296b Remove console.logs 2023-09-26 13:43:44 +02:00
Daniel Egger 70655935b0 VBV-525: Refactor feedback submission 2023-09-26 13:43:44 +02:00
Daniel Egger ce15054340 VBV-525: Fix feedback rendering 2023-09-26 13:43:44 +02:00
Livio Bieri 46faea8c1c cleanup: navigation (duplicated code, logic) 2023-09-20 18:21:25 +02:00
Livio Bieri f6d7f6e89e Merge remote-tracking branch 'origin/develop' into feature/VBV-515-preview
# Conflicts:
#	client/src/components/dueDates/DueDateSingle.vue
#	client/src/components/header/MainNavigationBar.vue
#	client/src/components/header/MobileMenu.vue
#	client/src/pages/cockpit/cockpitPage/CockpitDates.vue
2023-09-20 17:33:01 +02:00
Livio Bieri 1e27f80949 refactor: main navigation, reduce duplication 2023-09-20 17:16:35 +02:00
Livio Bieri 93f05e4722 fix: mobile menu 2023-09-20 17:16:07 +02:00
Livio Bieri fa22f5a18e workaround: disable due date links for experts 2023-09-20 16:39:12 +02:00
Livio Bieri 5e8554acda feat: added preview bar 2023-09-20 16:38:45 +02:00
Daniel Egger abddf3079a Fix mobile navigation and minor mobile problems 2023-09-18 19:04:49 +02:00
Livio Bieri 326e42c99f wip: course preview poc 2023-09-16 22:27:19 +02:00
Daniel Egger db40368244 VBV-514: Termine nur für ausgewählte Circles anzeigen im Cockpit 2023-09-15 14:50:52 +02:00
Daniel Egger e6fbf0d276 Fix link in to KompetenzNavi in main navigation bar 2023-09-15 10:59:44 +02:00
Daniel Egger e7bbf961d5 Cockpit Mobile Anpassungen 2023-09-14 14:28:06 +02:00
Daniel Egger 5dfdd470ae Add PerformanceCriteria page 2023-09-13 18:45:07 +02:00
Daniel Egger e43e351e9d Refactor design of learning contents in circle page 2023-09-08 16:47:38 +02:00
Daniel Egger 853c8746ea VBV-329: Add link to competence certificate in circle view 2023-09-08 16:47:38 +02:00
Daniel Egger fde7e2edef Add performanceCriteriaStatusCount to index page 2023-09-08 16:47:37 +02:00
Daniel Egger 2430c02584 Add initial KompetenzNavi Frontend 2023-09-08 16:46:53 +02:00
Daniel Egger c59c44f1dd Move old competence frontend code to "competence-old" 2023-09-08 16:46:53 +02:00
Daniel Egger 06a3706d29 VBV-489: Übersetzungen 2023-09-08 09:53:43 +02:00
Daniel Egger da56f2a346 Refactor Notification model 2023-08-30 18:47:36 +02:00
Daniel Egger 9f8686e592 Improve django admin 2023-08-23 19:06:32 +02:00
Daniel Egger 969c55f15d Sort dueDates by start date 2023-08-23 15:38:26 +02:00
Daniel Egger 2fa17e1204 Refactor dueDate frontent 2023-08-23 15:38:26 +02:00
Christian Cueni c622db7e22 Remove unusable link, don't open in blank 2023-08-16 15:31:14 +02:00
Christian Cueni 6195c9d32a Use page id for feedbacks, filter by course session id 2023-08-14 19:57:31 +02:00
Elia Bieri 667ef96b14 Merged in bugfix/VBV-470-abgabe-aufträge-homogenisierung (pull request #166)
Bugfix/VBV-470 Homogenisierung Abgabe Aufträge

* Make feedback non-checkable without submission

* Submit preparation_assignment on close

# Conflicts:
#	client/src/pages/learningPath/learningContentPage/assignment/AssignmentView.vue

* Also submit reflection on close

* Fix CourseSessionCompletionData reloading

* User can self toggle LearningContentFeedback completion

* Show submission view for all assignments

* Fix cockpit for condition acceptance

* Close assignments after submission


Approved-by: Dario Aebersold
Approved-by: Daniel Egger
2023-08-03 06:32:47 +00:00
Daniel Egger 815d81a471 Simplify media library models 2023-07-21 13:56:09 +02:00
Elia Bieri b970597a81 Merged in feature/VBV-451-anwesenheitskontrolle-frontend (pull request #150)
VBV-451 Anwesenheitskontrolle frontend & neues Cockpit

* Regenerate graphql types after rebase

* Fix grading progress

* Fix cypress tests

* Fix circle selection and add CourseSessionAssignment for Fahrzeug Vorbereitungsauftrag

* Use `LearningContentAssignment` explictly

* Improve type safety without `as`

* Disable feedback details button when no feedback

* Extend submission overview titles after review

* Improve attendance check state handling

* Minor translation/wording fixes


Approved-by: Daniel Egger
2023-07-20 16:22:28 +00:00
Elia Bieri 4b0a881055 Merged in feature/VBV-326-auftrag-benachrichtigungen-rebased (pull request #157)
Feature/VBV-326 auftrag benachrichtigungen rebased

* Implement notifications for assignments

# Conflicts:
#	server/vbv_lernwelt/assignment/services.py

* Add cypress test for student assignment submission

* Update django-notifications-hq

* Rework


Approved-by: Daniel Egger
2023-07-12 14:32:49 +00:00
Daniel Egger dfefdb52ca Fix typecheck errors 2023-07-12 11:47:16 +02:00
Daniel Egger 3bd489d2ae Refactor `CourseCompletion` model 2023-07-12 10:21:23 +02:00
Daniel Egger c4d10badf6 Standardize name `duedates` to `due_dates` 2023-07-12 09:15:21 +02:00
Daniel Egger ba7533614d Format [Uhr] for single dates 2023-07-11 18:13:11 +02:00
Lorenz Padberg b06fc4bcbf Add translations 2023-07-11 11:02:39 +02:00
Lorenz Padberg 57143a0209 Fix Types 2023-07-10 13:47:23 +02:00
Lorenz Padberg 24d816f950 Remove import defineprops 2023-07-10 13:47:23 +02:00
Lorenz Padberg b2a7c2e282 Add DateEmbedding component 2023-07-10 13:47:12 +02:00
Lorenz Padberg 77aacfc01c Refactor Styleing 2023-07-10 13:46:56 +02:00
Lorenz Padberg 1671abe512 Refactor Duedates List to new design 2023-07-10 13:46:56 +02:00
Lorenz Padberg e631cc4d13 Add Weekday to long list 2023-07-10 13:46:56 +02:00
Lorenz Padberg ffefa520e1 Fix typechecker 2023-07-10 13:46:56 +02:00
Lorenz Padberg e7917a6cdb Fix linting errors 2023-07-10 13:46:56 +02:00
Lorenz Padberg 9bb3c93cfb Use Due Dates from all course Sessions for Dashboard 2023-07-10 13:46:56 +02:00
Lorenz Padberg 89ff4af3c8 Refactoring 2023-07-10 13:46:56 +02:00