Commit graph

1277 commits

Author SHA1 Message Date
75567a1c0a
Clear Vereinfacht ENV in test_helper so tests never hit real API 2026-02-19 00:54:01 +01:00
361e33adaf
Vereinfacht: update existing contact when found by email
Before saving contact_id to member, sync current data to the
existing contact so Vereinfacht stays up to date.
2026-02-19 00:16:04 +01:00
62000562f0
Vereinfacht client: find by email in response, no retries in test
API does not allow filter[email]; fetch list and match client-side.
Disable Req retries in test for fast failure and less log noise.
2026-02-19 00:15:58 +01:00
4cdd187b43
Gettext: new Vereinfacht UI strings and German translations
(set), Leave blank to keep current, env hint; DE msgstr added.
2026-02-19 00:15:52 +01:00
329c2d50ec
Global settings: API key redaction and per-field ENV
Never put API key in form/DOM; show (set) badge, drop blank on save.
Per-field disabled when ENV set; save button only when not all from ENV.
2026-02-19 00:15:46 +01:00
e864dee8fe
Config: per-field Vereinfacht ENV helpers
vereinfacht_api_url_env_set?, vereinfacht_api_key_env_set?,
vereinfacht_club_id_env_set? for read-only Settings fields when set.
2026-02-19 00:15:37 +01:00
fb7d7589bb
Add Vereinfacht ENV vars to .env.example
VEREINFACHT_API_URL, VEREINFACHT_API_KEY, VEREINFACHT_CLUB_ID
with short comment that they override Settings when set.
2026-02-19 00:15:28 +01:00
9db5b7f292
Vereinfacht: sync linked member only when email or member changed
Run SyncLinkedMemberAfterUserChange only when email or member
relationship changed to avoid unnecessary API calls.
2026-02-19 00:15:17 +01:00
81f62a7c85
fix(a11y): WCAG 2 AA contrast and keyboard access
All checks were successful
continuous-integration/drone/push Build is passing
2026-02-18 22:52:29 +01:00
f168d3f093
test(vereinfacht): add tests and scope README
Some checks failed
continuous-integration/drone/push Build is failing
- Config, Client, SyncContact, Vereinfacht module tests (no real API)
- vereinfacht_test_README: document test scope
2026-02-18 22:31:30 +01:00
5628de7bc6
feat(vereinfacht): gettext and German translations
- POT/PO: Vereinfacht UI and API error message strings
2026-02-18 22:31:24 +01:00
d0fa3991f7
feat(vereinfacht): member form flash and show page
- Form: show Vereinfacht sync warning after save via SyncFlash
- Show: load API debug response; MembershipFees: contact ID, link, no-contact warning
2026-02-18 22:31:19 +01:00
81bcd2bc4d
feat(vereinfacht): Settings UI and bulk sync
- GlobalSettingsLive: Vereinfacht section, sync button, last sync result
- Test: Vereinfacht Integration section visible
2026-02-18 22:30:29 +01:00
9808dba007
feat(vereinfacht): sync linked member after user email/link changes
- SyncLinkedMemberAfterUserChange on update, create_user, update_user,
  admin_set_password, link_oidc_id, register_with_rauthy
