f681ca98b2
feat: adds country to member edit
2026-02-24 09:35:27 +01:00
cecb547bd6
bug: adds membership startdate column
continuous-integration/drone/push Build is failing
2026-02-17 17:54:25 +01:00
911f308a67
fix: address review comments
continuous-integration/drone/push Build is failing
continuous-integration/drone/promote/production Build is passing
2026-02-17 15:30:23 +01:00
6831ba046f
Merge remote-tracking branch 'origin/main' into feature/member-overview-groups
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
2026-02-16 15:57:57 +01:00
5fd7c0e7f6
feat: improve groups fillter
continuous-integration/drone/push Build is failing
2026-02-13 17:45:51 +01:00
dce4b2cf33
feat: add groups to member overview
2026-02-13 09:28:16 +01:00
fd1f4d02d5
style: fix styling
2026-02-11 13:55:02 +01:00
36e57b24be
Merge branch 'main' into feature/export_csv
continuous-integration/drone/push Build is failing
2026-02-06 08:02:05 +01:00
9b9e7ec995
fix: sorting and filter for export
2026-02-05 15:03:25 +01:00
c82f4b7fd7
feat: add csv export
continuous-integration/drone/push Build is failing
2026-02-04 16:40:41 +01:00
a4b13cef49
Member LiveViews: row_id and data-testid for actions
...
Table row_id for scoped selectors; data-testid on New/Edit/Delete.
2026-02-03 17:16:11 +01:00
505e31653a
Apply UI authorization to Member LiveViews (Index and Show)
...
Gate New Member button, Edit and Delete links with can?/3.
Edit button on Member Show visible only when user can update the member.
2026-02-03 16:56:51 +01:00
f996aee6b2
feat: add new filter component to members view
continuous-integration/drone/push Build is passing
2026-01-21 00:47:01 +01:00
38d106a69e
fix: exit date as default hidden column
2026-01-07 12:14:41 +01:00
a5a1cb7fdd
style: remove display name helper in member overview for UX
continuous-integration/drone/push Build is failing
2026-01-07 09:55:06 +01:00
b59a4ef61a
feat: adds email as fallback for name in member details
continuous-integration/drone/push Build is failing
2026-01-06 16:43:13 +01:00
dc8271451d
feat: adapt UI
2026-01-02 16:20:23 +01:00
77ac3d1b18
fix: remove duplicate toggle button in table header
...
Keep only the toggle button in toolbar for better UX.
2025-12-26 21:41:22 +01:00
f25e198b0e
Update cycle button styling and text
...
Make cycle button match PaymentFilterComponent and Columns button style.
Show 'Current Cycle Payment Status' or 'Last Cycle Payment Status'
based on active state. Button shows active state when current cycle
is selected.
2025-12-18 15:11:03 +01:00
adb107e6a4
Rename cycle button to Show Last/Current Cycle Payment Status
...
Update button text and styling to match PaymentFilterComponent.
Button now shows active state when filter is applied.
2025-12-18 15:11:02 +01:00
c65b3808bf
Refactor filters to use cycle status instead of paid field
...
Replace paid_filter with cycle_status_filter that filters based on
membership fee cycle status (last or current cycle). Update
PaymentFilterComponent to use new filter with options All, Paid, Unpaid.
Remove membership fee status filter dropdown. Extend
filter_members_by_cycle_status/3 to support both paid and unpaid filtering.
Update toggle_cycle_view to preserve filter state in URL.
2025-12-18 15:11:02 +01:00
098b3b0a2a
Remove paid field from members
...
Remove paid field from Member resource, database migration,
tests, seeds, and UI. This field is no longer needed as payment
status is now tracked via membership fee cycles.
2025-12-18 15:11:02 +01:00
99dc17bf4d
feat: add membership fee status column to member list
...
- Add status column showing last completed or current cycle status
- Add toggle to switch between last/current cycle view
- Add color coding (green/red/gray) for paid/unpaid/suspended
- Add filters for unpaid cycles in last/current cycle
- Efficiently load cycles to avoid N+1 queries
2025-12-18 15:08:31 +01:00
be6ea56860
fix: improve mailto BCC encoding
...
Use URI.encode_www_form() instead of URI.encode() for mailto query parameters.
This is the safer choice for query parameter encoding.
Add comment about mailto URL length limits that vary by email client.
2025-12-16 14:51:42 +01:00
fb91f748c2
perf: optimize member index selection calculations
...
Calculate selected_count, any_selected? and mailto_bcc once in assigns
instead of recalculating Enum.any? and Enum.count multiple times in template.
This improves render performance and makes the template code more readable.
2025-12-16 14:50:52 +01:00
4e86351e1c
feat: disable email buttons instead hide them
2025-12-16 14:35:00 +01:00
1b06f885bf
Merge branch 'main' into feature/223_member_checkbox
continuous-integration/drone/push Build is failing
2025-12-08 11:43:54 +01:00
c17445975c
Merge branch 'main' into feature/209_hide_field_dropdown
continuous-integration/drone/push Build is failing
2025-12-03 14:57:56 +01:00
c9678231f9
fix: hide paid column and add tests
continuous-integration/drone/push Build was killed
2025-12-03 14:56:39 +01:00
422cf37a1e
Merge pull request 'Fix UI issues' ( #242 ) from ui-fixes into main
...
continuous-integration/drone/push Build is failing
Reviewed-on: #242
Reviewed-by: simon <s.thiessen@local-it.org>
2025-12-03 14:30:13 +01:00
8e4f1ba674
feat: add col_click attribute to table component for checkbox column
...
- Add col_click slot attribute to table component that overrides row_click
- Clicking anywhere in the checkbox column now toggles the checkbox
- Clicking other columns still navigates to member details
Closes #223
2025-12-03 14:24:10 +01:00
e6c5a58c65
Show dates in european format
continuous-integration/drone/push Build was killed
2025-12-03 14:20:14 +01:00
f0613fe1e5
Merge branch 'main' into feature/209_hide_field_dropdown
continuous-integration/drone/push Build is failing
2025-12-03 12:52:12 +01:00
125f9ae77b
fix: mailto formatting
continuous-integration/drone/push Build is passing
2025-12-03 10:14:57 +01:00
671e6ce804
feat: add payment status filter and paid column to member list
...
Add PaymentFilterComponent dropdown and colored paid column. Filter supports URL bookmarking and combines with search/sort.
2025-12-02 15:55:23 +01:00
0fb43a0816
feat: adds field visibility dropdown live component
continuous-integration/drone/push Build is failing
2025-12-02 15:00:09 +01:00
dce2053ce7
formatting and refactor member fields constant
2025-12-02 14:17:53 +01:00
e81aecce48
feat: adds member visibility to live view
2025-12-02 14:17:04 +01:00
39d2cb7820
refactor: improve email copy with MapSet, RFC 5322 commas, and cond
...
continuous-integration/drone/push Build is passing
Performance optimization, RFC-compliant separator, better tests
2025-12-02 12:10:59 +01:00
ba78a6ac7a
feat: improve email copy UX with colored alerts and mailto button
...
continuous-integration/drone/push Build is passing
- Green success alert for copied confirmation
- Blue info alert with BCC privacy tip
- Mailto button opens email program with BCC recipients
- Alerts stack vertically instead of overlapping
2025-12-02 11:42:11 +01:00
e2ace3d2a8
feat: add bulk email copy for selected members ( #230 )
...
continuous-integration/drone/push Build is passing
Copy selected members' emails to clipboard in 'First Last <email>' format
2025-12-02 10:02:58 +01:00
d039e4bb7d
formatting and refactor member fields constant
continuous-integration/drone/push Build is passing
2025-12-02 10:02:52 +01:00
7f0da693ee
feat: adds member visibility to live view
continuous-integration/drone/push Build is failing
2025-12-02 09:23:37 +01:00
e7c4a4f62f
feat: add dynamic cols to member overview and checkbox to form
2025-12-01 08:50:06 +01:00
d9e48a37d2
feat: sort header for members list
2025-10-30 16:42:19 +01:00
d40bc0bb82
Merge remote-tracking branch 'origin/main' into 170-userdata-for-profile-button
continuous-integration/drone/push Build is failing
2025-09-29 16:07:57 +02:00
e3dd333e89
feat: add userdata for profile button #170
2025-09-29 15:34:00 +02:00
78588cbad9
feat: adds SearchBar Live Component
2025-09-17 14:36:13 +02:00
50c80eed38
chore: updated listing member translation
continuous-integration/drone/push Build is passing
2025-07-21 15:22:42 +02:00
bbf760c2b5
feature(memberslist): added columns to memberslist and added selection and sortable header
2025-07-21 15:13:03 +02:00