mirror of
https://github.com/gravitl/netmaker.git
synced 2025-09-13 08:34:44 +08:00
commit
68990c7f41
3 changed files with 46 additions and 6 deletions
|
@ -319,6 +319,7 @@ func syncUsers() {
|
|||
nodes, err := logic.GetAllNodes()
|
||||
if err == nil {
|
||||
for _, netI := range networks {
|
||||
logic.CreateDefaultNetworkRolesAndGroups(models.NetworkID(netI.NetID))
|
||||
networkNodes := logic.GetNetworkNodesMemory(nodes, netI.NetID)
|
||||
for _, networkNodeI := range networkNodes {
|
||||
if networkNodeI.IsIngressGateway {
|
||||
|
|
|
@ -2,6 +2,7 @@ package email
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/gravitl/netmaker/servercfg"
|
||||
)
|
||||
|
||||
// UserInvitedMail - mail for users that are invited to a tenant
|
||||
|
@ -12,16 +13,54 @@ type UserInvitedMail struct {
|
|||
|
||||
// GetSubject - gets the subject of the email
|
||||
func (UserInvitedMail) GetSubject(info Notification) string {
|
||||
return "Netmaker: Pending Invitation"
|
||||
return "You're invited to join Netmaker"
|
||||
}
|
||||
|
||||
// GetBody - gets the body of the email
|
||||
func (invite UserInvitedMail) GetBody(info Notification) string {
|
||||
if servercfg.DeployedByOperator() {
|
||||
return invite.BodyBuilder.
|
||||
WithParagraph("Hi there,").
|
||||
WithParagraph("<br>").
|
||||
WithParagraph("Great news! Your colleague has invited you to join their Netmaker SaaS Tenant.").
|
||||
WithParagraph("Click the button to accept your invitation:").
|
||||
WithParagraph("<br>").
|
||||
WithParagraph(fmt.Sprintf("<a class=\"x-button\" href=\"%s\">Accept Invitation</a>", invite.InviteURL)).
|
||||
WithParagraph("<br>").
|
||||
WithParagraph("Why you'll love Netmaker:").
|
||||
WithParagraph("<ul>").
|
||||
WithParagraph("<li>Blazing-fast connections with our WireGuard®-powered mesh VPN</li>").
|
||||
WithParagraph("<li>Seamless multi-cloud and hybrid-cloud networking</li>").
|
||||
WithParagraph("<li>Automated Kubernetes networking across any infrastructure</li>").
|
||||
WithParagraph("<li>Enterprise-grade security with simple management</li>").
|
||||
WithParagraph("</ul>").
|
||||
WithParagraph("Got questions? Our team is here to help you every step of the way.").
|
||||
WithParagraph("<br>").
|
||||
WithParagraph("Welcome aboard,").
|
||||
WithParagraph("<h2>The Netmaker Team</h2>").
|
||||
WithParagraph("P.S. Curious to learn more before accepting? Check out our quick start tutorial at <a href=\"https://netmaker.io/tutorials\">netmaker.io/tutorials</a>").
|
||||
Build()
|
||||
}
|
||||
|
||||
return invite.BodyBuilder.
|
||||
WithHeadline("Join Netmaker from this invite!").
|
||||
WithParagraph("Hello from Netmaker,").
|
||||
WithParagraph("You have been invited to join Netmaker.").
|
||||
WithParagraph(fmt.Sprintf("Join Using This Invite Link <a href=\"%s\">Netmaker</a>", invite.InviteURL)).
|
||||
WithParagraph("Hi there,").
|
||||
WithParagraph("<br>").
|
||||
WithParagraph("Great news! Your colleague has invited you to join their Netmaker network.").
|
||||
WithParagraph("Click the button to accept your invitation:").
|
||||
WithParagraph("<br>").
|
||||
WithParagraph(fmt.Sprintf("<a class=\"x-button\" href=\"%s\">Accept Invitation</a>", invite.InviteURL)).
|
||||
WithParagraph("<br>").
|
||||
WithParagraph("Why you'll love Netmaker:").
|
||||
WithParagraph("<ul>").
|
||||
WithParagraph("<li>Blazing-fast connections with our WireGuard®-powered mesh VPN</li>").
|
||||
WithParagraph("<li>Seamless multi-cloud and hybrid-cloud networking</li>").
|
||||
WithParagraph("<li>Automated Kubernetes networking across any infrastructure</li>").
|
||||
WithParagraph("<li>Enterprise-grade security with simple management</li>").
|
||||
WithParagraph("</ul>").
|
||||
WithParagraph("Got questions? Our team is here to help you every step of the way.").
|
||||
WithParagraph("<br>").
|
||||
WithParagraph("Welcome aboard,").
|
||||
WithParagraph("<h2>The Netmaker Team</h2>").
|
||||
WithParagraph("P.S. Curious to learn more before accepting? Check out our quick start tutorial at <a href=\"https://netmaker.io/tutorials\">netmaker.io/tutorials</a>").
|
||||
Build()
|
||||
}
|
||||
|
|
|
@ -73,7 +73,7 @@ func (b *EmailBodyBuilderWithH1HeadlineAndImage) Build() string {
|
|||
</xml>
|
||||
<![endif]-->
|
||||
<style>
|
||||
*{box-sizing:border-box}body{margin:0;padding:0}a[x-apple-data-detectors]{color:inherit!important;text-decoration:inherit!important}#MessageViewBody a{color:inherit;text-decoration:none}p{line-height:inherit}.desktop_hide,.desktop_hide table{mso-hide:all;display:none;max-height:0;overflow:hidden}@media (max-width:720px){.desktop_hide table.icons-inner{display:inline-block!important}.icons-inner{text-align:center}.icons-inner td{margin:0 auto}.image_block img.big,.row-content{width:100%!important}.mobile_hide{display:none}.stack .column{width:100%;display:block}.mobile_hide{min-height:0;max-height:0;max-width:0;overflow:hidden;font-size:0}.desktop_hide,.desktop_hide table{display:table!important;max-height:none!important}}
|
||||
*{box-sizing:border-box}body{margin:0;padding:0}a[x-apple-data-detectors]{color:inherit!important;text-decoration:inherit!important}#MessageViewBody a{color:inherit;text-decoration:none}p{line-height:inherit}.desktop_hide,.desktop_hide table{mso-hide:all;display:none;max-height:0;overflow:hidden}@media (max-width:720px){.desktop_hide table.icons-inner{display:inline-block!important}.icons-inner{text-align:center}.icons-inner td{margin:0 auto}.image_block img.big,.row-content{width:100%!important}.mobile_hide{display:none}.stack .column{width:100%;display:block}.mobile_hide{min-height:0;max-height:0;max-width:0;overflow:hidden;font-size:0}.desktop_hide,.desktop_hide table{display:table!important;max-height:none!important}} .x-button{background:#5E5DF0;border-radius:999px;box-shadow:#5E5DF0 0 10px 20px -10px;box-sizing:border-box;color:#FFFFFF !important;cursor:pointer;font-family:Inter,Helvetica,"Apple Color Emoji","Segoe UI Emoji",NotoColorEmoji,"Noto Color Emoji","Segoe UI Symbol","Android Emoji",EmojiSymbols,-apple-system,system-ui,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",sans-serif;font-size:16px;font-weight:700;line-height:24px;opacity:1;outline:0 solid transparent;padding:8px 18px;user-select:none;-webkit-user-select:none;touch-action:manipulation;width:fit-content;word-break:break-word;border:0;margin:20px 20px 20px 0px;text-decoration:none;}
|
||||
</style>
|
||||
</head>
|
||||
<body style="background-color:transparent;margin:0;padding:0;-webkit-text-size-adjust:none;text-size-adjust:none">
|
||||
|
|
Loading…
Add table
Reference in a new issue