Commit Graph

218 Commits

Author SHA1 Message Date
Reto Aebersold 16a6334802 feat: mentor invitation URLs 2023-12-11 10:01:24 +01:00
Lorenz Padberg e8ae8bdc14 VBV-440: Musterlösung und Refactoring S3 2023-12-07 10:38:58 +01:00
Reto Aebersold 278d659905 wip: learning mentor 2023-12-07 08:42:24 +01:00
Reto Aebersold c7920430ca feat: add course session group 2023-10-23 16:55:26 +02:00
Reto Aebersold 75351b9986 chore: format 2023-10-11 09:53:32 +02:00
Reto Aebersold d4cb978de3 Add assigment task file upload 2023-10-11 09:51:43 +02:00
Daniel Egger 49a3fa99e1 Document handling via REST 2023-10-10 14:26:47 +02:00
Daniel Egger 778dde12d7 Improve course session loading 2023-10-10 10:12:58 +02:00
Daniel Egger 7d291b3e3f VBV-488: Verarbeite Edoniq Test-Resultate 2023-09-29 17:55:05 +02:00
Daniel Egger 6badbc480c Use django constance to add EMAIL_RECIPIENT_WHITELIST 2023-08-29 14:31:21 +02:00
Elia Bieri 56e454cc8b Squash merge of code from Elia 2023-08-29 14:31:18 +02:00
Daniel Egger ae075e47dd Add documentation 2023-08-29 13:53:40 +02:00
Daniel Egger a7f7d0b184 Fail save json dump for `structlog_convert_to_json_for_new_relic` 2023-08-29 09:05:28 +02:00
Daniel Egger e08d5574f7 Render logs as json with python-json-logger 2023-08-28 13:47:41 +02:00
Daniel Egger 163df01f5d Add newrelic integration in docker file 2023-08-27 21:25:33 +02:00
Daniel Egger 946d5671b8 Cleanup azure settings and docs 2023-08-25 12:04:34 +02:00
Christian Cueni c140f225ea Add Edoniq testblock
WIP: Add sso code

Update content name

WIP: Add redirect endpoint

mend

Fix after rebase

WIP: Update model

WIP: Add extended time test url

Update trufflehog config, use sso

Update test
2023-08-23 07:33:29 +02:00
Christian Cueni 3447de19ca Add trainer and combined export 2023-08-17 10:58:33 +02:00
Christian Cueni 95a6d404b5 Add export for trainers 2023-08-15 16:47:03 +02:00
Christian Cueni 6195c9d32a Use page id for feedbacks, filter by course session id 2023-08-14 19:57:31 +02:00
Daniel Egger a999375f23 Update slugs when parent changes slug due to title change 2023-07-24 13:37:06 +02:00
Daniel Egger f3ed9db437 Change some settings for Wagtail 2023-07-24 13:37:06 +02:00
Christian Cueni 5d0f7b88b5 Add sync 2023-07-20 15:34:10 +02:00
Christian Cueni 12977b01cc Add real courses data, update importer
Make course optional on import

Add importer in admin

Use new trainer format in xls

Import trainers via admin interface

Add participant import

Update tests

Update url, handle error

Refactor importer

Add json field

Fix tests

