mirror of
https://github.com/bitwarden/server
synced 2025-12-23 11:43:23 +00:00
organization user apis, hardening, completeness
This commit is contained in:
@@ -14,6 +14,7 @@ namespace Bit.Core.Services
|
||||
private const string ChangeEmailTemplateId = "ec2c1471-8292-4f17-b6b6-8223d514f86e";
|
||||
private const string NoMasterPasswordHintTemplateId = "136eb299-e102-495a-88bd-f96736eea159";
|
||||
private const string MasterPasswordHintTemplateId = "be77cfde-95dd-4cb9-b5e0-8286b53885f1";
|
||||
private const string OrganizationInviteTemplateId = "1eff5512-e36c-49a8-b9e2-2b215d6bbced";
|
||||
|
||||
private const string AdministrativeCategoryName = "Administrative";
|
||||
private const string MarketingCategoryName = "Marketing";
|
||||
@@ -87,6 +88,19 @@ namespace Bit.Core.Services
|
||||
await _client.SendEmailAsync(message);
|
||||
}
|
||||
|
||||
public async Task SendOrganizationInviteEmailAsync(string organizationName, string email, string token)
|
||||
{
|
||||
var message = CreateDefaultMessage(OrganizationInviteTemplateId);
|
||||
|
||||
message.Subject = $"Join {organizationName}";
|
||||
message.AddTo(new EmailAddress(email));
|
||||
message.AddSubstitution("{{organizationName}}", organizationName);
|
||||
message.AddSubstitution("{{token}}", token);
|
||||
message.AddCategories(new List<string> { AdministrativeCategoryName, "Organization Invite" });
|
||||
|
||||
await _client.SendEmailAsync(message);
|
||||
}
|
||||
|
||||
private SendGridMessage CreateDefaultMessage(string templateId)
|
||||
{
|
||||
var message = new SendGridMessage
|
||||
|
||||
Reference in New Issue
Block a user