MeshCentral/views/message.handlebars

107 lines
5.9 KiB
Handlebars
Raw Normal View History

<!DOCTYPE html>
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
<head lang="en">
<meta http-equiv=X-UA-Compatible content="IE=edge" />
<meta content="text/html;charset=utf-8" http-equiv=Content-Type />
<meta name=viewport content="user-scalable=1.0,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0" />
<meta name=apple-mobile-web-app-capable content=yes />
<meta name=format-detection content="telephone=no" />
2020-10-28 17:46:40 -04:00
<meta name="robots" content="noindex,nofollow">
<link type=text/css href="/styles/style.css" media="screen" rel="stylesheet" title="CSS" />
2020-08-18 21:29:13 -04:00
<link rel="apple-touch-icon" href="/favicon-303x303.png" />
2020-05-02 02:11:43 -04:00
<script type="text/javascript" src="scripts/common-0.0.1{{min}}.js"></script>
2020-05-01 01:47:28 -04:00
<title id="topTitle">{{{title}}}</title>
</head>
<body>
<div id=container style=max-height:100vh>
<div id=mastheadx></div>
2018-12-21 19:39:26 -05:00
<div id=masthead style="background:url(logo.png) 0px 0px;background-color:#036;background-repeat:no-repeat;height:66px;width:100%;overflow:hidden">
<div style="float:left;text-shadow: 1px 1px 2px #000">{{{titlehtml}}}</div>
2019-12-16 20:20:39 -05:00
<div style=float:left;height:66px;color:#c8c8c8;padding-left:14px;padding-top:7px>
<strong><font style="font-size:46px;font-family:Arial,Helvetica,sans-serif;text-shadow: 1px 1px 2px #000">{{{title1}}}</font></strong>
</div>
<div style=float:left;height:66px;color:#c8c8c8;padding-left:5px;padding-top:14px>
<strong><font style="font-size:14px;font-family:Arial,Helvetica,sans-serif;text-shadow: 1px 1px 2px #000">{{{title2}}}</font></strong>
</div>
</div>
<div id=page_content style=max-height:calc(100vh-138px)>
<div id=column_l>
2020-05-01 01:47:28 -04:00
<h1 id="mainTitle"></h1>
2020-11-02 15:11:45 -05:00
<p id="mainMessage"></p>
<br />
</div>
<div id=footer>
<table cellpadding=0 cellspacing=10 style=width:100%>
<tr>
<td style=text-align:left></td>
<td style=text-align:right>
<a href=terms>Terms &amp; Privacy</a>
</td>
</tr>
</table>
</div>
</div>
</div>
2020-05-01 01:47:28 -04:00
<script>
2022-06-08 13:47:23 -04:00
var random = '{{{randomlength}}}' // Random length string for BREACH mitigation
2020-05-01 01:47:28 -04:00
var titleid = parseInt('{{{titleid}}}');
var msgid = parseInt('{{{msgid}}}');
var domainurl = decodeURIComponent('{{{domainurl}}}');
var arg1 = decodeURIComponent('{{{arg1}}}');
var arg2 = decodeURIComponent('{{{arg2}}}');
2020-09-22 20:06:08 -04:00
var urlargs = parseUriArgs();
2020-05-01 01:47:28 -04:00
var title = '';
if (titleid == 1) { title = "Account Verification"; }
2020-11-02 15:11:45 -05:00
if (titleid == 2) { title = "Desktop Sharing"; }
2020-11-20 19:43:58 -05:00
if (titleid == 3) { title = "Server Under Maintenance"; }
2020-11-27 16:55:02 -05:00
if (titleid == 4) { title = "Terminal Sharing"; }
2020-05-01 01:47:28 -04:00
QH('topTitle', Q('topTitle').innerText + ' - ' + title);
QH('mainTitle', title);
var msg = '';
switch (msgid) {
case 1: { msg = "ERROR: Invalid domain."; break; }
2020-12-09 20:13:02 -05:00
case 2: { msg = format("ERROR: Invalid username \"{0}\".", arg1); break; }
2020-05-01 01:47:28 -04:00
case 3: { msg = format("ERROR: Invalid e-mail \"{0}\" for user \"{1}\".", arg1, arg2); break; }
case 4: { msg = format("E-mail \"{0}\" for user \"{1}\" already verified.", arg1, arg2); break; }
case 5: { msg = format("E-mail \"{0}\" already in use on a different account. Change the email address and try again.", arg1); break; }
case 6: { msg = format("Verified email {0} for user account {1}.", '<b>' + arg1 + '</b>', '<b>' + arg2 + '</b>'); break; }
case 7: { msg = format("E-mail \"{0}\" for user \"{1}\" not verified.", arg1, arg2); break; }
case 8: {
msg = '<div>' + format("Password for account {0} has been reset to:", '<b>' + arg1 + '</b>') + '</div><div style=padding:14px;font-size:18px><b>' + arg2 + '</b></div>';
msg += "Login and go to the \"My Account\" tab to update your password.";
break;
}
case 9: { msg = "ERROR: Invalid account check."; break; }
case 10: { msg = "ERROR: Invalid account check, verification url is only valid for 30 minutes."; break; }
2020-11-02 15:11:45 -05:00
case 11: { msg = "Sharing link not valid yet."; break; }
case 12: { msg = "Sharing link is expired."; break; }
2021-05-25 14:17:23 -04:00
case 13: { msg = "If you are an administrator, [login here].".replace('[', '<a href=login?loginscreen=1>').replace(']', '</a>'); break; }
2020-12-10 01:14:51 -05:00
case 14: { msg = '<a href=' + window.location.href + '&confirm=1>' + "Click here to reset your account password." + '</a>'; break; }
2020-05-01 01:47:28 -04:00
}
2020-11-02 15:11:45 -05:00
// Add login page link
2020-12-10 01:14:51 -05:00
if ((msgid != 11) && (msgid != 12) && (msgid != 13) && (msgid != 14)) { msg += ' <a href="' + domainurl + (urlargs.key ? ('?key=' + urlargs.key) : '') + '">' + "Go to login page" + '</a>.' }
2020-11-02 15:11:45 -05:00
QH('mainMessage', msg);
2020-05-01 01:47:28 -04:00
function format(format) { var args = Array.prototype.slice.call(arguments, 1); return format.replace(/{(\d+)}/g, function (match, number) { return typeof args[number] != 'undefined' ? args[number] : match; }); };
2020-09-22 20:06:08 -04:00
// Parse URL arguments, only keep safe values
function parseUriArgs() {
var href = window.document.location.href;
if (href.endsWith('#')) { href = href.substring(0, href.length - 1); }
var name, r = {}, parsedUri = href.split(/[\?&|]/);
parsedUri.splice(0, 1);
for (var j in parsedUri) {
var arg = parsedUri[j], i = arg.indexOf('=');
name = arg.substring(0, i);
r[name] = arg.substring(i + 1);
if (!isSafeString(r[name])) { delete r[name]; } else { var x = parseInt(r[name]); if (x == r[name]) { r[name] = x; } }
}
return r;
}
2020-05-01 01:47:28 -04:00
</script>
</body>
</html>