When practicing with the email invite templates, I noticed that if I send an invite to an email, and then later send an invite to the same email, but this time with a custom message, it will send the email and not include the custom message.
This appears to also happen vice versa and extends into if you send a forum invite as well as inviting to a topic.
In this example, I sent a forum invite w/ a custom message. After that, I sent a topic invite w/ no custom message, but the message still appears in the email.
The current solution I found is to remove the original invite from the pending queue if you change the following invite to include a custom message/vice versa.
I can reproduce what you are finding. I’m not sure if this is a bug or a UX issue. What seems to be happening is that if there is an existing invite for a specific email address, Discourse will resend the existing invite if you attempt to send a new invite to the same email address. The problem is that this is performed in the background, without giving the invite sender an indication of what is happening.
Instead of sending a new invite, you can edit and resend the initial invite:
Discourse should somehow handle the case of a user sending an invite to an email address that they already have a pending invite for. Maybe a warning should appear on the invite form letting the user know that there is a pending invite for that email address and asking them if they want to edit and resend the existing invite.
I’m not sure it’s a good idea to offer to allow the previous invite to be edited. Someone other than the original inviter might also invite the same address. If the original inviter included some personal information in the invitation, e.g. to prove it’s come from someone that the invitee really knows, then you would expose that personal information to a third party.
An invite is specific to an invitee and an inviter, so users are only able to edit invites that they have been sent from their account.
For example, using the invite from the screenshot in my previous post, if the user sally sends and invite to foo@example.com, it will be a completely separate invite from the one that was sent by the user simon. Sally is not given the chance to edit the invite that was sent by simon.