Membership invitations and order emails #47

Merged
valberg merged 10 commits from benjaoming/membersystem:membership-invite into main 2024-08-14 09:17:30 +00:00
Owner
  • Create invite emails from admin
  • Sign up on special invite form (create password and username)
  • Create email with unpaid orders and payment links
  • Lodge unpaid orders somewhere in UI for visibility
* [x] Create invite emails from admin * [x] Sign up on special invite form (create password and username) * [x] Create email with unpaid orders and payment links * [x] Lodge unpaid orders somewhere in UI for visibility
benjaoming added 2 commits 2024-08-07 12:34:20 +00:00
benjaoming added 2 commits 2024-08-08 06:38:36 +00:00
benjaoming added 1 commit 2024-08-11 22:08:48 +00:00
Send invitation emails and have an invite form to create a membership
Some checks failed
continuous-integration/drone/pr Build is failing
e873df8e2e
benjaoming added 1 commit 2024-08-11 22:12:29 +00:00
Merge branch 'main' of git.data.coop:data.coop/membersystem into membership-invite
Some checks failed
continuous-integration/drone/pr Build is failing
f048e37c07
benjaoming added 1 commit 2024-08-12 20:22:24 +00:00
Send order emails via admin action
Some checks failed
continuous-integration/drone/pr Build is failing
3e66a8fd32
benjaoming added 1 commit 2024-08-12 20:38:10 +00:00
Add a link for unpaid orders, disable the "zen" of not being able to code fast
Some checks failed
continuous-integration/drone/pr Build is failing
04f9ac7935
Author
Owner

Så! Nu fungerer det at sende ordre-emails fra admin, og der er tilføjet et lille link på dashboard.

Men invite-delen behøver lidt mere styling... men siden er ikke aktiv endnu, og jeg tænker ikke at invitere nogen, før @halfd har kigget på den 😊

Så! Nu fungerer det at sende ordre-emails fra admin, og der er tilføjet et lille link på dashboard. Men invite-delen behøver lidt mere styling... men siden er ikke aktiv endnu, og jeg tænker ikke at invitere nogen, før @halfd har kigget på den 😊
benjaoming changed title from WIP: Membership invitations and order emails to Membership invitations and order emails 2024-08-12 20:39:22 +00:00
benjaoming requested review from valberg 2024-08-12 20:39:33 +00:00
benjaoming force-pushed membership-invite from 04f9ac7935 to 9962f2622b 2024-08-13 07:44:04 +00:00 Compare
benjaoming added 1 commit 2024-08-13 07:50:16 +00:00
Adds a README note
Some checks failed
continuous-integration/drone/pr Build is failing
b1ff3f985c
valberg requested changes 2024-08-14 05:39:52 +00:00
Dismissed
@ -116,0 +132,4 @@
if not member.memberships.current():
messages.error(
request,
f"This member will not receive an invite because it has no active membership: {member.email}",
Owner

Is the idea not that the member does not have a membership and thus should be sent an invite?

Is the idea not that the member does not have a membership and thus should be sent an invite?
Author
Owner

I've replaced "active" with "current" - the idea is that we should not invite members before we have also created their membership + order (there's another admin function for that).

Once the actions are defined, we can maybe merge some of the stuff into a single-click action... but I just wanna make sure that we keep the flexibility for now.. until the whole signup/apply process is defined.

I've replaced "active" with "current" - the idea is that we should not invite members before we have also created their membership + order (there's another admin function for that). Once the actions are defined, we can maybe merge some of the stuff into a single-click action... but I just wanna make sure that we keep the flexibility for now.. until the whole signup/apply process is defined.
benjaoming marked this conversation as resolved
@ -209,6 +230,11 @@ class WaitingListEntry(CreatedModifiedAbstract):
email = models.EmailField()
geography = models.CharField(verbose_name=_("geography"), blank=True, default="")
comment = models.TextField(blank=True)
has_user = models.BooleanField(
Owner

Why not have this as a ForeignKey("Member")?

Why not have this as a `ForeignKey("Member")`?
Author
Owner

It's sensitive really. I suppose that once this turns into an application, we have to consider that people give out details that are 100% associated with their membership activity and if we want to keep that on record, we should make sure it's either very consistent with the functionality or write a privacy statement.

I was leaning a bit more towards deleting these records... but on that note, "right to be forgotten" is way easier to invoke when we ensure that we use FKs between personal data (or PII).

Changing.......

It's sensitive really. I suppose that once this turns into an application, we have to consider that people give out details that are 100% associated with their membership activity and if we want to keep that on record, we should make sure it's either very consistent with the functionality or write a privacy statement. I was leaning a bit more towards deleting these records... but on that note, "right to be forgotten" is way easier to invoke when we ensure that we use FKs between personal data (or PII). Changing.......
benjaoming marked this conversation as resolved
benjaoming added 1 commit 2024-08-14 07:55:31 +00:00
Clarify error messages from admin action
Some checks failed
continuous-integration/drone/pr Build is failing
1c740418f4
benjaoming added 1 commit 2024-08-14 08:20:18 +00:00
Use FK relation for created user, rather than boolean
Some checks failed
continuous-integration/drone/pr Build is failing
e519383741
benjaoming requested review from valberg 2024-08-14 08:20:37 +00:00
valberg approved these changes 2024-08-14 09:17:13 +00:00
valberg merged commit b3795977ed into main 2024-08-14 09:17:30 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: data.coop/membersystem#47
No description provided.