new reset email

This commit is contained in:
Janis Steiner
2025-01-04 16:31:18 +01:00
parent bd35f460db
commit 3621a00fc1

View File

@@ -59,90 +59,530 @@ curl_close($ch);
//send mail //send mail
if(!empty($mail)){ if(!empty($mail)){
$loc=$location["country"].", ".$location["state"].", ".$location["city"]; $loc=$location["country"].", ".$location["state"].", ".$location["city"];
$content = " $content = '
<!DOCTYPE html> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang='en'> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta charset='UTF-8'> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name='viewport' content='width=device-width, initial-scale=1.0'> <meta name="x-apple-disable-message-reformatting" />
<title>Password Reset</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style> <meta name="color-scheme" content="light dark" />
<meta name="supported-color-schemes" content="light dark" />
<title></title>
<style type="text/css" rel="stylesheet" media="all">
/* Base ------------------------------ */
@import url("https://fonts.googleapis.com/css?family=Nunito+Sans:400,700&display=swap");
body { body {
font-family: Arial, sans-serif; width: 100% !important;
background-color: #f4f4f4; height: 100%;
margin: 0; margin: 0;
-webkit-text-size-adjust: none;
}
a {
color: #3869D4;
}
a img {
border: none;
}
td {
word-break: break-word;
}
.preheader {
display: none !important;
visibility: hidden;
mso-hide: all;
font-size: 1px;
line-height: 1px;
max-height: 0;
max-width: 0;
opacity: 0;
overflow: hidden;
}
/* Type ------------------------------ */
body,
td,
th {
font-family: "Nunito Sans", Helvetica, Arial, sans-serif;
}
h1 {
margin-top: 0;
color: #333333;
font-size: 22px;
font-weight: bold;
text-align: left;
}
h2 {
margin-top: 0;
color: #333333;
font-size: 16px;
font-weight: bold;
text-align: left;
}
h3 {
margin-top: 0;
color: #333333;
font-size: 14px;
font-weight: bold;
text-align: left;
}
td,
th {
font-size: 16px;
}
p,
ul,
ol,
blockquote {
margin: .4em 0 1.1875em;
font-size: 16px;
line-height: 1.625;
}
p.sub {
font-size: 13px;
}
/* Utilities ------------------------------ */
.align-right {
text-align: right;
}
.align-left {
text-align: left;
}
.align-center {
text-align: center;
}
.u-margin-bottom-none {
margin-bottom: 0;
}
/* Buttons ------------------------------ */
.button {
background-color: #3869D4;
border-top: 10px solid #3869D4;
border-right: 18px solid #3869D4;
border-bottom: 10px solid #3869D4;
border-left: 18px solid #3869D4;
display: inline-block;
color: #FFF;
text-decoration: none;
border-radius: 3px;
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16);
-webkit-text-size-adjust: none;
box-sizing: border-box;
}
.button--green {
background-color: #22BC66;
border-top: 10px solid #22BC66;
border-right: 18px solid #22BC66;
border-bottom: 10px solid #22BC66;
border-left: 18px solid #22BC66;
}
.button--red {
background-color: #FF6136;
border-top: 10px solid #FF6136;
border-right: 18px solid #FF6136;
border-bottom: 10px solid #FF6136;
border-left: 18px solid #FF6136;
}
@media only screen and (max-width: 500px) {
.button {
width: 100% !important;
text-align: center !important;
}
}
/* Attribute list ------------------------------ */
.attributes {
margin: 0 0 21px;
}
.attributes_content {
background-color: #F4F4F7;
padding: 16px;
}
.attributes_item {
padding: 0; padding: 0;
} }
.email-container { /* Related Items ------------------------------ */
.related {
width: 100%; width: 100%;
max-width: 600px; margin: 0;
margin: 0 auto; padding: 25px 0 0 0;
background-color: #ffffff; -premailer-width: 100%;
padding: 20px; -premailer-cellpadding: 0;
border-radius: 8px; -premailer-cellspacing: 0;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
} }
h1 {
color: #333; .related_item {
font-size: 24px; padding: 10px 0;
color: #CBCCCF;
font-size: 15px;
line-height: 18px;
} }
p {
color: #666; .related_item-title {
font-size: 16px; display: block;
line-height: 1.5; margin: .5em 0 0;
} }
a {
color: #ffffff; .related_item-thumb {
background-color: #007bff; display: block;
padding: 12px 20px; padding-bottom: 10px;
text-decoration: none;
border-radius: 5px;
font-weight: bold;
display: inline-block;
} }
a:hover {
background-color: #0056b3; .related_heading {
} border-top: 1px solid #CBCCCF;
.footer {
font-size: 14px;
color: #888;
text-align: center; text-align: center;
margin-top: 20px; padding: 25px 0 10px;
} }
.footer a { /* Discount Code ------------------------------ */
color: #888;
.discount {
width: 100%;
margin: 0;
padding: 24px;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
background-color: #F4F4F7;
border: 2px dashed #CBCCCF;
}
.discount_heading {
text-align: center;
}
.discount_body {
text-align: center;
font-size: 15px;
}
/* Social Icons ------------------------------ */
.social {
width: auto;
}
.social td {
padding: 0;
width: auto;
}
.social_icon {
height: 20px;
margin: 0 8px 10px 8px;
padding: 0;
}
/* Data table ------------------------------ */
.purchase {
width: 100%;
margin: 0;
padding: 35px 0;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
}
.purchase_content {
width: 100%;
margin: 0;
padding: 25px 0 0 0;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
}
.purchase_item {
padding: 10px 0;
color: #51545E;
font-size: 15px;
line-height: 18px;
}
.purchase_heading {
padding-bottom: 8px;
border-bottom: 1px solid #EAEAEC;
}
.purchase_heading p {
margin: 0;
color: #85878E;
font-size: 12px;
}
.purchase_footer {
padding-top: 15px;
border-top: 1px solid #EAEAEC;
}
.purchase_total {
margin: 0;
text-align: right;
font-weight: bold;
color: #333333;
}
.purchase_total--label {
padding: 0 15px 0 0;
}
body {
background-color: #F2F4F6;
color: #51545E;
}
p {
color: #51545E;
}
.email-wrapper {
width: 100%;
margin: 0;
padding: 0;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
background-color: #F2F4F6;
}
.email-content {
width: 100%;
margin: 0;
padding: 0;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
}
/* Masthead ----------------------- */
.email-masthead {
padding: 25px 0;
text-align: center;
}
.email-masthead_logo {
width: 94px;
}
.email-masthead_name {
font-size: 16px;
font-weight: bold;
color: #A8AAAF;
text-decoration: none; text-decoration: none;
text-shadow: 0 1px 0 white;
}
/* Body ------------------------------ */
.email-body {
width: 100%;
margin: 0;
padding: 0;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
}
.email-body_inner {
width: 570px;
margin: 0 auto;
padding: 0;
-premailer-width: 570px;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
background-color: #FFFFFF;
}
.email-footer {
width: 570px;
margin: 0 auto;
padding: 0;
-premailer-width: 570px;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
text-align: center;
}
.email-footer p {
color: #A8AAAF;
}
.body-action {
width: 100%;
margin: 30px auto;
padding: 0;
-premailer-width: 100%;
-premailer-cellpadding: 0;
-premailer-cellspacing: 0;
text-align: center;
}
.body-sub {
margin-top: 25px;
padding-top: 25px;
border-top: 1px solid #EAEAEC;
}
.content-cell {
padding: 45px;
}
/*Media Queries ------------------------------ */
@media only screen and (max-width: 600px) {
.email-body_inner,
.email-footer {
width: 100% !important;
}
}
@media (prefers-color-scheme: dark) {
body,
.email-body,
.email-body_inner,
.email-content,
.email-wrapper,
.email-masthead,
.email-footer {
background-color: #333333 !important;
color: #FFF !important;
}
p,
ul,
ol,
blockquote,
h1,
h2,
h3,
span,
.purchase_item {
color: #FFF !important;
}
.attributes_content,
.discount {
background-color: #222 !important;
}
.email-masthead_name {
text-shadow: none !important;
}
}
:root {
color-scheme: light dark;
supported-color-schemes: light dark;
} }
</style> </style>
</head> <!--[if mso]>
<body> <style type="text/css">
.f-fallback {
<div class='email-container'> font-family: Arial, sans-serif;
<h1>Password Reset Request</h1> }
<p>Hi $mail,</p> </style>
<p>You have requested a password reset link. Here it is:</p> <![endif]-->
<p><a href='$link'>Click here to reset your password</a></p> </head>
<p>If you did not request this, please ignore this email. If you did, you can reset your password using the link above.</p> <body>
<span class="preheader">Use this link to reset your password. The link is only valid for 12 hours.</span>
<table class="email-wrapper" width="100%" cellpadding="0" cellspacing="0" role="presentation">
<tr>
<td align="center">
<table class="email-content" width="100%" cellpadding="0" cellspacing="0" role="presentation">
<tr>
<td class="email-masthead">
<a href="https://auth.jakach.ch" class="f-fallback email-masthead_name">
Jakach Login
</a>
</td>
</tr>
<!-- Email Body -->
<tr>
<td class="email-body" width="570" cellpadding="0" cellspacing="0">
<table class="email-body_inner" align="center" width="570" cellpadding="0" cellspacing="0" role="presentation">
<!-- Body content -->
<tr>
<td class="content-cell">
<div class="f-fallback">
<h1>Hi '.$username.',</h1>
<p>You recently requested to reset your password for your Jakach login account. Use the button below to reset it. <strong>This password reset is only valid for the next 12 hours.</strong></p>
<!-- Action -->
<table class="body-action" align="center" width="100%" cellpadding="0" cellspacing="0" role="presentation">
<tr>
<td align="center">
<!-- Border based button
https://litmus.com/blog/a-guide-to-bulletproof-buttons-in-email-design -->
<table width="100%" border="0" cellspacing="0" cellpadding="0" role="presentation">
<tr>
<td align="center">
<a href="'.$link.'" class="f-fallback button button--green" target="_blank">Reset your password</a>
</td>
</tr>
</table>
</td>
</tr>
</table>
<p><strong>Request Details:</strong></p> <p><strong>Request Details:</strong></p>
<ul> <ul>
<li><strong>Date & Time:</strong> $date</li> <li><strong>Date & Time:</strong> '.$date.'</li>
<li><strong>Device & Browser:</strong> $device</li> <li><strong>Device & Browser:</strong> '.$device.'</li>
<li><strong>Account:</strong> $mail</li> <li><strong>Account:</strong> '.$mail.'</li>
<li><strong>IP Address:</strong> $ip</li> <li><strong>IP Address:</strong> '.$ip.'</li>
<li><strong>Location:</strong> $loc</li> <li><strong>Location:</strong> '.$loc.'</li>
</ul> </ul>
<p>Thanks,
<p>If this was you, you can reset your password. If this was not you, someone else may have tried to reset your password.</p> <br>The Jakach login team</p>
<!-- Sub copy -->
<div class='footer'> <table class="body-sub" role="presentation">
<p>Thanks for using our service!</p> <tr>
<td>
<p class="f-fallback sub">If youre having trouble with the button above, copy and paste the URL below into your web browser.</p>
<p class="f-fallback sub">'.$link.'</p>
</td>
</tr>
</table>
</div> </div>
</div> </td>
</tr>
</body> </table>
</td>
</tr>
<tr>
<td>
<table class="email-footer" align="center" width="570" cellpadding="0" cellspacing="0" role="presentation">
<tr>
<td class="content-cell" align="center">
<p class="f-fallback sub align-center">
Jakach.ch
<br>CH-Switzerland.
</p>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html> </html>
"; ';
$message = [ $message = [