add smtp mailer settings #470
No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
high priority
invalid
L
low priority
M
medium priority
needs refinement
optional
question
S
UX research
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: local-it/mitgliederverwaltung#470
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/308-web-form"
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?
Description of the implemented changes
The changes were:
Goal: Add a configurable public join flow (double opt-in, join requests) and admin approval UI, plus configurable SMTP for transactional emails (join confirmation, password reset, etc.) with a test-email action in Global Settings.
What has been changed?
Public join flow & join requests
/join): Unauthenticated form; admin-configurable fields (member + custom); submit creates aJoinRequestin statuspending_confirmation; confirmation email with link; after link click, status becomessubmitted. Seedocs/onboarding-join-concept.md.Mv.Mailerandmail_from/0.MvWeb.JoinRateLimit).mix join_requests.cleanup_expiredfor expired confirmation tokens.JoinFormEnabled(only when join form is enabled in settings);CheckPagePermissionupdated for new routes./join, confirm route, and (admin) join-request list/show routes.Admin: join request approval UI
SMTP configuration (Global Settings)
smtp_from_name,smtp_from_email). ENV overrides Settings (same pattern as OIDC/Vereinfacht). Seedocs/smtp-configuration-concept.md.smtp_*,mail_from_name/0,mail_from_email/0, and*_env_set?/0; password from ENV,SMTP_PASSWORD_FILE, or Settings (sensitive).mail_from/0from ENV or Settings;send_test_email/1with classified errors (:sender_rejected,:auth_failed,:tls_failed, etc.);smtp_config/0for Settings-only SMTP; TLS options for OTP 27 (e.g. self-signed certs).deliver/1instead ofdeliver!/1; log delivery failures, do not crash caller.smtp_from_name/smtp_from_emailon settings table.Other
docs/smtp-configuration-concept.md,docs/onboarding-join-concept.md; updates toCODE_GUIDELINES.md(Email §3.11, Gettext merge workflow in §3.12),docs/feature-roadmap.md,docs/page-permission-route-coverage.md, development log.runtime.exsSMTP andmail_fromfrom ENV;test.exsmailer adapter; release/docker-entrypoint and Drone adjustments as needed.Definition of Done
Code Quality
Accessibility
Testing
Additional Notes
MAIL_FROM_EMAIL(and optionallyMAIL_FROM_NAME) to match the SMTP user if using ENV; otherwise configure “Sender email (From)” in Global Settings. Sender address must usually match the SMTP account to avoid 553 rejections.mix gettext.extract --mergeif new strings were added on main; see CODE_GUIDELINES §3.12 for merge conflicts in.po/.pot.