Add update test
2023-07-20 15:34:10 +02:00
Christian Cueni 65d527d894 Add student export for edoniq 2023-07-19 16:02:11 +02:00
Daniel Egger e8178fa36a Format code 2023-07-14 17:14:00 +02:00
Daniel Egger f25602c84c Change types to use UUID ids 2023-07-14 14:55:45 +02:00
Daniel Egger a5acc66981 VBV-450: Custom CourseSessionAttendanceCourse model 2023-07-10 13:46:56 +02:00
Lorenz Padberg 89ff4af3c8 Refactoring 2023-07-10 13:46:56 +02:00
Lorenz Padberg f05d7b2279 Rename Event -> DueDate 2023-07-10 13:46:21 +02:00
Lorenz Padberg 4d8c219076 Add events app 2023-07-10 13:46:21 +02:00
Daniel Egger 9860a59cef Clean up assignment graphql
* Remove old assignment api REST code which is unused
* Refactor handling AssignmentCompletionStatus enum
* Add full test for GraphQL assignment completion mutation
* Hide wagtail INFO logs on local dev
2023-07-07 18:43:57 +02:00
Daniel Egger 6e7935a005 Add locize cli script 2023-07-05 19:20:10 +02:00
Elia Bieri dcf855a443 Cherrypick logging configuration from VBV-326 2023-06-28 17:17:05 +02:00
Daniel Egger 261952f605 Change LOGIN_URL for server logout 2023-06-02 15:16:41 +02:00
Daniel Egger 353992441b Fix test settings 2023-06-02 11:45:13 +02:00
Daniel Egger db78f1a9cf Fix static files problem with correct whitenoise settings 2023-06-02 11:12:00 +02:00
Daniel Egger 9d0c41322c More cleanup 2023-06-02 09:36:29 +02:00
Daniel Egger 3158033d57 Rework VITE_* variables... 2023-06-02 00:10:34 +02:00
Daniel Egger a67a06d69b Cleanup oauth env variables 2023-06-01 22:44:42 +02:00
Daniel Egger 6ab8be4e58 Cleanup env variables 2023-06-01 22:14:13 +02:00
Daniel Egger fb74ffeeb2 VBV-381: rename app env variable to VITE_APP_ENVIRONMENT 2023-06-01 21:55:56 +02:00
Daniel Egger 800a07ba7e Set default app env for local development to "local" 2023-06-01 21:48:35 +02:00
Daniel Egger 8eb87327df Remove references to `IT_USE_AZURE_BLOB_STORAGE` 2023-05-30 11:41:42 +02:00
Lorenz Padberg c66d25daa3 Format with ufmt 2023-05-30 10:56:08 +02:00
Lorenz Padberg 9f94191c7a Fix Allowed hosts 2023-05-30 10:56:08 +02:00
Lorenz Padberg 0a5a6fa4ce Add azure blob storage as default media storage 2023-05-30 10:55:36 +02:00
Lorenz Padberg 6e264b1480 Add azure blob storage to django 2023-05-30 10:55:36 +02:00
Lorenz Padberg d0f48866f5 Add additional Env variables 2023-05-30 10:55:36 +02:00
Daniel Egger 8d879ba981 Add graqhql introspection schema 2023-05-16 17:08:54 +02:00
Daniel Egger 31dae0a5cd VBV-306: Use GraphQL for assignment code 2023-05-15 19:07:06 +02:00
Daniel Egger e130d65f37 Merged in feature/VBV-339-assignment-cypress-test (pull request #79)
Feature/VBV-339 assignment cypress test UNFINISHED

* Create assignment submission test data for cypress test

* Add first assignment trainer test

* Add first cypress test which checks DB entry with all instrumentation
2023-05-12 14:33:14 +00:00
Daniel Egger 32c3d6d1b4 Format code 2023-05-08 14:27:40 +02:00
Daniel Egger 5868468a48 Add grades to AssingmentEvaluation 2023-05-08 14:27:40 +02:00
Daniel Egger fef864df25 VBV-321: squash current work
Load and display AssignmentCompletionStatus

Datenmodell um Bewertungskriterien erweitern

Refactor assignment pages

Show user results

Update some data fields

Show user assignment evaluation

Changes after rebase

Rename `grading` -> `evaluation`

Add evaluation data to AssignmentCompletion

Refactor usage of `assignmentStore`

Store points for evaluation

Only debounce text

Show user responses on evaluation page
2023-05-08 14:24:38 +02:00
Ramon Wenger 96334b4eb6 Merged in feature/VBV-304-praesenztag-ui (pull request #65)
Feature/VBV-304 praesenztag ui

Approved-by: Daniel Egger
2023-04-26 09:57:22 +00:00
Ramon Wenger 9dd9a02592 Add new package to help with editing JSON fields 2023-04-25 17:23:58 +02:00
Daniel Egger 8ffea5bc1b Format code 2023-04-25 13:20:02 +02:00
Daniel Egger baf5801b6a Add grading api endpoint 2023-04-25 13:20:02 +02:00
Lorenz Padberg 766af5444a Merged in feature/improve-test-speed (pull request #61)
Select MD5 (faster) password hasher for tests

Approved-by: Christian Cueni
2023-04-20 15:45:06 +00:00
Lorenz Padberg 7fffd6cbae Select MD5 (faster) password hasher for tests
In the timeline project this reduced test time by 10%.
2023-04-18 16:52:43 +02:00
Daniel Egger adc61479fc Merged in feature/VBV-290-kn-backend (pull request #59)
Feature/VBV-290 kn backend

* Add initial assignment completion model

* Add first version of `update_assignment_completion`

* Upgrade wagtail>=4 for new functions needed in assignment api

* Add API to update assignment user data

* Post API via assignment not learning_content

* Add GET api endpoints for AssignmentCompletion

* Add some initial assignment completion data

* Add admin view for AssignmentCompletion


Approved-by: Elia Bieri
2023-04-18 08:07:29 +00:00
Daniel Egger 8f84ef7502 Adapt api so it can fetch assignment page by id 2023-04-05 21:43:15 +02:00
Elia Bieri 9ecb9a9add Add initial wagtail models 2023-04-05 21:43:15 +02:00
Daniel Egger 8d41d3d3a2 VBV-193 refactored course completion for course sessions 2023-03-31 18:27:47 +02:00
Elia Bieri 10f34f53d8 Merged in feature/storybook (pull request #49)
Integrate Storybook

* Merged in feature/caprover-deploy (pull request #47)

Feature/caprover deploy

Approved-by: Christian Cueni
* Merge branch 'feature/storybook' of bitbucket.org:iterativ/vbv_lernwelt into feature/storybook

* Add stories

* Add BuenosAires font to storybook

* Mute typecheck error

* Update bitbucket deployment

* Add ItNavigationProgress component

* Update pipelines file

* Update pipelines file

* Merged develop into feature/storybook

Approved-by: Daniel Egger
2023-03-29 13:45:13 +00:00
Daniel Egger 1f7b9252ab Remove api page chache -> it is not needed anymore 2023-03-17 11:15:56 +01:00
Elia Bieri b5e4c30d40 Merged in feature/notifications (pull request #15) 2023-02-08 11:39:27 +00:00
Christian Cueni 44ed154814 Add summary component 2023-01-31 08:26:15 +01:00
Christian Cueni 88848aa292 WIP: Add single feedback endpoint 2023-01-31 08:26:15 +01:00
Christian Cueni 46710d29b9 Add summary endpoint 2023-01-31 08:26:15 +01:00
Daniel Egger 9fc834e99e Refactor cockpit circle handling 2023-01-11 15:54:50 +01:00
Daniel Egger 597c9f267b Check permissions for accessing user completions 2023-01-11 15:54:50 +01:00
Christian Cueni ae62b43606 Fix upload, add delete s3 files command 2023-01-11 07:38:47 +01:00
Christian Cueni e197a17f15 Fix user header on circle page 2023-01-10 08:58:44 +01:00
Christian Cueni 660c288f6f Change default expiry, add file size hint 2023-01-10 08:09:16 +01:00
Christian Cueni cb9249328e Add delete unreferenced file command 2023-01-10 08:09:13 +01:00
Christian Cueni fc017961ab Verify permissions 2023-01-10 08:05:02 +01:00
Christian Cueni 8ad84cc778 WIP: Add tests 2023-01-10 08:05:02 +01:00
Daniel Egger 7a3e4324d9 VBV-213: Filter criteria by selected circle
Show upload button only to circle experts

Add files app and basic frontend test

Add service, refactor form

WIP: Upload file

WIP: Upload file to s3

WIP: Add course models, add view

WIP: Add local upload

WIP: Add basic get

WIP: Validate form

WIP: Add file list, download by name

WIP: Update documents after upload

WIP: Add delete button and API

WIP: Reset upload_finished_at when document is deleted

WIP: Handle upload error

Add s3 document
2023-01-10 08:04:56 +01:00
Ramon Wenger c64bc463db Make formatter happy 2022-12-29 16:28:36 +01:00
Ramon Wenger e1d9df7d31 Add initial implementation of feedback form 2022-12-29 16:20:20 +01:00
Daniel Egger 5aa73e4997 Fix problem in competence pages 2022-12-02 16:57:44 +01:00
Daniel Egger 218756e3dc Add drf view to request completion data for user 2022-12-02 14:53:49 +01:00
Daniel Egger 963250a8da Add role to course session user 2022-12-02 13:59:27 +01:00
Daniel Egger 205cb3c1d4 Add view for course session members 2022-12-02 13:44:28 +01:00
Christian Cueni d9390ef82d Add basic cockpit page 2022-12-01 16:02:43 +00:00
Ramon Wenger cb7b00ff40 Add GraphQL urls 2022-11-21 12:04:57 +01:00
Ramon Wenger 7b4860f170 Add settings for S3 storage and Grapple/GraphQL 2022-11-17 15:19:27 +01:00
Daniel Egger 93a0fdaadb Add ÜK1 course 2022-11-09 12:40:01 +01:00
Daniel Egger 17eaf80d2c Add CourseSession serializer and view 2022-11-09 12:40:00 +01:00
Daniel Egger c61ea10c7d Format code 2022-11-09 12:40:00 +01:00
Daniel Egger d8577c70d5 Limit page access to users which can access course 2022-11-09 12:40:00 +01:00
Ramon Wenger 5cfce209b6 Re-add reading of local .env file 2022-11-09 10:52:23 +01:00
Christian Cueni 03bbd26774 Add translations strings 2022-11-08 15:05:54 +01:00
Christian Cueni 3608156353 WIP: Setup i18n 2022-10-27 16:09:06 +02:00
Daniel Egger be68854545 Enable django watchfiles runserver reloader 2022-10-11 16:46:53 +02:00
Daniel Egger a2bb4aeb18 Upgrade some python packages 2022-10-11 16:46:53 +02:00
Daniel Egger 5b3a751704 Load media items from backend to show in frontend 2022-10-04 14:42:34 +02:00
Daniel Egger 71b072ade2 Refactor media content data models 2022-10-04 14:42:34 +02:00