update wtv-tricks system
- Info now shows Guest Mode or Subscriber Info - Implemented wtv-tricks:/unregister - Implemented wtv-tricks:/register - Show correct link in wtv-tricks:/tricks based on Guest Mode status
This commit is contained in:
@@ -80,7 +80,28 @@ Content-Type: text/html`
|
||||
<td valign=top align=right><shadow>Service IP number:</shadow>
|
||||
<td width=10>
|
||||
<td valign=top>${service_ip}
|
||||
`;
|
||||
if (ssid_sessions[socket.ssid].getSessionData("registered")) {
|
||||
data += `<tr>
|
||||
<td valign=top align=right><shadow>Subscriber Name:</shadow>
|
||||
<td width=10>
|
||||
<td valign=top>${ssid_sessions[socket.ssid].getSessionData("subscriber_name")}
|
||||
<tr>
|
||||
<td valign=top align=right><shadow>Subscriber Username:</shadow>
|
||||
<td width=10>
|
||||
<td valign=top>${ssid_sessions[socket.ssid].getSessionData("subscriber_username")}
|
||||
<tr>
|
||||
<td valign=top align=right><shadow>Subscriber Contact:</shadow>
|
||||
<td width=10>
|
||||
<td valign=top>${ssid_sessions[socket.ssid].getSessionData("subscriber_contact")} (${ssid_sessions[socket.ssid].getSessionData("subscriber_contact_method")})`;
|
||||
} else {
|
||||
data += `<tr>
|
||||
<td valign=top align=right><shadow>Unregistered Guest:</shadow>
|
||||
<td width=10>
|
||||
<td valign=top>Yes`;
|
||||
}
|
||||
|
||||
data += `<tr>
|
||||
<td height=20>
|
||||
<tr>
|
||||
<td valign=top align=right><shadow>ROM type:</shadow>
|
||||
|
||||
39
zefie_wtvp_minisrv/ServiceVault/wtv-tricks/register.js
Normal file
39
zefie_wtvp_minisrv/ServiceVault/wtv-tricks/register.js
Normal file
@@ -0,0 +1,39 @@
|
||||
headers = `200 OK
|
||||
Content-Type: text/html`;
|
||||
|
||||
if (ssid_sessions[socket.ssid].getSessionData("registered")) {
|
||||
var redirect = [10, "client:goback?"];
|
||||
var message = "Error: Your box is already registered. If you would like to re-register, you must first unregister.";
|
||||
} else if (request_headers.query.confirm_register) {
|
||||
headers += `
|
||||
wtv-noback-all: wtv-
|
||||
wtv-expire-all: wtv-
|
||||
wtv-relogin-url: wtv-1800:/preregister?relogin=true
|
||||
wtv-reconnect-url: wtv-1800:/preregister?reconnect=true
|
||||
wtv-boot-url: wtv-1800:/preregister?relogin=true`;
|
||||
|
||||
var message = "You will now be be redirected to registration.";
|
||||
var redirect = [3, "client:relog?"];
|
||||
} else {
|
||||
message = `Are you ready to register your box with ${minisrv_config.config.service_name}?
|
||||
<br><br>
|
||||
<form action="register" method="POST" ENCTYPE="x-www-form-encoded">
|
||||
<input type="button" action="client:goback" value="Nah, I like being a Guest" borderimage="file://ROM/Borders/ButtonBorder2.bif" text="gold" >
|
||||
<input type="submit" name="confirm_register" value="Yes, I'm ready to register!" borderimage="file://ROM/Borders/ButtonBorder2.bif" text="gold" selected>
|
||||
</form>`;
|
||||
}
|
||||
|
||||
data = `<html>
|
||||
<head>
|
||||
<display fontsize=medium>
|
||||
<title>Danger Zone!</title>
|
||||
`;
|
||||
if (redirect) data += `<meta http-equiv=Refresh content="${redirect[0]}; url=${redirect[1]}">`;
|
||||
|
||||
data += `</head>
|
||||
<body bgcolor="#000000" text="gold" link="gold" alink="gold" vlink="gold">
|
||||
<br><br>
|
||||
${message}
|
||||
</body>
|
||||
</html>
|
||||
`;
|
||||
@@ -38,7 +38,11 @@ data = `<html>
|
||||
<tr>
|
||||
<td><a href="client:showservices">Show Services</a>
|
||||
<td width = 25>
|
||||
<td><a href="wtv-tricks:/unregister">Unregister This Box</a>
|
||||
`;
|
||||
if (ssid_sessions[socket.ssid].getSessionData("registered")) data += `<td><a href="wtv-tricks:/unregister">Unregister This Box</a>`;
|
||||
else data += `<td><a href="wtv-tricks:/register">Register This Box</a>`
|
||||
|
||||
data += `
|
||||
<tr>
|
||||
<td colspan=3 height=6>
|
||||
<tr>
|
||||
|
||||
39
zefie_wtvp_minisrv/ServiceVault/wtv-tricks/unregister.js
Normal file
39
zefie_wtvp_minisrv/ServiceVault/wtv-tricks/unregister.js
Normal file
@@ -0,0 +1,39 @@
|
||||
headers = `200 OK
|
||||
Content-Type: text/html`;
|
||||
|
||||
if (!ssid_sessions[socket.ssid].getSessionData("registered")) {
|
||||
var redirect = [10, "client:goback?"];
|
||||
var message = "Error: Your box is not registered. You are accessing " + minisrv_config.config.service_name + " in Guest Mode. There is nothing to delete!";
|
||||
} else if (request_headers.query.confirm_unregister) {
|
||||
if (ssid_sessions[socket.ssid].unregisterBox()) {
|
||||
headers += "\nwtv-noback-all: wtv-";
|
||||
headers += "\nwtv-expire-all: wtv-";
|
||||
var message = "Your account data has been successfully removed. You will now be be redirected to registration.";
|
||||
var redirect = [3, "client:relog?"];
|
||||
} else {
|
||||
var message = "There was an error deleting your account data. Please try again later. If the problem persists, please contact " + minisrv_config.config.service_owner + " to request manual deletion. SSID verifcation may be required to perform a manual deletion.<br><br>Returning from whence you came...";
|
||||
var redirect = [10, "client:goback?"];
|
||||
}
|
||||
} else {
|
||||
message = `Are you sure you wish to unregister your account? Session Data deleted by this tool is unrecoverable, even by ${minisrv_config.config.service_owner}.
|
||||
Please be absolutely sure this is what you want to do!<br><br>
|
||||
<form action="unregister" method="POST" ENCTYPE="x-www-form-encoded">
|
||||
<input type="button" action="client:goback" value="No, I changed my mind" borderimage="file://ROM/Borders/ButtonBorder2.bif" text="gold" selected>
|
||||
<input type="submit" name="confirm_unregister" value="Yes, delete my account" borderimage="file://ROM/Borders/ButtonBorder2.bif" text="gold">
|
||||
</form>`;
|
||||
}
|
||||
|
||||
data = `<html>
|
||||
<head>
|
||||
<display fontsize=medium>
|
||||
<title>Danger Zone!</title>
|
||||
`;
|
||||
if (redirect) data += `<meta http-equiv=Refresh content="${redirect[0]}; url=${redirect[1]}">`;
|
||||
|
||||
data += `</head>
|
||||
<body bgcolor="#000000" text="gold" link="gold" alink="gold" vlink="gold">
|
||||
<br><br>
|
||||
${message}
|
||||
</body>
|
||||
</html>
|
||||
`;
|
||||
@@ -197,6 +197,19 @@ class WTVClientSessionData {
|
||||
}
|
||||
|
||||
|
||||
unregisterBox() {
|
||||
try {
|
||||
if (this.fs.lstatSync(this.session_storage + this.path.sep + this.ssid + ".json")) {
|
||||
return this.fs.unlinkSync(this.session_storage + this.path.sep + this.ssid + ".json");
|
||||
this.session_store = {};
|
||||
}
|
||||
} catch (e) {
|
||||
// Don't log error 'file not found', it just means the client isn't registered yet
|
||||
if (e.code != "ENOENT") console.error(" # Error deleting session data for", this.filterSSID(this.ssid), e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
hasCap(cap) {
|
||||
if (this.capabilities) {
|
||||
return this.capabilities[cap] || false;
|
||||
|
||||
@@ -47,6 +47,9 @@
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
<Content Include="ServiceVault\wtv-cookie\list.js" />
|
||||
<Content Include="ServiceVault\wtv-cookie\reset.js">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
<Content Include="ServiceVault\wtv-flashrom\current-noflash.js">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
@@ -231,9 +234,15 @@
|
||||
<Content Include="ServiceVault\wtv-tricks\info.js">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
<Content Include="ServiceVault\wtv-tricks\register.js">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
<Content Include="ServiceVault\wtv-tricks\tricks.js">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
<Content Include="ServiceVault\wtv-tricks\unregister.js">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
<Content Include="ServiceVault\wtv-update\content\diskmaps\DealerDemo.json">
|
||||
<SubType>Code</SubType>
|
||||
</Content>
|
||||
|
||||
Reference in New Issue
Block a user