WIP: Draft: Resolve "Notifications/reminders for events/todos" #3895
Draft
yuha
wants to merge 63 commits from
1533-notifications-reminders-for-events-todos into master
pull from: 1533-notifications-reminders-for-events-todos
merge into: aleksis:master
aleksis:master
aleksis:3960-extend-slideiterator
aleksis:1625-migrate-to-vuetify-4
aleksis:remove-vite-legacy-plugin
aleksis:weblate-frontend
aleksis:weblate
aleksis:renovate/selenium-4.x
aleksis:1644-dahsboard-widget-creation-broken
aleksis:renovate/node-26.x
aleksis:renovate/django-health-check-4.x
aleksis:renovate/django-countries-9.x
aleksis:1643-calendar-dashboardwidgets-throw-500er-error
aleksis:renovate/django-dbbackup-5.x
aleksis:1064-backchannel-logout
aleksis:sis2-with-sl
aleksis:fix/adapt-some-urls
aleksis:1294-expose-free-busy-state-in-ui-for-personal-events
aleksis:1303-correctly-implement-recurring-todos-with-amends-recurrence-id
aleksis:1345-introduce-annotate-methods-for-more-person-related-rules
aleksis:1603-search-index-is-deleted-on-cache-flush
aleksis:1068-oidc-rp-initiated-registration
aleksis:1065-oidc-device-code-grant-flow
aleksis:1599-vite-build-fails-with-too-many-apps
aleksis:fix/sort-models
aleksis:1066-oidc-dynamic-client-registration
aleksis:tmp-ticdesk-dev
aleksis:ticdesk-search-map
aleksis:cherry-pick-2b8d2e01
aleksis:643-one-time-login-links
aleksis:1461-birthday-calendar-oom
aleksis:tmp-ticdesk-related-names-for-paweljong
aleksis:1459-manifest-json-not-found
aleksis:integrate-disable-into-usecrud
aleksis:update-container-image-base-to-trixie
aleksis:check/update-pyproject-toml
aleksis:check/update-builddeps-package-json
aleksis:check/update-prettier-ignore
aleksis:1445-todo-list-broken
aleksis:1364-track-date-of-beginning-and-end-of-group-membership
aleksis:1259-generalise-places
aleksis:use-object-form-reactivity
aleksis:1435-cruddaylist-does-not-detect-changes-in-existing-intervals
aleksis:tmp-ticdesk
aleksis:stable/4.0.0
aleksis:1366-frontend-for-creating-and-modifying-generic-personrelationships
aleksis:master-without-vue-3
aleksis:1376-expand-row-feature-of-v-data-table-doesn-t-work-when-items-include-date-time-objects
aleksis:release/4.1.0.dev2
aleksis:1372-fix-import-of-crudlist
aleksis:1353-adapt-chipselectfield
aleksis:check/update-eslint-rc-js
aleksis:check/update-tox-ini
aleksis:improve-selenium-startup
aleksis:1268-add-specific-availability-planning-frontend
aleksis:1343-fix-person-related-permissions
aleksis:newer-and-rebased-migrate-crud-to-vue-3-and-generalize
aleksis:1314-fix-handling-of-end-datetime-in-calendar-events-query
aleksis:migrate-to-uv
aleksis:tmp-ticdesk-4-0
aleksis:fix-inline-crud-list-is-create
aleksis:tmp-split-calendar-event-dialog
aleksis:release/4.1.0
aleksis:1260-refactor-account-registration-form-and-generalize-parts-of-it
aleksis:add-datacheck-fix-in-changelog
aleksis:1232-group-calendars
aleksis:1251-registryobjects-are-their-own-parent-registries
aleksis:1209-introduce-django-rest-framework-serializers
aleksis:1162-strange-behaviour-with-personal-events
aleksis:revert-7fe8b8b1
aleksis:check/delete-eslint-rc-js
aleksis:check/update-gitignore
aleksis:stable-3.2
aleksis:stable-3.1
aleksis:update/eslint
aleksis:1158-add-sorting-functionality-to-get_single_events
aleksis:1055-introduce-sub-school-terms
aleksis:1082-colorfield-sometimes-returns-8-digit-alpha-color-hex-code
aleksis:test-build
aleksis:emit-extracted-items-from-save-event
aleksis:886-prevent-graphql-query-mutation-name-collisions
aleksis:release/3.2.1
aleksis:1038-make-dialogobjectform-send-a-diff-on-edit-instead-of-the-whole-object
aleksis:release/3.1.6
aleksis:fix/counter-chip
aleksis:1021-allow-matching-of-social-accounts-to-local-accounts-by-email
aleksis:991-set-title-attribute-for-all-unclear-frontend-spots
aleksis:update-docs-without-release-distribution
aleksis:850-do-not-restart-vite-serve-on-every-uwsgi-reload
aleksis:991-use-tooltips-for-all-unclear-frontend-spots
aleksis:983-add-groups-by-person-query
aleksis:826-otp-token-emails-don-t-contain-anything-besides-the-token
aleksis:781-error-if-creating-a-new-school-term-without-a-start-and-end-date
aleksis:966-allow-setting-of-custom-queryset-when-creating-calendar-feeds
aleksis:tmp-for-add-simple-course-book-list
aleksis:release/3.2.0
aleksis:868-introduce-uuid-field-for-extensiblemodel
aleksis:958-introduce-parent-model-resource
aleksis:954-evaluate-strawberry-and-strawberry-django
aleksis:948-error-handling-with-personal-event-creation-is-not-usable
aleksis:fix-custom-events-fss
aleksis:923-introduce-vue-styleguidist
aleksis:899-move-person-type-fields-into-constant
aleksis:892-remove-model-extension-api
aleksis:manage-holidays
aleksis:831-data-management-for-the-model-room
aleksis:fix/oauth-toolkit-migration
aleksis:release-3.0
aleksis:stable-2.12
aleksis:819-fix-some-minor-issues-in-graphql-queries
aleksis:fix-container-image
aleksis:stable-2.11
aleksis:stable-2.10
aleksis:stable-2.13
aleksis:806-expose-string-representation-of-models-via-graphql-api
aleksis:800-move-generic-components-from-aleksis-app-plank-to-core
aleksis:debug-foo
aleksis:oidc-docs
aleksis:migrate-to-vue3
aleksis:789-remove-syncable-fields
aleksis:remove/ical-feed
aleksis:194-enable-async-framework-channels
aleksis:726-dynamically-build-vue-forms
aleksis:766-selfclosing-components-in-vue_base-html-break-the-page
aleksis:492-follow-up-view_persons_rule-not-usable-due-to-use-of-queryset_rules_filter
aleksis:751-include-fields-of-non-extensible-model-in-syncable-fields
aleksis:kort-core
aleksis:feature/vuejs
aleksis:717-docker-improve-image-size-by-fixing-cleanup-layer
aleksis:build-improvements
aleksis:697-3-0-meta-issue-for-graphql-back-end-and-vue-js-frontend
aleksis:185-create-notifications-for-announcement
aleksis:stable-2.7
aleksis:update/translation-files-13
aleksis:update/translation-files-12
aleksis:599-add-oauth-oidc-tests
aleksis:i10n-ru-ua
aleksis:tmp/cbes
aleksis:do-release-2.9
aleksis:docs/notifications
aleksis:180-add-template-management
aleksis:fix-import
aleksis:653-remove-cachalot
aleksis:635-test-e-mail-button
aleksis:397-dedicated-public-dashboard
aleksis:396-external-link-widet-auto-discovery
aleksis:511-allow-custom-redirect-uri-schemes
aleksis:update/translation-files-8
aleksis:585-barcode-widget-for-person-fields
aleksis:dot-1.6.2
aleksis:281-corporate-design-for-html-mails
aleksis:592-oauth2-broken-in-2-4
aleksis:574-rewrite-password-change-templates
aleksis:reduce-docker-steps
aleksis:571-age-calculation-broken
aleksis:559-oauth-add-feature-to-limit-apps-to-groups
aleksis:feature/push-notifications
aleksis:feature/i18n-maintenance
aleksis:fix/oauth-skip-auth-detail
aleksis:523-integrate-sentry-for-performance-and-error-tracing
aleksis:prepare-release-2.1.dev0
aleksis:release/2.0
aleksis:387-jwt-provider-consumer-support
aleksis:update/translation-files
aleksis:496-service-worker-safari-does-not-support-broadcastchannel-api
aleksis:group-members-permissions
aleksis:prepare-release-2.0b2
aleksis:fix/trans-conflicts
aleksis:bp-2.0-use-importlib-instead-of-pkg-resources
aleksis:update/translation-files-2.0b0-1
aleksis:test-migration-test
aleksis:376-prevent-deep-linking-to-media-files
aleksis:feature/build-icons-automatically
aleksis:421-update-to-django-3-2
aleksis:set-sast-config-1
aleksis:feature/test-selenium-capabilities
aleksis:arg-apps
aleksis:feature/review-app
aleksis:test-docker-app-version
aleksis:feature/allow-app-source
aleksis:fix-ci-config
aleksis:feature/curlylint
aleksis:feature/gin-index-on-ext-data
aleksis:backup-over-ssh
aleksis:feature/keep_local_password_ldap
aleksis:340-correctly-implement-the-ckeditor
aleksis:143-mark-menu-entries-as-active-with-sub-sub-menu-entries
aleksis:feature/django-notifs
aleksis:2021-update-copyright
aleksis:catch-error
aleksis:update/poetry
aleksis:selenium
aleksis:269-photo-cropping-broken-2
aleksis:269-photo-cropping-broken
aleksis:fix-docker-build
aleksis:has-person
aleksis:update-poetry-lockfile
aleksis:pages-staging
aleksis:mix/conn-dne
aleksis:236-support-saml-and-oauth2-logins-as-consumer
aleksis:feature/custom-auth-backends-dev
aleksis:dev
aleksis:fix-isort
aleksis:214-add-notification-dashboard-widget-anything-to-notify-of-upcoming-birthdays
aleksis:157-include-django-letsagree
aleksis:215-add-geolocation-of-persons
aleksis:267-lint-add-spell-check
aleksis:291-rename-template-references
aleksis:270-ci-replace-kaniko-with-buildah
aleksis:217-add-support-for-defining-group-types
aleksis:feature/docker-extras
aleksis:153-use-complex-name-field-with-i18n-support
aleksis:debug-docker-build
aleksis:feature/material-admin
aleksis:pages-jonglieren
aleksis:179-group-contact
aleksis:169-support-nextcloud-talk-for-notifications
aleksis:develop-dashboard-feeds
aleksis:134-merge-dashboard-ajax
No reviewers
Labels
Clear labels
Security
TeX
Needs LaTeX template
auto-update
board
done
board
ready
board
todo
check
delete-eslint-rc-js
check
update-builddeps-package-json
check
update-eslint-rc-js
check
update-gitignore
check
update-merge-request-template
check
update-prettier-ignore
check
update-pyproject-toml
check
update-renovate-json
check
update-tox-ini
part
backend
Backend (view code, models, logic, etc.)
part
ci
part
docs
Issue or addition to the documentation
part
frontend
Frontend (templates, etc.)
part
i18n
Translation or internationalisation issue
part
non-technical
Non-technical (policy, maintenance, etc.) issue or discussion
part
packaging
Issue concerning the packaging of AlekSIS and components
prio
1
Priority High
prio
2
Priority Medium
prio
3
Priority Low
release-mr-5.x
size
large
size
medium
size
small
source
customer
Requested by a customer or affiliated user
source
customer::fsmw
source
customer::fss
source
customer::teckids
source
downstream
Issue or merge request from other projects using AlekSIS or parts of it
type
breaking
type
bug
Bug
type
feature
New feature
type
refactoring
workflow
blocked
Issue is blocked by another issue
workflow
confirmed
The bug is reproducible and will be fixed
workflow
current-todo
workflow
discussing
Needs to be discussed before implementation
workflow
new-app
Requires new AlekSIS app, which has to be created
workflow
wontfix
The bug is not reproducible or the feature was decided against
No labels
Security
TeX
auto-update
board
done
board
ready
board
todo
check
delete-eslint-rc-js
check
update-builddeps-package-json
check
update-eslint-rc-js
check
update-gitignore
check
update-merge-request-template
check
update-prettier-ignore
check
update-pyproject-toml
check
update-renovate-json
check
update-tox-ini
part
backend
part
ci
part
docs
part
frontend
part
i18n
part
non-technical
part
packaging
prio
1
prio
2
prio
3
release-mr-5.x
size
large
size
medium
size
small
source
customer
source
customer::fsmw
source
customer::fss
source
customer::teckids
source
downstream
type
breaking
type
bug
type
feature
type
refactoring
workflow
blocked
workflow
confirmed
workflow
current-todo
workflow
discussing
workflow
new-app
workflow
wontfix
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference
aleksis/AlekSIS-Core!3895
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "1533-notifications-reminders-for-events-todos"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Information and screenshots
No further information have been provided.
Checklist
tox -e reformat,lintusedapps.pyandREADME.rstup-to-dateBackend checklist
Frontend checklist (mandatory with ~"part::frontend")
Closes #1533
assigned to @yuha
added 1 commit
ad57723b- Implement configurable alarms / notifications for group and personal events in modelsCompare with previous version
added 1 commit
e2c24593- WIP: frontend implementation of alarm deltasCompare with previous version
added 2 commits
f37192f2- Add new field to schema63f83f34- Add custom timedelta choicesCompare with previous version
added 1 commit
aeb00ec0- Use autocompleteCompare with previous version
added 1 commit
724781d1- Use custom field in objectSchemasCompare with previous version
added 1 commit
090fab57- Correctly parse / write timedeltas in frontendCompare with previous version
added 1 commit
a7be9290- Use correct scalar type and parsing / encodingCompare with previous version
added 1 commit
2e7f7c10- Add display component for alarmCompare with previous version
added 3 commits
eabf21a1- Make CollapseTriggerButton outlinede62da785- Use numeric inputs in EventAlarmTriggerDeltaField093c88d3- Add some extra margin in recurrence collapse buttonCompare with previous version
added 1 commit
18b9d090- Fix typoCompare with previous version
added 1 commit
de86f840- Rescale durationsCompare with previous version
added 1 commit
34b7f650- Adapt for multiple alarms per eventCompare with previous version
added 1 commit
46ba2259- Refactor use of PersonalEventMixinCompare with previous version
added 1 commit
56f1c004- Correctly use many_to_many_extras for PersonalEvent mutationsCompare with previous version
added 1 commit
fd2c22c8- Re-add inheritance for PE mixinCompare with previous version
added 1 commit
746229eb- Adapt migrationsCompare with previous version
added 1 commit
0ba84c84- Fix importsCompare with previous version
added 1 commit
f128ef7a- Add todosCompare with previous version
added 1 commit
754fbf03- Adapt fieldsCompare with previous version
added 1 commit
5afe6ec8- Fix v-model referenceCompare with previous version
added 1 commit
6cf6488d- Improve syntaxCompare with previous version
added 1 commit
c7317e15- Fix assignment syntaxCompare with previous version
added 1 commit
fdc15c5d- Fix importCompare with previous version
added 1 commit
2ba09206- Fix wrong field namingCompare with previous version
added 2 commits
07ab4333- Fix expanded propertyfed04ac0- Drop importCompare with previous version
added 1 commit
1fa410e8- Use computed for largestIntegerUnitCompare with previous version
added 2 commits
6b91b41d- Fix unit shifting2e833501- Add keyCompare with previous version
added 1 commit
f3c0158f- Add add alarms buttonCompare with previous version
added 1 commit
a8c14f9b- Fix unit settingCompare with previous version
added 1 commit
ac711cf8- Fix add alarms button not showing upCompare with previous version
added 1 commit
e42b7002- Add translation keyCompare with previous version
added 1 commit
883ab71e- Add personal event alarm mutationsCompare with previous version
added 1 commit
b3d90b16- Explicitely use correct typeCompare with previous version
added 1 commit
796081cc- Drop event field in mutationsCompare with previous version
added 1 commit
90185f32- Fix m2m extras behaviour / add todoCompare with previous version
added 1 commit
cee58a1b- Correctly read/write alarmsCompare with previous version
added 1 commit
1d7d0f34- Change to many_to_one_extrasCompare with previous version
added 1 commit
6b6554fc- WIP: Use before_create_obj to inject parent object / add some todo commentsCompare with previous version
added 1 commit
ef61d569- Fix alarms field definition and add resolverCompare with previous version
mentioned in issue AlekSIS-App-Chronos#304
added 5 commits
8ad83cda- Drop unused hookb90bc0f8- Move event field of CalendarAlarm modela1461b38- Add migrationna5014eb5- Fix migration0d2ef358- Adapt announcement field referenceCompare with previous version
added 1 commit
1f11f057- Drop importCompare with previous version
added 1 commit
785305ba- Use TimeDelta typeCompare with previous version
added 1 commit
e6872830- Simplify resolverCompare with previous version
requires https://github.com/trmdy/graphene-django-cud/pull/152
added 1 commit
f4d4e95f- Add models for GroupEvent and PersonalTodo alarmsCompare with previous version
added 1 commit
6edc70f7- Add migration for PersonalTodoAlarm and GroupEventAlarmCompare with previous version
added 1 commit
160ee2e6- Add link and routes to event notificationsCompare with previous version
added 1 commit
15bb98cf- Add proper title and description text for personal event alarm notificationsCompare with previous version
TODO: discuss how to handle recurring events and their linked notifications with fixed, absolute timestamps? (adapt alarm -> notification sync function so that multiple notifications get created?)
added 1 commit
0158ce5a- Add title and description templates for GroupEvent and PersonalTodo notificationsCompare with previous version
added 1 commit
33a78242- Fix alarms displayCompare with previous version
added 1 commit
524dc7d4- Add types / migrations for group and personal todo alarmsCompare with previous version
added 1 commit
b850adbd- Add m2o extras handling for group event and personal todo alarmsCompare with previous version
added 1 commit
27b35ef0- Add alarms field to personal todo FE typeCompare with previous version
added 2 commits
66311c62- Move meta parsingf166fd78- Add alarms field in personal todo metaCompare with previous version
still waiting
left review comments
View command line instructions
Manual merge helper
Use this merge commit message when completing the merge manually.
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.