2026-02-18 22:30:21 +01:00
3a61699dd2
feat(vereinfacht): add client, sync flash and SyncContact change
- Application: create SyncFlash ETS table on start
- Vereinfacht: Client, SyncFlash, sync_member, format_error, sync_members_without_contact
- SyncContact change on Member create_member and update_member
- Member: attribute vereinfacht_contact_id, internal action set_vereinfacht_contact_id
2026-02-18 22:30:15 +01:00
b775f5f5c4
feat(vereinfacht): add DB schema, config and setting attributes
- Migrations: vereinfacht_contact_id on members, vereinfacht_* on settings
- Mv.Config: Vereinfacht ENV/Settings helpers, vereinfacht_configured?, contact_view_url
- Setting: vereinfacht_api_url, api_key, club_id
2026-02-18 22:30:03 +01:00
adea380d86 Merge pull request 'Include group names in member search closing #375' (#426) from feature/groups-search-integration into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #426
2026-02-18 13:28:49 +01:00
84f97c12f8 Merge branch 'main' into feature/groups-search-integration
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/promote/production Build is failing
2026-02-18 13:06:26 +01:00
63b8e70e62
fix: adress review comments
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-18 13:05:31 +01:00
f6575319f7
feat: add groups to search vector
Some checks reported errors
continuous-integration/drone/push Build was killed
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 12:47:23 +01:00
e99dbdfb82 Merge pull request 'Fixes empty custom fields while turning back in settings closes #413' (#425) from bug/413_turn_back_custom into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #425
2026-02-17 19:30:11 +01:00
b18f895939 chore: rename ImportExport module to Import
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-17 18:59:18 +01:00
ce542eae3e fix: missing actor on tturning back from edit 2026-02-17 18:59:18 +01:00
2b1f49d60a Merge pull request 'Implements missing member columns closes #416 and #419' (#424) from bug/416_member_columns into main
Some checks failed
continuous-integration/drone/push Build is failing
Reviewed-on: #424
2026-02-17 18:17:16 +01:00
49bd2eee0b i18n: update translations
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-17 17:59:30 +01:00
cecb547bd6 bug: adds membership startdate column
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-17 17:54:25 +01:00
3f07de1276 Merge pull request 'Add groups to member detail view closes #374' (#423) from feature/374-member-detail-groups into main
Some checks failed
continuous-integration/drone/push Build is failing
Reviewed-on: #423
2026-02-17 15:50:44 +01:00
911f308a67
fix: address review comments
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/promote/production Build is passing
2026-02-17 15:30:23 +01:00
b1a9eb8b1d
feat: add groups to member detail view #374
All checks were successful
continuous-integration/drone/push Build is passing
2026-02-17 14:15:43 +01:00
46f9094e1f
style: fix formatting
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-17 12:16:15 +01:00
2e4d14dd60
test: add tdd tests for groups in member detail view #374
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-17 12:15:46 +01:00
7b13d03bb7 Merge pull request 'Add groups to membership overview closes #373' (#422) from feature/member-overview-groups into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #422
2026-02-16 17:20:53 +01:00
6831ba046f
Merge remote-tracking branch 'origin/main' into feature/member-overview-groups
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-16 15:57:57 +01:00
ace59bbae6
fix: implement review comments
All checks were successful
continuous-integration/drone/push Build is passing
2026-02-16 15:30:16 +01:00
49ffdcade8 Merge pull request 'Implements pdf export closes #286' (#418) from feature/286_export_pdf into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #418
2026-02-16 13:41:20 +01:00
65581d0639
style: fix formatting
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-13 18:26:14 +01:00
1133ffb28f
fix: test
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-13 18:18:15 +01:00
5fd7c0e7f6
feat: improve groups fillter
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-13 17:45:51 +01:00
22458cd52b Merge branch 'main' into feature/286_export_pdf
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-13 17:40:39 +01:00
3d53bd0247 i18n: add translation
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-13 17:27:02 +01:00
baa288bff3 refactor 2026-02-13 17:21:14 +01:00
3322efcdf6
test: adapt earlier tests to groups implementation
Some checks failed
continuous-integration/drone/push Build is failing
2026-02-13 09:48:09 +01:00
3b87db6ad1 test: add tdd tests for group integration in member view #373 2026-02-13 09:39:53 +01:00
dce4b2cf33
feat: add groups to member overview 2026-02-13 09:28:16 +01:00
b49e795641 Merge pull request 'Statistic Page closes #310' (#417) from feature/statistics into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #417
Reviewed-by: carla <carla@noreply.git.local-it.org>
2026-02-12 19:40:21 +01:00
f08c5d59f3 StatisticsLive: load statistics only in handle_params
Some checks reported errors
continuous-integration/drone/push Build was killed
continuous-integration/drone/promote/production Build is passing
2026-02-12 19:35:48 +01:00
004336fea3 Statistics test: guarantee empty members then assert is_nil for first_join_year 2026-02-12 19:35:48 +01:00
bd4dc86cca StatisticsLiveTest: explicit auth (read_only) and redirect test for own_data 2026-02-12 19:35:48 +01:00
7828fc729f Gettext: add DE translation for Fee types could not be loaded 2026-02-12 19:35:48 +01:00
3eead112b0 Statistics tests: strict first_join_year nil, fee_type_id in URL 2026-02-12 19:35:48 +01:00