03d91d4029
fix tests
continuous-integration/drone/push Build was killed
continuous-integration/drone/promote/production Build is failing
2026-03-11 11:40:32 +01:00
28f97184b3
Merge branch 'main' into feature/308-web-form
continuous-integration/drone/push Build is passing
2026-03-11 02:05:13 +01:00
86d9242d83
feat: add approval ui for join requests
continuous-integration/drone/push Build is passing
2026-03-11 02:04:03 +01:00
50433e607f
test: add tests for approval ui
2026-03-10 23:21:57 +01:00
f79c9ac515
Merge pull request 'add public join form' ( #466 ) from feature/308-web-form into main
...
continuous-integration/drone/push Build is passing
Reviewed-on: #466
2026-03-10 23:08:26 +01:00
021b709e6a
refactor: address review comments for join view
continuous-integration/drone/push Build was killed
continuous-integration/drone/promote/production Build is passing
2026-03-10 22:54:41 +01:00
f430762555
test: re-enable profile avatar test for first letter of email
2026-03-10 20:17:28 +01:00
137dca523a
test: remove skipped linked-member full-router integration tests
2026-03-10 20:17:28 +01:00
b04d59e3c4
test: remove placeholder test for non-existent member IDs
2026-03-10 20:17:27 +01:00
c264ce122d
test: remove skipped custom field slug lookup test
2026-03-10 20:17:27 +01:00
f1d0526209
feat: add join form
continuous-integration/drone/push Build is failing
2026-03-10 18:25:17 +01:00
eadf90b5fc
test: add tests for join request page
2026-03-10 17:18:14 +01:00
21812542ad
refactor: address review comments for join request settings
continuous-integration/drone/push Build was killed
continuous-integration/drone/promote/production Build is passing
2026-03-10 16:47:38 +01:00
05e2a298fe
feat: add accessible drag&drop table component
continuous-integration/drone/push Build is passing
2026-03-10 15:40:28 +01:00
fa738aae88
feat: add join form settings
continuous-integration/drone/push Build is failing
2026-03-10 14:29:49 +01:00
b7a83d9298
test: add tests for join form settings
2026-03-10 12:18:36 +01:00
6385fbc831
feat: add join confirmation and mail templating
continuous-integration/drone/push Build is passing
2026-03-09 18:15:12 +01:00
3672ef0d03
test: add tests for join mail confirmation
continuous-integration/drone/push Build is failing
2026-03-09 17:02:30 +01:00
a41d8498ac
refactor: apply review changes to joinrequest
continuous-integration/drone/push Build is passing
2026-03-09 15:36:19 +01:00
2515a679b8
feat: add join request resource
continuous-integration/drone/push Build is passing
2026-03-09 14:44:45 +01:00
2a04fad4fe
test: add tests for join request
2026-03-09 14:06:22 +01:00
fc7b035123
CSV export: robust apply_export_filters, single custom_field_ids_union, string boolean_filters, more tests
continuous-integration/drone/push Build was killed
2026-03-04 21:15:54 +01:00
d71d5881cf
CSV export: apply cycle_status_filter and boolean_filters when exporting all
2026-03-04 21:15:54 +01:00
01b9ebd74b
Vereinfacht client: email normalization, multi-match warning, Bypass tests, doc note
...
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
- Normalize email (trim + downcase) before filter lookup
- Log warning when API returns multiple contacts for same email
- Add Bypass tests for find_contact_by_email (query params, empty/single response parsing)
- Document vereinfacht_required_field? as legacy/unused in vereinfacht-api.md
- Add bypass dependency (dev+test) for HTTP stubbing
2026-03-04 20:55:59 +01:00
96ca857e06
Vereinfacht API: use filter for contact lookup, drop extra required fields
...
- find_contact_by_email uses GET with filter[isExternal]=true and filter[email]
- vereinfacht_required_member_fields is now empty (API accepts minimal payload)
2026-03-04 20:21:50 +01:00
6987733707
MembersPDF test: async false and try/after to avoid flakiness
...
Tests that remove the template file run sequentially; restore
template in after block so it is restored even when assertion fails.
2026-03-04 17:12:01 +01:00
f9d6936274
Membership fee settings: row-click table, compact default layout
2026-03-04 16:21:17 +01:00
081e44fc05
fix: add test, accidentally deleted by commit baa288bf
2026-03-04 16:21:16 +01:00
e537f4eb31
Fix Credo Design in test support and member index test
...
Add aliases in fixtures, conn_case, data_case. Use aliases
in index_test.exs. Remove empty placeholder test files.
2026-03-04 16:21:15 +01:00
81ce204502
Fix Credo Readability (strict)
...
- Max line length, implicit try, alias order, zero-arity defs
- String sigils, long comments split; redundant blank lines fixed
2026-03-04 16:21:14 +01:00
7f15909cc6
fix tests
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-26 17:14:47 +01:00
4ac56958b4
feat: keep empty cells consistent empty
continuous-integration/drone/push Build is passing
2026-02-26 13:37:35 +01:00
9751525a0c
fix: datafield edit view was shown alongside othe relements
continuous-integration/drone/push Build is failing
2026-02-26 12:37:52 +01:00
73382c2c3f
Merge branch 'main' into feat/421_accessibility
continuous-integration/drone/push Build is failing
2026-02-26 08:49:55 +01:00
d0b8cb672a
style: consistent badges with sufficient color contrast
2026-02-26 08:33:52 +01:00
c7c082b867
Merge branch 'main' into feat/447_concistency
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-25 16:52:59 +01:00
0f12befd11
style: consistent back button and some translations
continuous-integration/drone/push Build is passing
2026-02-25 16:25:13 +01:00
91cf7cca6a
feat: conistent danger zone delete flow
continuous-integration/drone/push Build is failing
2026-02-25 15:09:37 +01:00
e5a6003ace
feat: sticky memberstable header
continuous-integration/drone/push Build is passing
2026-02-25 14:16:43 +01:00
49fd2181a7
style: highlight selected table and add tooltip
continuous-integration/drone/push Build is failing
2026-02-25 13:16:27 +01:00
02af136fd9
feat: restyle tabs and move delete to edit view
2026-02-25 10:33:30 +01:00
bfc078d5aa
Merge branch 'main' into feat/299_plz
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-24 16:02:56 +01:00
c62b105518
test: updated
continuous-integration/drone/push Build is passing
2026-02-24 16:00:46 +01:00
fae1804fb1
Code review: SignInLive locale fallback, single root + id, CSS scoped to #sign-in-page, remove or-hack, refresh oidc_configured after save, tests assert English only
2026-02-24 15:42:16 +01:00
c8d7dd3e55
Merge branch 'main' into feat/299_plz
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is failing
2026-02-24 15:38:50 +01:00
951d01dc4d
Tests: accept DE or EN in auth controller sign-in and error assertions
continuous-integration/drone/push Build is passing
2026-02-24 15:13:24 +01:00
62b37b9aa2
feat: Datafields page, merge fee types into membership_fee_settings, sidebar
...
- Add /admin/datafields (DatafieldsLive) for member and custom field config
- Remove Memberdata block from GlobalSettingsLive
- Router: drop /membership_fee_types, add new_fee_type and edit_fee_type under membership_fee_settings
- MembershipFeeSettingsLive: fee types table, collapsible examples; Index links updated
- PagePaths: admin_datafields, admin_import; remove membership_fee_types
- Sidebar: order and labels (Basic settings, Datafields, Membership fee settings, Import, Users, Roles)
- Gettext: German translations for sidebar and OIDC
- Tests: datafields and fee routes, permission and form tests updated
2026-02-24 13:58:38 +01:00
8edbbac95f
feat: OIDC configuration in global Settings (ENV or DB)
...
- Add oidc_* attributes to Setting, migration and Config helpers
- Secrets and OidcRoleSyncConfig read from Config (ENV overrides DB)
- GlobalSettingsLive: OIDC section with disabled fields when ENV set
- OIDC role sync tests use DataCase for DB access
2026-02-24 13:58:24 +01:00
339d37937a
Rename OIDC strategy from :rauthy to :oidc, update callback path
...
- Rename AshAuthentication strategy from :oidc :rauthy to :oidc :oidc;
generated actions are now register_with_oidc / sign_in_with_oidc.
- Update config keys (:rauthy → :oidc) in dev.exs and runtime.exs.
- Update default_redirect_uri to /auth/user/oidc/callback everywhere.
- Rename Mv.Accounts helper functions accordingly.
- Update Mv.Secrets, AuthController, link_oidc_account_live and all tests.
- Update docker-compose.prod.yml, .env.example, README and docs.
IMPORTANT: OIDC providers must be updated to use the new redirect URI
/auth/user/oidc/callback instead of /auth/user/rauthy/callback.
2026-02-24 11:51:00 +01:00
9a7608f9a1
Merge branch 'main' into feat/299_plz
continuous-integration/drone/push Build is passing
2026-02-24 11:44:19 +01:00