Commit graph

491 commits

Author SHA1 Message Date
045f0dc603 Merge pull request 'chore(deps): update dependency just to v1.45.0' (#269) from renovate/asdf-tool-versions into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #269
2025-12-11 18:42:16 +01:00
Renovate Bot
f480c12bb0 chore(deps): update dependency just to v1.45.0
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 18:39:45 +01:00
2d259e8083 Merge pull request 'chore(deps): update postgres to v17.7' (#253) from renovate/postgres into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #253
2025-12-11 17:05:08 +01:00
15bc2223f0
chore: update prod postgres to version 17.7
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 16:47:02 +01:00
Renovate Bot
110e7f6cbd
chore(deps): update postgres to v17.7 2025-12-11 16:45:56 +01:00
3710d70024 Merge pull request 'Member Fee Concept closes #210' (#221) from docs/210_payment-concept into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #221
Reviewed-by: carla <carla@noreply.git.local-it.org>
2025-12-11 15:54:29 +01:00
3fd8483231 docs: small changes based on review
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 15:52:32 +01:00
f5ef16ec20 docs: change wording
contribution -> membership fee
period -> cycle
2025-12-11 15:52:32 +01:00
85a66f800e Merge pull request 'chore(deps): update dependency gettext to v1' (#185) from renovate/major-mix-dependencies into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #185
2025-12-11 15:28:45 +01:00
Renovate Bot
dbcfe6a29f chore(deps): update dependency gettext to v1
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 14:56:19 +01:00
0a2632102c Merge pull request 'chore(deps): update mix dependencies' (#249) from renovate/mix-dependencies into main
Some checks failed
continuous-integration/drone/push Build is failing
Reviewed-on: #249
2025-12-11 14:55:51 +01:00
9dba4d1019
fix: credo warnings
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 14:21:40 +01:00
Renovate Bot
1c60bc77b4 chore(deps): update mix dependencies
Some checks reported errors
continuous-integration/drone/push Build was killed
2025-12-11 14:17:40 +01:00
d5ac168add Merge pull request 'Implements search for custom fields closes #196' (#266) from feature/196_search_custom_fields into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #266
2025-12-11 14:07:40 +01:00
00fe471bc0 fix: custom field substring search - pass id as parameter
All checks were successful
continuous-integration/drone/push Build is passing
Fragment 'member_id = id' did not resolve correctly. Now passes id as
Ash expression. Also changed LIKE to ILIKE for case-insensitive search.
2025-12-11 14:04:13 +01:00
ca5fad0dcc
security: add input sanitization for search queries
All checks were successful
continuous-integration/drone/push Build is passing
- Escape SQL LIKE wildcards (% and _) to prevent pattern injection
- Limit search query length to 100 characters
- Apply sanitization in both :search action and linking filters
- FTS and fuzzy search use unsanitized query (wildcards not special there)
2025-12-11 13:49:07 +01:00
1ec6188884
perf: remove custom field search from user-linking autocomplete
Custom field LIKE queries on JSONB are expensive (no index).
User linking only needs name/email search for autocomplete.
Custom fields are still searchable via main member search (uses FTS index).
Remove unnecessary credo:disable as function complexity is now acceptable.
2025-12-11 13:49:07 +01:00
062dad99fb
refactor: remove unused fields parameter from fuzzy_search API
The fields parameter was accepted but never used in the :search action.
Simplify API to only accept the query parameter.
Update @doc to reflect the actual functionality.
2025-12-11 13:49:07 +01:00
12f95c1998
docs: document fuzzy search similarity threshold strategy
Explain the two-tier matching approach:
- % operator with server-wide threshold (0.3) for fast index scans
- similarity functions with configurable threshold (0.2) for edge cases
Add rationale for threshold value based on German name testing
2025-12-11 13:49:06 +01:00
add855c8cb
refactor: remove redundant ilike filter in build_substring_filter
contains(city, ^query) already produces ILIKE '%query%'
ilike(city, ^pattern) with pattern="%query%" is identical
2025-12-11 13:49:06 +01:00
265e976d94
fix: simplify JSONB extraction - remove redundant operators
- Replace 4 LIKE checks with 2 in build_custom_field_filter
- Simplify CASE blocks in migration trigger functions
- ->> operator always returns text, no need for -> + ::text fallback
- Performance improvement: 50% fewer LIKE operations
2025-12-11 13:49:05 +01:00
014ef04853 docs: updated docs
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 13:44:30 +01:00
8c361cfc88 feat: updates query in member ressource 2025-12-11 13:44:30 +01:00
c2302c5861 chore: adds migration for ts vector custom field 2025-12-11 13:44:30 +01:00
a729d81bb9 test: adds tests for custom field search 2025-12-11 13:44:30 +01:00
37495095c9 Merge pull request 'chore(deps): update renovate/renovate docker tag to v42' (#257) from renovate/renovate-renovate-42.x into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #257
2025-12-11 13:26:13 +01:00
Renovate Bot
9150188922 chore(deps): update renovate/renovate docker tag to v42
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 02:30:06 +00:00
9ff7d7d17b Merge pull request 'Fix small UI issues closes #220' (#259) from feature/220_ui_issues_2 into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #259
2025-12-11 02:13:29 +01:00
b1f6d29ca1
Merge remote-tracking branch 'origin/main' into feature/220_ui_issues_2
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 01:49:12 +01:00
a8cf6e1b18
chore: update gettext
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 01:04:08 +01:00
720f640229
fix: test
Some checks failed
continuous-integration/drone/push Build is failing
2025-12-11 00:55:50 +01:00
1675d66b67
translate field names for visibility dropdown
Some checks failed
continuous-integration/drone/push Build is failing
2025-12-11 00:51:26 +01:00
acd6d79efe Merge pull request 'Perform migrations in entrypoint' (#268) from perform-migration-on-startup into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #268
Reviewed-by: moritz <moritz@noreply.git.local-it.org>
2025-12-10 23:36:12 +01:00
280f024602 run migrations via entrypoint script
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-10 23:26:34 +01:00
18641bb6ea Merge pull request 'UX - Avoid opening member by clicking the checkbox closes #233' (#250) from feature/223_member_checkbox into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #250
Reviewed-by: carla <carla@noreply.git.local-it.org>
2025-12-08 12:11:47 +01:00
c3e95ca711 formatting
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-08 11:51:45 +01:00
1b06f885bf Merge branch 'main' into feature/223_member_checkbox
Some checks failed
continuous-integration/drone/push Build is failing
2025-12-08 11:43:54 +01:00
8512be0282 feat: reuse form_section in settings
Some checks failed
continuous-integration/drone/push Build is failing
2025-12-04 12:32:24 +01:00
89b02aeacf Merge branch 'main' into feature/220_ui_issues_2
Some checks failed
continuous-integration/drone/push Build is failing
2025-12-04 12:25:46 +01:00
d671103ba5 chore: update translation
Some checks failed
continuous-integration/drone/push Build is failing
2025-12-03 22:18:40 +01:00
94de429529 style: translate fieldtypes and payment as button 2025-12-03 22:18:18 +01:00
9cda832b82
fix: request scopes email and profile
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-03 22:02:23 +01:00
613a5f2643
feat: support email scope to retrieve oidc info
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-03 21:51:12 +01:00
3d4020cf27 Merge pull request 'Fix oidc for authentik' (#258) from fix-oidc-for-authentik into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #258
Reviewed-by: carla <carla@noreply.git.local-it.org>
2025-12-03 20:52:20 +01:00
e03693ada5
style: fix formatting
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-03 20:51:26 +01:00
f0391d3fef
fix: oidc with authentik not working
Some checks failed
continuous-integration/drone/push Build is failing
2025-12-03 20:34:33 +01:00
702eebd110 Merge pull request 'Implement dropdown to show/hide columns in member overview closes #209' (#240) from feature/209_hide_field_dropdown into main
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #240
Reviewed-by: moritz <moritz@noreply.git.local-it.org>
2025-12-03 19:01:13 +01:00
5ae4450444
Merge branch 'main' into feature/209_hide_field_dropdown
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-03 18:58:40 +01:00
cf6a108049 refactor: DRY - use Mv.Constants.custom_field_prefix() instead of string literals
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-03 18:47:27 +01:00
fabfe64468 refactor: rename custom_fields/member_fields to extract_*_field_keys for clarity 2025-12-03 18:44:17 +01:00