func MailMessageEmailChangedTo(msg mail.MailMessage, username, activationLink, manageLink, hostname string) { msg.SetSubject("Verify your new email address (on " + hostname + ")") msg.SetHTML(`<html> <body style='font-family: sans-serif'> <table align="center" width="600" border=0 cellspacing=0 cellpadding=0 style="border-collapse: collapse;"> <tr> <td bgcolor=#204080 style='border:4px solid #204080; color:#ffffff; padding: 16px 16px 0px 16px;'> <p> Hi <b>` + username + `</b>, </p> <p> <font size=6><b>Canopy</b></font> </p> <p>The open cloud for IoT.</p> <br> </td> </tr> <tr> <td bgcolor=#f0f0f0 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <h3><br>Verify New Email Address</h3> <p> You must verify your new email address by clicking the link below. </p> <p> <a href=` + activationLink + `>Verify my new email address</a> </p> <h3><br>Manage Your Devices</h3> Manage your Canopy-enabled devices by going here: <p> <a href=` + manageLink + `>` + manageLink + `</a> </p> <br> </td> </tr> <tr> <td bgcolor=#ffff80 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <b>Note</b>: This email address change is only for <b>` + hostname + `</b>. Other deployments of the Canopy Server may have separate accounts. </td> </tr> <tr> <td style='font-size:12px'> <br> <b>Web: </b><a href=http://canopy.link>canopy.link</a> <br><b>Twitter:</b><a href='http://twitter.com/CanopyIOT'>@CanopyIoT</a> <br><b>Github:</b><a href='http://github.com/canopy-project'>github.com/canopy-project</a> <br><b>Forum:</b><a href='http://canopy.lefora.com'>canopy.lefora.com</a> </td> </tr> </table> </body> </html>`) }
func MailMessageEmailChangedAway(msg mail.MailMessage, username, activationLink, manageLink, hostname string) { msg.SetSubject("Your email address has changed (on " + hostname + ")") msg.SetHTML(`<html> <body style='font-family: sans-serif'> <table align="center" width="600" border=0 cellspacing=0 cellpadding=0 style="border-collapse: collapse;"> <tr> <td bgcolor=#204080 style='border:4px solid #204080; color:#ffffff; padding: 16px 16px 0px 16px;'> <p> Hi <b>` + username + `</b>, </p> <p> <font size=6><b>Canopy</b></font> </p> <p>The open cloud for IoT.</p> <br> </td> </tr> <tr> <td bgcolor=#f0f0f0 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <h3><br>Your Email Address Has Changed</h3> <p> You will no longer recieve Canopy email at this address. You should recieve a verification email at your new email address. </p> <br> </td> </tr> <tr> <td bgcolor=#ffff80 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <b>Note</b>: This email address change is only for <b>` + hostname + `</b>. Other deployments of the Canopy Server may have separate accounts. </td> </tr> <tr> <td style='font-size:12px'> <br> <b>Web: </b><a href=http://canopy.link>canopy.link</a> <br><b>Twitter:</b><a href='http://twitter.com/CanopyIOT'>@CanopyIoT</a> <br><b>Github:</b><a href='http://github.com/canopy-project'>github.com/canopy-project</a> <br><b>Forum:</b><a href='http://canopy.lefora.com'>canopy.lefora.com</a> </td> </tr> </table> </body> </html>`) }
func MailMessageAccountDeleted(msg mail.MailMessage, username, hostname string) { msg.SetSubject("Canopy account deleted (on " + hostname + ")") msg.SetHTML(`<html> <body style='font-family: sans-serif'> <table align="center" width="600" border=0 cellspacing=0 cellpadding=0 style="border-collapse: collapse;"> <tr> <td bgcolor=#204080 style='border:4px solid #204080; color:#ffffff; padding: 16px 16px 0px 16px;'> <p> <font size=6><b>Farewell ` + username + `</b></font> </p> <p>We're sorry to see you go.</p> <br> </td> </tr> <tr> <td bgcolor=#f0f0f0 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <h3><br>Your account has been deleted.</h3> <p> If you believe this is a mistake, then please contact your Canopy system admin immediately. There is a chance your account can be recovered if you act quickly. </p> </td> </tr> <tr> <td bgcolor=#ffff80 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <b>Note</b>: This message is only for <b>` + hostname + `</b>. You may still have separate acconts on other deployments of the Canopy Server. </td> </tr> <tr> <td style='font-size:12px'> <br> <b>Web: </b><a href=http://canopy.link>canopy.link</a> <br><b>Twitter:</b><a href='http://twitter.com/CanopyIOT'>@CanopyIoT</a> <br><b>Github:</b><a href='http://github.com/canopy-project'>github.com/canopy-project</a> <br><b>Forum:</b><a href='http://canopy.lefora.com'>canopy.lefora.com</a> </td> </tr> </table> </body> </html>`) }
func MailMessageResetPassword(msg mail.MailMessage, username, resetLink, manageLink, hostname string) { msg.SetSubject("Reset your Canopy password (on " + hostname + ")") msg.SetHTML(`<html> <body style='font-family: sans-serif'> <table align="center" width="600" border=0 cellspacing=0 cellpadding=0 style="border-collapse: collapse;"> <tr> <td bgcolor=#204080 style='border:4px solid #204080; color:#ffffff; padding: 16px 16px 0px 16px;'> <p> Hi <b>` + username + `</b>, </p> <p> <font size=6><b>Canopy Password Reset</b></font> </p> <br> </td> </tr> <tr> <td bgcolor=#f0f0f0 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <p> <br><i>If you believe you have received this email in error then simply disregard this message.</i> </p> <h3><br>Reset Password</h3> <p> To reset your Canopy password, click the link below. The link will expire in 24 hours. </p> <p> <a href=` + resetLink + `>Reset your password.</a> </p> <h3><br>Manage Your Devices</h3> After resetting your password, you can manage your Canopy-enabled devices by going here: <p> <a href=` + manageLink + `>` + manageLink + `</a> </p> <br> </td> </tr> <tr> <td bgcolor=#ffff80 style='border:4px solid #204080; color:#303030; padding: 16px 16px 16px 16px;'> <b>Note</b>: This is only for <b>` + hostname + `</b>. Other deployments of the Canopy Server have separate accounts. </td> </tr> <tr> <td style='font-size:12px'> <br> <b>Web: </b><a href=http://canopy.link>canopy.link</a> <br><b>Twitter:</b><a href='http://twitter.com/CanopyIOT'>@CanopyIoT</a> <br><b>Github:</b><a href='http://github.com/canopy-project'>github.com/canopy-project</a> <br><b>Forum:</b><a href='http://canopy.lefora.com'>canopy.lefora.com</a> </td> </tr> </table> </body> </html>`) }