- BREAKING CHANGE from v0.9.35 and eariler: Move accounts into subfolder of SessionStore - viewergen and viewer updates from @GraspYonOx - new homepage theme inspired by @GraspYonOx - connect setup also mostly by @GraspYonOx - numerous bug fixes - nntp-server-zefie is now on npmjs - implement proper nodejs debugging - will start to phase out using console.log for actual debugging - existing "debug" (verbose) messages will stay as is - future code debugging will use debug() to debug WIP, therefore not showing to most users if it is accidently left in
128 lines
5.5 KiB
JavaScript
128 lines
5.5 KiB
JavaScript
var minisrv_service_file = true;
|
|
|
|
|
|
if (!request_headers.query.registering ||
|
|
!request_headers.query.subscriber_name ||
|
|
!request_headers.query.subscriber_username ||
|
|
!request_headers.query.subscriber_contact ||
|
|
!request_headers.query.subscriber_contact_method ||
|
|
!session_data.session_store ||
|
|
!session_data ||
|
|
!socket.ssid
|
|
) {
|
|
var errpage = wtvshared.doErrorPage(400);
|
|
headers = errpage[0];
|
|
data = errpage[1];
|
|
} else {
|
|
var errpage = null;
|
|
const WTVRegister = require(classPath + "/WTVRegister.js")
|
|
var wtvr = new WTVRegister(minisrv_config, SessionStore);
|
|
if (!request_headers.query.subscriber_username) errpage = wtvshared.doErrorPage(400, "Please enter a username.");
|
|
else if (request_headers.query.subscriber_username.length < minisrv_config.config.user_accounts.min_username_length) errpage = wtvshared.doErrorPage(400, "Please choose a username with <b>" + minisrv_config.config.user_accounts.min_username_length + "</b> or more characters.");
|
|
else if (request_headers.query.subscriber_username.length > minisrv_config.config.user_accounts.max_username_length) errpage = wtvshared.doErrorPage(400, "Please choose a username with <b>" + minisrv_config.config.user_accounts.max_username_length + "</b> or less characters.");
|
|
else if (!wtvr.checkUsernameSanity(request_headers.query.subscriber_username)) errpage = wtvshared.doErrorPage(400, "The username you have chosen contains invalid characters. Please choose a username with only <b>letters</b>, <b>numbers</b>, <b>_</b> or <b>-</b>. Also, please be sure your username begins with a letter.");
|
|
else if (!wtvr.checkUsernameAvailable(request_headers.query.subscriber_username)) errpage = wtvshared.doErrorPage(400, "The username you have selected is already in use. Please select another username.");
|
|
if (errpage) {
|
|
headers = errpage[0];
|
|
data = errpage[1];
|
|
} else {
|
|
session_data.setSessionData("subscriber_name", request_headers.query.subscriber_name);
|
|
session_data.setSessionData("subscriber_username", request_headers.query.subscriber_username);
|
|
session_data.setSessionData("subscriber_contact", request_headers.query.subscriber_contact);
|
|
session_data.setSessionData("subscriber_contact_method", request_headers.query.subscriber_contact_method);
|
|
session_data.setSessionData("subscriber_userid", 0);
|
|
session_data.setSessionData("registered", true);
|
|
var mailstore_exists = session_data.mailstore.mailstoreExists();
|
|
var mailbox_exists = false;
|
|
if (!mailstore_exists) mailstore_exists = session_data.mailstore.createMailstore();
|
|
if (mailstore_exists) {
|
|
if (!session_data.mailstore.mailboxExists(0)) {
|
|
// mailbox does not yet exist, create it
|
|
mailbox_exists = session_data.mailstore.createMailbox(0);
|
|
}
|
|
if (mailbox_exists) {
|
|
// Just created Inbox for the first time, so create the welcome message
|
|
session_data.mailstore.createWelcomeMessage();
|
|
}
|
|
}
|
|
if (!session_data.saveSessionData(true, true)) {
|
|
var errpage = wtvshared.doErrorPage(400);
|
|
headers = errpage[0];
|
|
data = errpage[1];
|
|
} else {
|
|
|
|
headers = `200 OK
|
|
Content-Type: text/html`;
|
|
|
|
data = `<html>
|
|
<head>
|
|
<title>
|
|
Finished signing up
|
|
</title>
|
|
<display nooptions noscroll ClearBack
|
|
NoScroll
|
|
>
|
|
</head>
|
|
<body noscroll
|
|
bgcolor="#171726" text="#D1D3D3" link=#FFEA9C vlink=#FFEA9C
|
|
hspace=0 vspace=0 fontsize="large"
|
|
>
|
|
<table cellspacing=0 cellpadding=0 border=0 width=560 bgcolor=#171726>
|
|
<tr>
|
|
<td align=middle bgcolor="#5b6c81" border=0 colspan= 3 width="100" height="80">
|
|
<img src="${minisrv_config.config.service_logo}" WIDTH="87" HEIGHT="67">
|
|
<td colspan= 6 bgcolor="#5b6c81" border=0 width=100% absheight="80" valign=bottom >
|
|
<img src="images/head_registration.gif" >
|
|
<tr>
|
|
<td bgcolor= "#5b6c81" border=0 rowspan=2 width=21 height= 220></td>
|
|
<td bgcolor="#171726" border=0 width=9 height=25 align=left valign=top>
|
|
<img src="images/L_corner.gif" width=8 height=8>
|
|
<td bgcolor="#171726" border=1 colspan=1 width=70 height=25>
|
|
<td colspan=6 bgcolor="#171726" border=1 height=25 align=left valign=bottom gradcolor=#262E3D gradangle=90>
|
|
<font color=#d1d3d3 size=+1>
|
|
<blackface>
|
|
You've finished signing up
|
|
</blackface></font>
|
|
<tr> <td border=0 width=40 bgcolor="#171726" rowspan="2" >
|
|
<td absheight=20 width=100 bgcolor="#171726" colspan=6>
|
|
</tr>
|
|
</table>
|
|
<table cellspacing=0 cellpadding=0 border=0 width=560 bgcolor=#171726>
|
|
<tr>
|
|
<td bgcolor= "#5b6c81" border=0 rowspan=6 abswidth=21 height= 220></td>
|
|
<td border=0 abswidth=40 bgcolor="#171726" rowspan="6" >
|
|
<form action="FinishRegistration"
|
|
>
|
|
<td height=230 width= 300 bgcolor="#171726" colspan=5 valign=top align=left>
|
|
Thank you for signing up for ${minisrv_config.config.service_name}.
|
|
<p>
|
|
You will now go
|
|
to your <b>Web Home</b> page. You can always
|
|
connect to the Internet by choosing
|
|
<b>Web Home</b> on your TV Home page.
|
|
</font>
|
|
<td abswidth=20 bgcolor=#171726 >
|
|
</tr>
|
|
<tr>
|
|
<td valign= bottom height=15 colspan=7 bgcolor=#171726>
|
|
<shadow>
|
|
<hr size=5 valign=bottom></shadow>
|
|
</tr>
|
|
<tr>
|
|
<td border=2 colspan=4 width=300 height=50 bgcolor=#171726 valign=top align=left>
|
|
<font size=-1><i>
|
|
</i></font>
|
|
<td bgcolor=#171726 height=50 width=150 valign=top align=right>
|
|
<font size=-1 color=#e7ce4a>
|
|
<shadow>
|
|
<input type=submit Value=Continue name="Continue" borderimage="file://ROM/Borders/ButtonBorder2.bif" usestyle width=110>
|
|
</shadow>
|
|
</font>
|
|
</form> <td abswidth=13 absheight=50 bgcolor=#171726>
|
|
</tr> </table>
|
|
</body>
|
|
</html>
|
|
`;
|
|
}
|
|
}
|
|
} |