diff --git a/.gitignore b/.gitignore
index 8694ade3..09433d2a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -361,13 +361,13 @@ MigrationBackup/
# Fody - auto-generated XML schema
FodyWeavers.xsd
-/zefie_wtvp_minisrv/ServiceVault/wtv-home/6969.html
/zefie_wtvp_minisrv/user_config.json
-/zefie_wtvp_minisrv/ServiceVault/wtv-home/home.zefie.html
-/zefie_wtvp_minisrv/UserServiceVault/*-*/
-/zefie_wtvp_minisrv/UserTemplates/*-*/
+/zefie_wtvp_minisrv/UserServiceVault/*
+/zefie_wtvp_minisrv/UserServiceDeps/*
/zefie_wtvp_minisrv/ServiceLogPost/*.log
-/zefie_wtvp_minisrv/SessionStore/*.json
-/zefie_wtvp_minisrv/SessionStore/*/
+/zefie_wtvp_minisrv/SessionStore/*
/zefie_wtvp_minisrv/ServiceVault/http_pc/viewergen/viewers/HackTV.zip
/zefie_wtvp_minisrv/postest.js
+/zefie_wtvp_minisrv/PageBuilderVault/http_pb/*
+!/zefie_wtvp_minisrv/PageBuilderVault/http_pb/clipart
+!*.gitkeep
diff --git a/CREDITS.md b/CREDITS.md
new file mode 100644
index 00000000..1ac8875a
--- /dev/null
+++ b/CREDITS.md
@@ -0,0 +1,6 @@
+The following people have helped contribute towards making minisrv what it is today:
+
+- eMac - Lzpf and Encryption code
+- [MattMan69](https://github.com/GraspYonOx) - Templates and resources, testing
+- [Jarhead](https://github.com/JarHead4) - wtv-favorites, wtv-author (Page Builder), wtv-guide, and some wtv-setup templates
+- [Sgeo](https://github.com/Sgeo) - wtv-viewer sound patch
diff --git a/README.md b/README.md
index 56454b04..0db214e1 100644
--- a/README.md
+++ b/README.md
@@ -66,3 +66,5 @@ This open source server is in beta status. Use at your own risk.
- [CashApp $altimit](https://cash.app/$altimit)
- Chime: $zefie
- [Credit Card or PayPal (powered by StreamElements)](https://zef.pw/ttv-tip)
+ - [Sign up for a service via a referal link](https://zefie.tv/#ad)
+
diff --git a/user_config_README.md b/user_config_README.md
index 83f8ebe7..02caeef6 100644
--- a/user_config_README.md
+++ b/user_config_README.md
@@ -22,11 +22,6 @@ If you would like to see debug information about realtime bytes received from a
"allow_guests": false
```
If you would like to require registration, disabling guest mode, you can set `allow_guests` to `false`. Default is `true`;
-```
- "pc_server_hidden_service_enabled": false,
- "pc_server_hidden_service": "http_pc"
-```
-Set `pc_server_hidden_service_enabled` option to `true` to enable the HTTP Server for Browsers. Set `pc_server_hidden_service` to a directory under the ServiceVaults to use solely for PC requests. See `ServiceVault/http_pc` for some example code.
```
"post_percentages": [ 0, 25, 50, 100]
```
diff --git a/zefie_wtvp_minisrv/.gitignore b/zefie_wtvp_minisrv/.gitignore
index 9e819338..71cc8aff 100644
--- a/zefie_wtvp_minisrv/.gitignore
+++ b/zefie_wtvp_minisrv/.gitignore
@@ -373,6 +373,9 @@ FodyWeavers.xsd
# minisrv error log file
errors.log
+<<<<<<< HEAD
# PageBuilder Vault
PageBuilderVault/http_pb/*
-!PageBuilderVault/http_pb/clipart
\ No newline at end of file
+!PageBuilderVault/http_pb/clipart
+=======
+>>>>>>> dev
diff --git a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/clipart/Animals/Cats_n_Dogs/an00891_.gif b/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/clipart/Animals/Cats_n_Dogs/an00891_.gif
deleted file mode 100644
index 61c15086..00000000
Binary files a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/clipart/Animals/Cats_n_Dogs/an00891_.gif and /dev/null differ
diff --git a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/clipart/styleMedia/CAT.gif b/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/clipart/styleMedia/CAT.gif
deleted file mode 100644
index 1e25336b..00000000
Binary files a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/clipart/styleMedia/CAT.gif and /dev/null differ
diff --git a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/index.html b/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/index.html
deleted file mode 100644
index ef40c76e..00000000
--- a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/Cat/index.html
+++ /dev/null
@@ -1,70 +0,0 @@
-
-
-
-Cat
-
-
-
-
-Cat
-
- |
-
-
-
-
-Cat
-
-
- |
-
-
-
- |
-
-
-| is cool
- |
-
-
- |
-
-
-
-
-|
-
- |
-
- |
-
- |
-
-
- |
-
-
-|
-
-
- |
-
-
-
-Powered by WebTV
-
- |
-
-
-
- |
-
-
-
-
-
|
-
-
-
-
-
\ No newline at end of file
diff --git a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/index.html b/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/index.html
deleted file mode 100644
index 06ac68f3..00000000
--- a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/index.html
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-WebTV_88150
-
-
-
-
- | | | | |
- |
-|
- |
-|
-Pages of WebTV_88150
- |
-|
- |
|
|
- |
- |
-
-|
-test
-
- |
-|
- | test description
- |
- |
|
- |
|
|
- |
- |
-
- |
|
- |
|
-
-
\ No newline at end of file
diff --git a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/clipart/Business/BS00095_.gif b/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/clipart/Business/BS00095_.gif
deleted file mode 100644
index aafd41cd..00000000
Binary files a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/clipart/Business/BS00095_.gif and /dev/null differ
diff --git a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/clipart/styleMedia/spacefield.gif b/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/clipart/styleMedia/spacefield.gif
deleted file mode 100644
index 37901d66..00000000
Binary files a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/clipart/styleMedia/spacefield.gif and /dev/null differ
diff --git a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/index.html b/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/index.html
deleted file mode 100644
index ab48305d..00000000
--- a/zefie_wtvp_minisrv/PageBuilderVault/http_pb/WebTV_88150/test/index.html
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
-
-test
-
-
-
-test
-
-
-
-
-
-
-
-
-my test list
-
-
- | | | |
- |
- |
- |
- |
- |
- |
- |
-
-
-
-
-
-
-my ancient pc
-
-
- |
-
-
-
- |
-
-
-| my webtv is better
- |
-
-
- |
-
-
-
-
-
-|
-
- |
-
- |
-
- |
-
-
- |
-
-
-|
-
-
- |
-
-
-
-Powered by WebTV
-
- |
-
-
-
- |
-
-
-
-
-
|
-
-
-
-
-
-
\ No newline at end of file
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/BackgroundSound.zip b/zefie_wtvp_minisrv/ServiceDeps/viewergen/BackgroundSound.zip
deleted file mode 100644
index af9ce202..00000000
Binary files a/zefie_wtvp_minisrv/ServiceDeps/viewergen/BackgroundSound.zip and /dev/null differ
diff --git a/zefie_wtvp_minisrv/UserTemplates/anything you put in here has priority.txt b/zefie_wtvp_minisrv/ServiceLogPost/.gitkeep
similarity index 100%
rename from zefie_wtvp_minisrv/UserTemplates/anything you put in here has priority.txt
rename to zefie_wtvp_minisrv/ServiceLogPost/.gitkeep
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-favorite/commit-add-folder.js b/zefie_wtvp_minisrv/ServiceVault/wtv-favorite/commit-add-folder.js
deleted file mode 100644
index 2a139bd8..00000000
--- a/zefie_wtvp_minisrv/ServiceVault/wtv-favorite/commit-add-folder.js
+++ /dev/null
@@ -1,36 +0,0 @@
-var minisrv_service_file = true;
-
-var foldername = request_headers.query.new_folder_name;
-var favstore_exists = session_data.favstore.favstoreExists();
-var folder_exists = session_data.favstore.folderExists(foldername);
-var folder_array = session_data.favstore.getFolders();
-
-if (foldername)
-{
- if (favstore_exists != true)
- session_data.favstore.createFavstore();
-
- if (folder_exists != true)
- {
- if (folder_array.length < minisrv_config.services[service_name].max_folders)
- {
- if (session_data.favstore.checkFolderName(foldername) == true)
- {
- session_data.favstore.createFolder(foldername);
- headers = `300 OK
-Connection: Keep-Alive
-Content-Type: text/html
-Location: wtv-favorite:/favorite
-wtv-expire-all: wtv-favorite:`
- } else {
- headers = `400 That folder name is not valid. Choose a different name and try again.`
- }
- } else {
- headers = `400 You can only have ${minisrv_config.services[service_name].max_folders} folders at one time. Delete some folders and try again.`
- }
- } else {
- headers = `400 That folder already exists. Choose a different name and try again.`
- }
-} else {
- headers = `400 Please type a folder name.`
-}
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-home/images/proto3/HomeTopLeftEdge.gif b/zefie_wtvp_minisrv/ServiceVault/wtv-home/images/proto3/HomeTopLeftEdge.gif
deleted file mode 100644
index 57031832..00000000
Binary files a/zefie_wtvp_minisrv/ServiceVault/wtv-home/images/proto3/HomeTopLeftEdge.gif and /dev/null differ
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-passport/messengerlogin.js b/zefie_wtvp_minisrv/ServiceVault/wtv-passport/messengerlogin.js
deleted file mode 100644
index 6f4f4afe..00000000
--- a/zefie_wtvp_minisrv/ServiceVault/wtv-passport/messengerlogin.js
+++ /dev/null
@@ -1,55 +0,0 @@
-headers = `200 OK
-Connection: Keep-Alive
-wtv-encrypted: true
-Expires: Wed, 09 Oct 1991 22:00:00 GMT
-Content-Type: text/plain`
-
-
-var email = session_data.getSessionData("messenger_email") + "%40" + session_data.getSessionData("messenger_domain");
-var password = session_data.decryptPassword(session_data.getSessionData("messenger_password"));
-var challenge = request_headers.request.split('?')[1];
-
-if (request_headers.request.split('?')[1].substring(0, 3) != "ct=") {
- console.log(" *** Logging into Messenger via MSNP3")
- data = crypto.createHash('md5').update(request_headers.request.split('?')[1] + password).digest("hex");
-} else {
- console.log(" *** Logging into Messenger via MSNP8")
- request_is_async = true; // Make us async
- const request = https.get('https://msnmsgr.escargot.chat/rdr/pprdr.asp', (response) => {
- let req_data = '';
- response.on('data', (chunk) => {
- req_data += chunk.toString();
- });
-
- response.on('end', () => {
- var passporturls = response.headers['passporturls'].split("DALogin=")[1];
- request.end();
- var options = {
- method: 'GET',
- headers: { "Authorization": "Passport1.4 OrgVerb=GET,OrgURL=http%3A%2F%2Fmessenger%2Emsn%2Ecom,sign-in=" + email + ",pwd=" + encodeURIComponent(password) + "," + challenge }
- }
- const request2 = https.get(passporturls, options, (response) => {
- let req_data = '';
- response.on('data', (chunk) => {
- req_data += chunk.toString();
- });
-
- response.on('end', () => {
- var pp = response.headers['authentication-info'];
- pp = pp.split("from-PP='")[1];
- pp = pp.split("'")[0];
- data = pp;
- sendToClient(socket, headers, data);
- });
- });
- request2.on('error', (error) => {
- console.log(' *** Error (Stage 1)', error);
- });
-
- });
- });
-
- request.on('error', (error) => {
- console.log(' *** Error (Stage 1)', error);
- });
-}
\ No newline at end of file
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-tricks/access.js b/zefie_wtvp_minisrv/ServiceVault/wtv-tricks/access.js
deleted file mode 100644
index 35281012..00000000
--- a/zefie_wtvp_minisrv/ServiceVault/wtv-tricks/access.js
+++ /dev/null
@@ -1,13 +0,0 @@
-var minisrv_service_file = true;
-
-// Allow URL access outside our trusted minisrv
-
-if (request_headers.query.url) var url = request_headers.query.url;
-else var url = "client:showalert?message=Please%20provide%20a%20%3Furl%3D%20with%20the%20url%20you%20would%20like%20to%20access.&buttonlabel1=Okay&buttonacction1=client:donothing"
-
-headers = `200 OK
-wtv-visit: `+url+`
-Content-type: text/html`
-
-
-data = '';
\ No newline at end of file
diff --git a/zefie_wtvp_minisrv/SessionStore/.gitkeep b/zefie_wtvp_minisrv/SessionStore/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/zefie_wtvp_minisrv/SharedROMCache/ZefieTV.gif b/zefie_wtvp_minisrv/SharedROMCache/ZefieTV.gif
deleted file mode 100644
index f5b0bc99..00000000
Binary files a/zefie_wtvp_minisrv/SharedROMCache/ZefieTV.gif and /dev/null differ
diff --git a/zefie_wtvp_minisrv/UserServiceDeps/.gitkeep b/zefie_wtvp_minisrv/UserServiceDeps/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/zefie_wtvp_minisrv/UserServiceVault/.gitkeep b/zefie_wtvp_minisrv/UserServiceVault/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/zefie_wtvp_minisrv/app.js b/zefie_wtvp_minisrv/app.js
index 4c1308eb..77024ee5 100644
--- a/zefie_wtvp_minisrv/app.js
+++ b/zefie_wtvp_minisrv/app.js
@@ -1,15 +1,16 @@
'use strict';
-var classPath = __dirname + "/includes/";
+const path = require('path');
+var classPath = __dirname + path.sep + "includes" + path.sep + "classes" + path.sep;
const { WTVShared, clientShowAlert } = require(classPath + "WTVShared.js");
const wtvshared = new WTVShared(); // creates minisrv_config
classPath = wtvshared.getAbsolutePath(classPath, __dirname);
const fs = require('fs');
const tls = require('tls');
-const path = require('path');
const zlib = require('zlib');
const http = require('follow-redirects').http
const https = require('follow-redirects').https
+const httpx = require(classPath + "/HTTPX.js");
const net = require('net');
const crypto = require('crypto')
const CryptoJS = require('crypto-js');
@@ -40,7 +41,7 @@ function shutdown(signal = 'SIGTERM') {
};
}
-function findServiceByPort(port) {
+function getServiceByPort(port) {
var service_name = null;
Object.keys(minisrv_config.services).forEach(function(k) {
if (service_name) return;
@@ -52,22 +53,39 @@ function findServiceByPort(port) {
return service_name;
}
-
function getPortByService(service) {
if (minisrv_config.services[service]) return minisrv_config.services[service].port;
else return null;
}
+function getSocketServer(socket) {
+ var server = null;
+
+ if (socket._server) {
+ if (socket._server._connectionKey) server = socket._server;
+ } else if (socket._parent) {
+ if (socket._parent._server) {
+ if (socket._parent._server._connectionKey) server = socket._parent._server;
+ }
+ }
+ return server;
+}
+
function getSocketDestinationPort(socket) {
- return parseInt(socket._server._connectionKey.split(':')[2]);
+ return getServerDestinationPort(getSocketServer(socket));
+}
+
+function getServerDestinationPort(server) {
+ return parseInt(server._connectionKey.split(':')[2]);
}
function verifyServicePort(service_name, socket) {
if (!minisrv_config.config.enable_port_isolation) return service_name;
- if (socket._server._connectionKey) {
- var socketPort = getSocketDestinationPort(socket);
+ var server = getSocketServer(socket);
+ if (server) {
+ var socketPort = getServerDestinationPort(server);
if (minisrv_config.services[service_name]) {
- if (minisrv_config.services[service_name].port == socketPort) {
+ if (minisrv_config.services[service_name].port === socketPort) {
if (minisrv_config.services[service_name].servicevault_dir)
return minisrv_config.services[service_name].servicevault_dir;
else
@@ -78,6 +96,25 @@ function verifyServicePort(service_name, socket) {
return false;
}
+function getServiceByVaultDir(vault_dir) {
+ var res = vault_dir;
+ Object.keys(minisrv_config.services).forEach((k) => {
+ if (res != vault_dir) return;
+ if (minisrv_config.services[k].servicevault_dir) {
+ if (minisrv_config.services[k].servicevault_dir === vault_dir) {
+ res = k;
+ return false;
+ }
+ } else {
+ if (k === vault_dir) {
+ res = k;
+ return false;
+ }
+ }
+ });
+ return res;
+}
+
function configureService(service_name, service_obj, initial = false) {
if (service_obj.disabled) return false;
@@ -127,10 +164,7 @@ var pc_ports = [];
// works for service vault scripts too.
if (!String.prototype.reverse) {
String.prototype.reverse = function () {
- var splitString = this.split("");
- var reverseArray = splitString.reverse();
- var joinArray = reverseArray.join("");
- return joinArray;
+ return this.split("").reverse().reverseArray.join("");
}
}
@@ -148,26 +182,7 @@ if (!Object.prototype.getCaseInsensitiveKey) {
}
function getServiceString(service, overrides = {}) {
- // used externally by service scripts
- if (service === "all") {
- var out = "";
- Object.keys(minisrv_config.services).forEach(function (k) {
- if (overrides.exceptions) {
- Object.keys(overrides.exceptions).forEach(function (j) {
- if (k != overrides.exceptions[j]) out += minisrv_config.services[k].toString(overrides) + "\n";
- });
- } else {
- out += minisrv_config.services[k].toString(overrides) + "\n";
- }
- });
- return out;
- } else {
- if (!minisrv_config.services[service]) {
- throw ("SERVICE ERROR: Attempted to provision unconfigured service: " + service)
- } else {
- return minisrv_config.services[service].toString(overrides);
- }
- }
+ return wtvshared.getServiceString(service, overrides);
}
@@ -233,8 +248,8 @@ var runScriptInVM = function (script_data, user_contextObj = {}, privileged = fa
"minisrv_version_string": z_title,
"getServiceString": getServiceString,
"sendToClient": sendToClient,
- "ServiceDeps": ServiceDeps,
"service_vaults": service_vaults,
+ "service_deps": service_deps,
"cwd": __dirname, // current working directory
// Our prototype overrides
@@ -311,10 +326,6 @@ var runScriptInVM = function (script_data, user_contextObj = {}, privileged = fa
return contextObj; // updated context object with whatever global varibles the script set
}
-function sendToPCClient(headers, data) {
-
-}
-
async function processPath(socket, service_vault_file_path, request_headers = new Array(), service_name, shared_romcache = null, pc_services = false) {
var headers, data = null;
var request_is_async = false;
@@ -346,8 +357,14 @@ async function processPath(socket, service_vault_file_path, request_headers = ne
}
var privileged = false;
- if (minisrv_config.services[service_name]) privileged = (minisrv_config.services[service_name].privileged) ? true : false;
- else if (pc_services) privileged = (minisrv_config.services['pc_services'].privileged) ? true : false;
+ if (minisrv_config.services[service_name]) {
+ privileged = (minisrv_config.services[service_name].privileged) ? true : false;
+ } else if (pc_services) {
+ var real_service_name = getServiceByVaultDir(service_name);
+ if (real_service_name) {
+ privileged = (minisrv_config.services[real_service_name].privileged) ? true : false;
+ }
+ }
if (privileged) {
updateFromVM.push(["ssid_sessions", "ssid_sessions"]); // global ssid_sessions object for privileged service scripts, such as wtv-setup, wtv-head-waiter, etc
@@ -362,10 +379,9 @@ async function processPath(socket, service_vault_file_path, request_headers = ne
if (shared_romcache.indexOf(minisrv_config.config.SharedROMCache) != -1) {
var service_path_presplit = shared_romcache.split(path.sep);
service_path_presplit.splice(service_path_presplit.findIndex((element) => element === 'ROMCache'), 1);
- var service_path_romcache = service_path_presplit.join(path.sep);
+ var service_path_romcache = service_vault_dir + path.sep + service_path_presplit.join(path.sep);
var service_vault_file_path_romcache = wtvshared.returnAbsolutePath(wtvshared.makeSafePath(service_path_romcache));
if (fs.existsSync(service_vault_file_path_romcache)) {
-
service_path = service_path.replace(wtvshared.fixPathSlashes(minisrv_config.config.SharedROMCache), 'ROMCache');
service_vault_file_path = service_vault_file_path_romcache;
usingSharedROMCache = true;
@@ -582,7 +598,7 @@ async function processPath(socket, service_vault_file_path, request_headers = ne
headers = errpage[0];
data = errpage[1];
if (pc_services) {
- if (minisrv_config.services.pc_services.show_verbose_errors)
+ if (minisrv_config.services[real_service_name].show_verbose_errors)
data += "
The interpreter said:
" + e.stack + "
";
}
console.error(" * Scripting error:", e);
@@ -766,11 +782,17 @@ minisrv-no-mail-count: true`;
}
if (pc_services) {
- if (original_service_name == service_name) console.log(" * PC request on service " + service_name + " for " + request_headers.request_url, 'on', socket.id);
- else console.log(" * PC request on service " + original_service_name + " (Service Vault " + service_name + ") for " + request_headers.request_url, 'on', socket.id);
+ var ssl = (socket.ssl) ? true : false;
+ if (original_service_name == service_name) console.log(" * " + ((ssl) ? "SSL " : "") + "PC request on service " + service_name + " for " + request_headers.request_url, 'on', socket.id);
+ else console.log(" * " + ((ssl) ? "SSL " : "") + "PC request on service " + original_service_name + " (Service Vault " + service_name + ") for " + request_headers.request_url, 'on', socket.id);
+ } else {
+ var service_name = verifyServicePort(shortURL.split(':/')[0], socket);
}
- // Check URL for :/, but not :// (to differentiate wtv urls)
- if (shortURL.indexOf(':/') >= 0 && shortURL.indexOf('://') == -1) {
+ var allow_double_slash = false;
+ if (minisrv_config.services[service_name]) {
+ if (minisrv_config.services[service_name].allow_double_slash) allow_double_slash = true;
+ }
+ if ((shortURL.indexOf(':/') >= 0) && (shortURL.indexOf('://') == -1 || (shortURL.indexOf('://') && allow_double_slash))) {
var ssid = socket.ssid;
if (ssid == null) {
// prevent possible injection attacks via malformed SSID and filesystem SessionStore
@@ -785,8 +807,7 @@ minisrv-no-mail-count: true`;
} else {
console.log(" * " + reqverb + " for " + request_headers.request_url, 'on', socket.id);
}
-
- var service_name = verifyServicePort(shortURL.split(':/')[0], socket);
+
if (!service_name) {
// detect if client is trying to load wtv-star due to client-perceived error
if (getSocketDestinationPort(socket) == getPortByService("wtv-star")) {
@@ -1073,7 +1094,7 @@ function headerStringToObj(headers, response = false) {
return headers_obj;
}
-async function sendToClient(socket, headers_obj, data) {
+async function sendToClient(socket, headers_obj, data = null) {
var headers = "";
var content_length = 0;
if (typeof (data) === 'undefined' || data === null) data = '';
@@ -1913,6 +1934,17 @@ if (minisrv_config.config.ServiceVaults) {
throw ("ERROR: No Service Vaults defined!");
}
+var service_deps = new Array();
+if (minisrv_config.config.ServiceDeps) {
+ Object.keys(minisrv_config.config.ServiceDeps).forEach(function (k) {
+ var service_dep = wtvshared.returnAbsolutePath(minisrv_config.config.ServiceDeps[k]);
+ service_deps.push(service_dep);
+ console.log(" * Configured Service Dependencies at", service_dep, "with priority", (parseInt(k) + 1));
+ })
+} else {
+ throw ("ERROR: No Service Dependancies Directory (SessionDeps) defined!");
+}
+
if (minisrv_config.config.SessionStore) {
var SessionStore = wtvshared.returnAbsolutePath(minisrv_config.config.SessionStore);
console.log(" * Configured Session Storage at", SessionStore);
@@ -1920,17 +1952,12 @@ if (minisrv_config.config.SessionStore) {
throw ("ERROR: No Session Storage Directory (SessionStore) defined!");
}
-if (minisrv_config.config.ServiceDeps) {
- var ServiceDeps = wtvshared.returnAbsolutePath(minisrv_config.config.ServiceDeps);
- console.log(" * Configured Service Dependencies at", ServiceDeps);
-} else {
- throw ("ERROR: No Service Dependencies Directory (SessionDeps) defined!");
-}
var service_ip = minisrv_config.config.service_ip;
Object.keys(minisrv_config.services).forEach(function (k) {
if (configureService(k, minisrv_config.services[k], true)) {
- console.log(" * Configured Service:", k, "on Port", minisrv_config.services[k].port, "- Service Host:", minisrv_config.services[k].host, "- Bind Port:", !minisrv_config.services[k].nobind, "- PC Services Mode:", (minisrv_config.services[k].pc_services) ? true : false);
+ var using_tls = (minisrv_config.services[k].pc_services && minisrv_config.services[k].https_cert && minisrv_config.services[k].use_https) ? true : false;
+ console.log(" * Configured Service:", k, "on Port", minisrv_config.services[k].port, "- Service Host:", minisrv_config.services[k].host + ((using_tls) ? " (TLS)" : ""), "- Bind Port:", !minisrv_config.services[k].nobind, "- PC Services Mode:", (minisrv_config.services[k].pc_services) ? true : false);
if (minisrv_config.services[k].local_nntp_port) {
if (!wtvnewsserver) {
@@ -1992,6 +2019,10 @@ if (minisrv_config.config.user_accounts.max_users_per_account > 99) {
minisrv_config.config.user_accounts.max_users_per_account = 99;
}
+// shenanigans
+if (minisrv_config.config.shenanigans) console.log(" * WARNING: Shenanigans level", minisrv_config.config.shenanigans, "enabled");
+else console.log(" * Shenanigans disabled");
+
process.on('uncaughtException', function (err) {
console.error((err && err.stack) ? err.stack : err);
});
@@ -2023,25 +2054,55 @@ if (!minisrv_config.config.bind_ip) minisrv_config.config.bind_ip = "0.0.0.0";
pc_bind_ports.every(function (v) {
try {
var server = express();
- server.listen(v, minisrv_config.config.bind_ip);
+ var service_name = getServiceByPort(v);
+ var service_handler = http;
+ var server_opts = {};
+ var using_tls = (minisrv_config.services[service_name].https_cert && minisrv_config.services[service_name].use_https) ? true : false;
+
+ if (using_tls) {
+ service_handler = httpx;
+ server_opts =
+ {
+ key: fs.readFileSync(wtvshared.parseConfigVars(minisrv_config.services[service_name].https_cert.key)),
+ cert: fs.readFileSync(wtvshared.parseConfigVars(minisrv_config.services[service_name].https_cert.cert)),
+ };
+ }
+ //service_handler.createServer(server_opts, server).listen(v, minisrv_config.config.bind_ip);
+
+ if (using_tls && !minisrv_config.services[service_name].force_https) {
+ service_handler = httpx; // HTTP and HTTPS on the same port
+ }
+
+ service_handler.createServer(server_opts, server).listen(v, minisrv_config.config.bind_ip);
initstring_pc += v + ", ";
+
server.get('*', (req, res) => {
- var request_headers = {};
+ var ssl = (req.socket.ssl) ? true : false;
+ var service_name = getServiceByPort(v);
+ req.socket.minisrv_pc_mode = true;
+ req.socket.res = res;
+ req.socket.service_name = service_name;
req.socket.id = parseInt(crc16('CCITT-FALSE', Buffer.from(String(req.socket.remoteAddress) + String(req.socket.remotePort), "utf8")).toString(16), 16);
- socket_sessions[req.socket.id] = [];
- var service_name = findServiceByPort(v);
+ socket_sessions[req.socket.id] = [];
+
+ var request_headers = {};
request_headers['request'] = "GET " + req.originalUrl + " HTTP/1.1";
request_headers.request_url = req.originalUrl;
Object.keys(req.headers).forEach(function (k) {
request_headers[k] = req.headers[k];
});
request_headers.query = req.query;
- if (minisrv_config.config.debug_flags.show_headers) console.log(" * Incoming PC Headers on", service_name, "socket ID", req.socket.id, wtvshared.filterRequestLog(request_headers));
request_headers.service_name = service_name;
- req.socket.minisrv_pc_mode = true;
- req.socket.res = res;
- req.socket.service_name = service_name;
- processURL(req.socket, request_headers, true)
+
+ if (minisrv_config.config.debug_flags.show_headers) console.log(" * Incoming " + ((ssl) ? "HTTPS" : "HTTP") + " PC Headers on", service_name, "socket ID", req.socket.id, wtvshared.filterRequestLog(request_headers));
+ if (!ssl && minisrv_config.services[service_name].force_https && minisrv_config.services[service_name].https_cert) {
+ var headers = `302 Moved
+Location: https://${(minisrv_config.services[service_name].https_cert.domain) ? minisrv_config.services[service_name].https_cert.domain : minisrv_config.services[service_name].host}:${minisrv_config.services[service_name].port}${req.originalUrl}
+Content-type: text/html`;
+ sendToClient(req.socket, headers);
+ } else {
+ processURL(req.socket, request_headers, true)
+ }
})
return true;
} catch (e) {
diff --git a/zefie_wtvp_minisrv/includes/ServiceDeps/https/selfsigned_cert.pem b/zefie_wtvp_minisrv/includes/ServiceDeps/https/selfsigned_cert.pem
new file mode 100644
index 00000000..f4973008
--- /dev/null
+++ b/zefie_wtvp_minisrv/includes/ServiceDeps/https/selfsigned_cert.pem
@@ -0,0 +1,32 @@
+-----BEGIN CERTIFICATE-----
+MIIFgzCCA2sCFBKo/bZ2E7HHlOfsS4UrBJl1UgpTMA0GCSqGSIb3DQEBCwUAMH0x
+CzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEXMBUGA1UECgwOWmVmaWUg
+TmV0d29ya3MxJDAiBgNVBAsMG21pbmlzcnYgZGVmYXVsdCBjZXJ0aWZpY2F0ZTEc
+MBoGA1UEAwwTbWluaXNydi5wY19zZXJ2aWNlczAgFw0yMjExMzAxNDE3MTVaGA8y
+MTIyMTEwNjE0MTcxNVowfTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr
+MRcwFQYDVQQKDA5aZWZpZSBOZXR3b3JrczEkMCIGA1UECwwbbWluaXNydiBkZWZh
+dWx0IGNlcnRpZmljYXRlMRwwGgYDVQQDDBNtaW5pc3J2LnBjX3NlcnZpY2VzMIIC
+IjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAyOZ9iOYqr1cZLZKEWT8I5f7A
+l3bd9wslCPKR9Mj3IwEy8KQjxwqJYl6jPvbNMtIgZo7Y9pFBovJEUIFFd4Ffshrm
+QZZfDJtw+KvZF3m/GdmgRc147m++Ve6OSOvuSdtAOAiujhmwjHsTif+YTcjsOfAT
+O9bhThIespeU4qDoYyDD+3A4wxwxCIFN7clSr7TpPS3uUQ7woCsi1nxdU8B5txT2
+KfXOlyL0uwygxEEUy0XrDdpHFt9sV0LWiy4Ho3wVf3dhv2odSEeh8SK04qWMga4A
+fXEXWwg+4cuho8p24MuZZRsCrqM1O7Hm8wz9FiBJJF5US1jRLOf9sz/iaEz2Mz7C
++skG/3gsQ1cI+c/f4jwafYLwJs9XJ141nAxTHxAg2fjg0+Oqe54rs2v/8mBy6r6L
+bLBlyNMZ4CFD/OhrE8tnP9WhX/l2DUmsQGq2OaL7i3Tjp2jWEwoY0MVcRYiJgA8L
+5cbWnIWuR0WrDmiKwk1gLdGhvqLxYkouST68zr8Oy9TX2G2s9hF6IZbNN8/ZzMnm
+y5KjM+DjSCjxym2F03obVGbzCUaqDUHNY84oddoF7zu8lzP8UVYwjvHOvCCQa2Az
+30KZjF6YEDYxhY4KtxNDxNJ9EHBxXlyvYRo/XM/YOk0wdoZPGq4tsj4BZrXSfuch
+AO0Pr8qDOt+134K1t5ECAwEAATANBgkqhkiG9w0BAQsFAAOCAgEAToJKBCsCcBWB
+mNdj320fu5emb7ZYDyK5wpCBFwMLl/kx/wfNUB6E3GZJdvFBr3zAOrUbwrXZ9+2T
+MIP1S5uaG5eCmtLZyH0AjsJa70gUwyqk3VSHXErtT7tbLHTCu/Lqn8XeKiRqjKGi
++sI3L4KFzlDELFT8iqkR+MOC8cawKsO1LV/8T0XrRx7zfflQFheo+Zkkn3/EsjP9
+vwKX5+3u5jyLgYdUOVRoUHI2L9hp6ubcqqKTwyKg74PDKsUkg+dSt9QL+UO1FPT8
+hDlvKg2p7w3UawF675AgzyF6tsgCYBs7ThaNYWgjKZ9ALDvTPTypUCsNnSZ0lNaT
+iU+dzEocMo2WesE5B1KH6WdAKD54VV4XHPPEzM2WNRTfs+JiTf9aNTJ2tatwvB5w
+6glFkgICZ4TgHCADHE0h0aPmVEdzJ6bBA4tUTl6GqWUTVgj53LsdB3NcaEasg/7A
+zzgPzsw6bZivrodyr2aXSV8VPIzoy6RjLNh4sujGBN4QU+v3o6X9me32WljSQzzx
+5F3pg/okFauWjF8I6VPKVPW5ReUoRI7B/RkrHEqpCzpPltVV5cHmP+2V5Q6UJegC
+FebNB1npEfOb/ozpxm4b3UhjrnmIO4NZZs8lvZy/naC+F4QOnMpSGfBjsdZuBlBv
+o3nALXySQNoUsUhfkpOG/8O9K3HrSYk=
+-----END CERTIFICATE-----
diff --git a/zefie_wtvp_minisrv/includes/ServiceDeps/https/selfsigned_key.pem b/zefie_wtvp_minisrv/includes/ServiceDeps/https/selfsigned_key.pem
new file mode 100644
index 00000000..256f3e5e
--- /dev/null
+++ b/zefie_wtvp_minisrv/includes/ServiceDeps/https/selfsigned_key.pem
@@ -0,0 +1,51 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIIJKgIBAAKCAgEAyOZ9iOYqr1cZLZKEWT8I5f7Al3bd9wslCPKR9Mj3IwEy8KQj
+xwqJYl6jPvbNMtIgZo7Y9pFBovJEUIFFd4FfshrmQZZfDJtw+KvZF3m/GdmgRc14
+7m++Ve6OSOvuSdtAOAiujhmwjHsTif+YTcjsOfATO9bhThIespeU4qDoYyDD+3A4
+wxwxCIFN7clSr7TpPS3uUQ7woCsi1nxdU8B5txT2KfXOlyL0uwygxEEUy0XrDdpH
+Ft9sV0LWiy4Ho3wVf3dhv2odSEeh8SK04qWMga4AfXEXWwg+4cuho8p24MuZZRsC
+rqM1O7Hm8wz9FiBJJF5US1jRLOf9sz/iaEz2Mz7C+skG/3gsQ1cI+c/f4jwafYLw
+Js9XJ141nAxTHxAg2fjg0+Oqe54rs2v/8mBy6r6LbLBlyNMZ4CFD/OhrE8tnP9Wh
+X/l2DUmsQGq2OaL7i3Tjp2jWEwoY0MVcRYiJgA8L5cbWnIWuR0WrDmiKwk1gLdGh
+vqLxYkouST68zr8Oy9TX2G2s9hF6IZbNN8/ZzMnmy5KjM+DjSCjxym2F03obVGbz
+CUaqDUHNY84oddoF7zu8lzP8UVYwjvHOvCCQa2Az30KZjF6YEDYxhY4KtxNDxNJ9
+EHBxXlyvYRo/XM/YOk0wdoZPGq4tsj4BZrXSfuchAO0Pr8qDOt+134K1t5ECAwEA
+AQKCAgEAogPfcSvNeKIRGAN04FRJZNHRl1SxJK3ELDcTJgl75Kru3cpBYB9LNB2G
+IRz/1uBGaO8CYbY67KHcHeBimUGoXwX6cyJFfPFOZfyQkrIIP1yWODTANem/4aUE
+8iHyhXVfkNDPlKF7E4+d7khGF1TVzNOjbzqXcFKElxpPY4TIZEjkRD34SMDPekBt
+DDqziCepgUEtVAlsXH7tFXQt/4DVp6Qr8SLefFwgaUiBzkN99YBpUz6Y3gVIZgbs
+5kk0t881txobpjZ5bvT10HVg0vcXHO2qT3+Iik1YCNgjfuekfx0yk6r4usW8BGww
+CAqNf+6BjebUq/7wkfp1Sr1WZS7LzJE+qAurgn9605l/gVF48onlhcBu++mOe4ea
+3aiD7CmpQch7gKQQifGCNB68AkJB0n5kACKLDo81SYwTa1qI2eJU8yJ+dBPBnMUh
+tULXbVwotGdUbvOjO69y0mI4OGcO0LRPyQ7jos9QcXW9rxrwhIukkhH6F1FsSv42
+BZNDzWcXSK8O+quNeznxB0E43bLx3eVmx0oDdEZJ30+BbjEKpmJQZtGodwnzsJCX
+gs3b00UfaI5ClpB+Tip3PCGW5qg0DKqKGuuOFwTtN2ZTDNbSo4PqE5YpgJDRP8/t
+Acs+6KGs9DlYlfMeuIpZZx+0GkKZBeoaqcwKZ2iiVCwhGUAldZECggEBAPM+5/Ym
+8oLqcin7woiMV43V+dptrRq4IMUB5P5IXSJwmRJiGVVfTUXKPV1T61CPGVhAehac
+dWqU4K1D0gZD1X/yxDMNt+YCWxqR44ukZCedAN2zHC3FrXgJdOmnaq8UIhiB0xaj
+pJ92rwBCQscw1/V1vX2zLDiW52orzCLOdNkLtQ+uUkDtk67zIHCS2b9YH4NwAc4X
+Ylh/yeIF31DIUw1k+GYhiPLVxRBfCw1pFcUPWSSPV1kNf72EaAElVyRtrS0RpMn+
+/v7ZALyc7DzBU2n1hQGYFJpz0VkTUYE0gULnKyodyZUnm0IAXs05WJRO3Towz8+P
+Fq1bYzCN3hHT3AMCggEBANNvLmIE0EfnYTUE3wCFBmoHckn08L33t/cUuoGu0g9f
+3rM+B9ggI8apZGIFoamXG/jt0eI2rBN28or5fGdB8JsDijAzBYyJX7sOEUmR5peH
+xLIT737JuHZrV35sXF+17Ntaov+m6yzSoPDDxpIHDTemtyFwtOK7N3Uw8130MvrR
+PRAbFNu9lp9OGECskW2a1zmxVevw+6A6i+QRQ9FZPVMprE1QU2KtMNNdoQ2iNe/d
+5QP/8nAOlKOrrK5EzIxAjoFz7NP4fQu3Z+J2ze45vhJKUY/s4B5duX46p7pdH7Ve
+iYlFetcNmF9IilzoF3nUCOO/NnMZd+j4gX4wmfQsK9sCggEBANBGdbFTqeSkv7np
+AqmOmU0uATChJk4xiIWHWL7N0Uky5i5SZuStpGl0gFSQDXW+AXKKSr9fmj33WeWh
+o4yPuphCkvIv9d1w+PboIdCoosU0btBlk2Qx1ZVpa3zBR9y/PW6Eguzok4WixrdP
+BQSvcsqO1QBzURLnSyCifbjz1CMgHhleJrnHcuOi84zQgLeQyfLuDe2cIi4qxP7O
+DmeKD2rxoKs6XZunpIOfDcSezPAdczOVtLHgmBb6717DzTi43EYxzErVFxu5TSMy
+rihbVIPuoMM7p7CUKJW/r9MU1PUnINOAC+G1tv+td377cjgSyuQPdXCAUWeAT478
+ekADimcCggEANxZJnGoqpgFH11t8ipMeF7P2+APkUWpgOPTinvUgb7cHu+WWf53o
+FFN//vX+p8PiGtpDi8+4x51/FexomDKa8JhcgbBZasND+OVyZZuo26QZAFinVn5S
+HDBdbGfpLVql6oTT4Q3pShVar0Ai1VsW+3/pSMInrscebN8jGUCNo8GuSir0JUhh
+HQJo2Tjc7xSfrL1iaIWx2Y5HclV5OOsqSieaZ85c22HKTdegJYA001kZ2Q/vZ3i1
+C2uoIwNz07riJiJA+v1L/yh63YscnkvXFMbeN0R9JAxBTv0TREANCeEmrmg22B8H
+qxOoUQp7S1eONWBVXGmvTzin7GvXQMHdbwKCAQEAmxvk2rZlWc3dAGRb6yIIJntO
+eDZo/WwDUEGqHGshHF9YTn1mQdVDmvT7bTVo1bhvg41gYtk2+D/YPHBhTah9kvNF
+1QV+Q2d1XKIdrSSo6gvHQh/s0xRo+Dkb30Dz1ROHxptw00UAZ715PFbwRJ7QZLaR
+VHL7z+vBZ2AcgtSJ+R6w3uNKyBYC7dROrVDcJPMwNHAVF54urhh4n3j2Pqr9bpGx
+AlVZ0y4GSMmuLvU3o73QcTwIpBjNzXLzsMOPJL0W/Z2SMtM8V61oScfrVXSUGNW2
+tFveTBGSLZuOE/3QPL2UukVjnMhOoPFymgXeF2aK1IdlitXlFgEuMipsO6f4CQ==
+-----END RSA PRIVATE KEY-----
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/glossary.json b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/glossary.json
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/glossary.json
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/glossary.json
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/Forbidden.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/Forbidden.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/Forbidden.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/Forbidden.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/HostMissing.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/HostMissing.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/HostMissing.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/HostMissing.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/InternalServerError.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/InternalServerError.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/InternalServerError.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/InternalServerError.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/NotFound.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/NotFound.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/NotFound.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/NotFound.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/ServiceUnavailable.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/ServiceUnavailable.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Alerts/ServiceUnavailable.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Alerts/ServiceUnavailable.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/Index.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/Index.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/Index.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/Index.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISP.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISP.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISP.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISP.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ1.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ1.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ1.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ1.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3B.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3B.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3B.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ3B.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4B.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4B.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4B.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4B.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4C.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4C.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4C.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ4C.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5B.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5B.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5B.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/OISPQ5B.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Ach.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Ach.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Ach.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Ach.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Credit.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Credit.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Credit.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Credit.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Debit.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Debit.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Debit.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/Debit.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/PayMethods.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/PayMethods.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/PayMethods.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Billing/PayMethods/PayMethods.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Chat/ChatDiploma.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Chat/ChatDiploma.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Chat/ChatDiploma.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Chat/ChatDiploma.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Index/Main/1.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Index/Main/1.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Index/Main/1.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Index/Main/1.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd4.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd4.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd4.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd4.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd5.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd5.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd5.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Keyboard/Cmd/Cmd5.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Attach.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Attach.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Attach.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Attach.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/More.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/More.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/More.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/More.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Show.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Show.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Show.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Attach/Show.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/CarbCops.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/CarbCops.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/CarbCops.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/CarbCops.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/More.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/More.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/More.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/More.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/Show.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/Show.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/Show.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/CarbCops/Show.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Compose.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Compose.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Compose.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Compose.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Privacy.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Privacy.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Privacy.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Privacy.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Reading.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Reading.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Reading.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/Reading.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/WriteMail.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/WriteMail.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/WriteMail.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GetStarted/WriteMail.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GettingStarted.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GettingStarted.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/GettingStarted.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/GettingStarted.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Main.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Main.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Main.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Main.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture4.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture4.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture4.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture4.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture5.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture5.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture5.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Picture/Picture5.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Reply/Reply2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Signature/Signature3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Storage/Storage2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/WhatIs.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/WhatIs.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/WhatIs.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/WhatIs.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing4.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing4.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing4.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing4.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing5.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing5.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing5.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing5.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing6.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing6.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing6.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/Write/Writing6.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/mail.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/mail.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Mail/mail.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Mail/mail.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/MailPOP/WhatIs/WhatIs2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Scrapbook/AddFromMail/AddFromMail3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview4.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview4.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview4.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview4.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview5.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview5.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview5.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Spelling/Overview/Overview5.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Find.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Find.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Find.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Find.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Paste.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Paste.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Paste.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Paste.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/PasteWord.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/PasteWord.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/PasteWord.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/PasteWord.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Review.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Review.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Review.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Review.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Select.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Select.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Select.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Select.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/SelectWord.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/SelectWord.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/SelectWord.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/SelectWord.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Start.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Start.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Start.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/CutPaste/Start.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Capitals.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Capitals.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Capitals.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Capitals.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Erasing.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Erasing.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Erasing.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/Erasing.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/GettingRidOf.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/GettingRidOf.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/GettingRidOf.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/GettingRidOf.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/InsertingSpace.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/InsertingSpace.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/InsertingSpace.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/InsertingSpace.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextLine.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextLine.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextLine.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextLine.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextTextBox.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextTextBox.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextTextBox.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/NextTextBox.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/OnScreenKeyboard.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/OnScreenKeyboard.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/OnScreenKeyboard.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/OnScreenKeyboard.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/PreviousTextBox.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/PreviousTextBox.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/PreviousTextBox.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/OnScreenKeyboard/PreviousTextBox.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/Send.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/Send.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/Send.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/Send.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Find.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Find.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Find.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Find.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Goto.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Goto.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Goto.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Goto.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=HangUp.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=HangUp.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=HangUp.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=HangUp.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Info.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Info.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Info.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Info.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Messenger.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Messenger.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Messenger.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Messenger.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Print.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Print.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Print.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Print.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Reload.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Reload.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Reload.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Reload.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Save.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Save.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Save.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=Save.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TVvsWeb.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TVvsWeb.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TVvsWeb.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TVvsWeb.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TvWindow.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TvWindow.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TvWindow.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=TvWindow.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=logo.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=logo.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=logo.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options&page=logo.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options.htm b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options.htm
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options.htm
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Tips/Options/topic=Tips&subtopic=Options.htm
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/1.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/1.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/1.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/1.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/3.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/3.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/3.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/3.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/4.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/4.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/4.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/4.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/5.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/5.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/5.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/5.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/6.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/6.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/6.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/6.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/7.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/7.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/7.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/AddUser/7.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses2.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses2.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses2.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/prerendered/Users/Addresses/Addresses2.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/templates/glossary.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/templates/glossary.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/templates/glossary.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/templates/glossary.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/templates/glossary_index.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/templates/glossary_index.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/templates/glossary_index.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/templates/glossary_index.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/templates/glossary_word_index.js b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/templates/glossary_word_index.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-guide/templates/glossary_word_index.js
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-guide/templates/glossary_word_index.js
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-mail/welcomeMail.txt b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-mail/welcomeMail.txt
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-mail/welcomeMail.txt
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-mail/welcomeMail.txt
diff --git a/zefie_wtvp_minisrv/ServiceDeps/templates/wtv-news/post-unavailable.html b/zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-news/post-unavailable.html
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/templates/wtv-news/post-unavailable.html
rename to zefie_wtvp_minisrv/includes/ServiceDeps/templates/wtv-news/post-unavailable.html
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--1.0-HE.zip b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--1.0-HE.zip
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--1.0-HE.zip
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--1.0-HE.zip
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--1.0.zip b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--1.0.zip
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--1.0.zip
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--1.0.zip
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--1.1.zip b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--1.1.zip
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--1.1.zip
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--1.1.zip
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--2.5-HE.zip b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--2.5-HE.zip
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--2.5-HE.zip
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--2.5-HE.zip
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--2.5.zip b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--2.5.zip
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/AppData--2.5.zip
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/AppData--2.5.zip
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/HackTV_min.zip b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/HackTV_min.zip
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/HackTV_min.zip
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/HackTV_min.zip
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/HackersEdition_Setup.bmp.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/HackersEdition_Setup.bmp.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/HackersEdition_Setup.bmp.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/HackersEdition_Setup.bmp.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/ResData--1.0.res.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/ResData--1.0.res.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/ResData--1.0.res.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/ResData--1.0.res.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/ResData--1.1.res.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/ResData--1.1.res.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/ResData--1.1.res.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/ResData--1.1.res.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/ResData--2.5.res.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/ResData--2.5.res.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/ResData--2.5.res.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/ResData--2.5.res.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/SuperViewer_Setup.bmp.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/SuperViewer_Setup.bmp.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/SuperViewer_Setup.bmp.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/SuperViewer_Setup.bmp.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--1.0-HE.exe.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--1.0-HE.exe.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--1.0-HE.exe.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--1.0-HE.exe.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--1.0.exe.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--1.0.exe.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--1.0.exe.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--1.0.exe.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--1.1.exe.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--1.1.exe.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--1.1.exe.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--1.1.exe.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--2.5-HE.exe.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--2.5-HE.exe.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--2.5-HE.exe.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--2.5-HE.exe.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--2.5.exe.gz b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--2.5.exe.gz
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/WebTVIntel--2.5.exe.gz
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/WebTVIntel--2.5.exe.gz
diff --git a/zefie_wtvp_minisrv/ServiceDeps/viewergen/readme_disksets.txt b/zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/readme_disksets.txt
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/viewergen/readme_disksets.txt
rename to zefie_wtvp_minisrv/includes/ServiceDeps/viewergen/readme_disksets.txt
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/FIJI/dc_production_normal.tok b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/FIJI/dc_production_normal.tok
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/FIJI/dc_production_normal.tok
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/FIJI/dc_production_normal.tok
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_OpenISP_56k.tok b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_OpenISP_56k.tok
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_OpenISP_56k.tok
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_OpenISP_56k.tok
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.detok.txt b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.detok.txt
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.detok.txt
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.detok.txt
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.tok b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.tok
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.tok
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/LC2/LC2_WTV_18006138199.tok
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_hsd.tok b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_hsd.tok
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_hsd.tok
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_hsd.tok
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_normal.tok b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_normal.tok
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_normal.tok
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/UTV/utv_normal.tok
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_OISP.tok b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_OISP.tok
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_OISP.tok
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_OISP.tok
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.detok.txt b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.detok.txt
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.detok.txt
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.detok.txt
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.tok b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.tok
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.tok
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-1800/tellyscripts/bf0app/bf0app_WTV_18006138199.tok
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-news/localserver_ca.pem b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-news/localserver_ca.pem
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-news/localserver_ca.pem
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-news/localserver_ca.pem
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-news/localserver_cert.pem b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-news/localserver_cert.pem
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-news/localserver_cert.pem
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-news/localserver_cert.pem
diff --git a/zefie_wtvp_minisrv/ServiceDeps/wtv-news/localserver_key.pem b/zefie_wtvp_minisrv/includes/ServiceDeps/wtv-news/localserver_key.pem
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceDeps/wtv-news/localserver_key.pem
rename to zefie_wtvp_minisrv/includes/ServiceDeps/wtv-news/localserver_key.pem
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_BannerGradient.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_BannerGradient.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_BannerGradient.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_BannerGradient.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_BannerIcon.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_BannerIcon.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_BannerIcon.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_BannerIcon.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_BottomShadow.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_BottomShadow.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_BottomShadow.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_BottomShadow.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_Shadow.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_Shadow.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/aroundtown/ROMCache/AT_Shadow.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AT_Shadow.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-setup/images/AccountBanner.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AccountBanner.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-setup/images/AccountBanner.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AccountBanner.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/AroundTownIcon2.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AroundTownIcon2.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/AroundTownIcon2.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/AroundTownIcon2.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/BannerMail.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/BannerMail.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/BannerMail.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/BannerMail.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-guide/ROMCache/BulletArrow.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/BulletArrow.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-guide/ROMCache/BulletArrow.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/BulletArrow.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/Chat.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/Chat.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/Chat.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/Chat.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/CommunityBanner.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/CommunityBanner.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/CommunityBanner.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/CommunityBanner.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/DottedLine.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/DottedLine.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/DottedLine.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/DottedLine.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/ExploreTitle.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ExploreTitle.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/ExploreTitle.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ExploreTitle.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/FileImage.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileImage.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/FileImage.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileImage.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/FileMovie.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileMovie.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/FileMovie.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileMovie.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/FilePackage.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FilePackage.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/FilePackage.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FilePackage.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/FileSound.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileSound.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/FileSound.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileSound.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/FileText.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileText.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/FileText.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/FileText.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/HackTVLogoJewel.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/HackTVLogoJewel.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/HackTVLogoJewel.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/HackTVLogoJewel.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/MSNLogo.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/MSNLogo.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/MSNLogo.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/MSNLogo.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/MessageGradient.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/MessageGradient.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/MessageGradient.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/MessageGradient.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-head-waiter/images/NameStrip.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/NameStrip.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-head-waiter/images/NameStrip.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/NameStrip.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/PanelEdge.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PanelEdge.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/PanelEdge.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PanelEdge.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/PaperBase.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PaperBase.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/PaperBase.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PaperBase.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/PaperTop.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PaperTop.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/PaperTop.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PaperTop.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/PaperTopFlat.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PaperTopFlat.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/PaperTopFlat.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PaperTopFlat.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/PromotionLeftEdge.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PromotionLeftEdge.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/PromotionLeftEdge.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/PromotionLeftEdge.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-mail/content/images/RemoveButton.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/RemoveButton.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-mail/content/images/RemoveButton.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/RemoveButton.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20BV1.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20BV1.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20BV1.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20BV1.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20BV2.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20BV2.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20BV2.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20BV2.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20TH1.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20TH1.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20TH1.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20TH1.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20TV1.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20TV1.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20TV1.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20TV1.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20TV2.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20TV2.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S20TV2.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S20TV2.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S40H1.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S40H1.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S40H1.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S40H1.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S40V1.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S40V1.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S40V1.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S40V1.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S40V2.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S40V2.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S40V2.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S40V2.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS1.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS1.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS1.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS1.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS2.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS2.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS2.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS2.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS3.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS3.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS3.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS3.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS4.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS4.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS4.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS4.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS5.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS5.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/S60HS5.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/S60HS5.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/SAdH1.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SAdH1.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/SAdH1.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SAdH1.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/SAdH2.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SAdH2.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/SAdH2.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SAdH2.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/SAdH3.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SAdH3.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/SAdH3.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SAdH3.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/SettingsBanner.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SettingsBanner.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/SettingsBanner.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SettingsBanner.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/Shadow.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/Shadow.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/mail/content/images/Shadow.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/Shadow.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowCorner.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowCorner.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowCorner.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowCorner.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowH.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowH.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowH.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowH.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowHCap.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowHCap.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowHCap.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowHCap.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowHStart.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowHStart.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/explore/ROMCache/ShadowHStart.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/ShadowHStart.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/SiteShowcase.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SiteShowcase.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/SiteShowcase.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/SiteShowcase.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-guide/ROMCache/Spacer.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/Spacer.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-guide/ROMCache/Spacer.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/Spacer.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/using_webtv/ROMCache/UsingWebTVBanner.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/UsingWebTVBanner.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/using_webtv/ROMCache/UsingWebTVBanner.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/UsingWebTVBanner.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/UtilityBullet.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/UtilityBullet.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/UtilityBullet.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/UtilityBullet.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-favorite/ROMCache/WebTVLogoJewel.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/WebTVLogoJewel.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-favorite/ROMCache/WebTVLogoJewel.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/WebTVLogoJewel.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-guide/ROMCache/help/common/helpMastheadBlank.swf b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/help/common/helpMastheadBlank.swf
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-guide/ROMCache/help/common/helpMastheadBlank.swf
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/help/common/helpMastheadBlank.swf
diff --git a/zefie_wtvp_minisrv/SharedROMCache/kb.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/kb.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/kb.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/kb.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/kb_alpha.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/kb_alpha.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/kb_alpha.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/kb_alpha.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/minisrv.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/minisrv.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/minisrv.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/minisrv.gif
diff --git a/zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/news_icon.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/news_icon.gif
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/wtv-disk/content/DealerDemo/sim/ROMCache/news_icon.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/news_icon.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/splash_logo_hacktv.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/splash_logo_hacktv.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/splash_logo_hacktv.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/splash_logo_hacktv.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/splash_minisrv.gif b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/splash_minisrv.gif
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/splash_minisrv.gif
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/splash_minisrv.gif
diff --git a/zefie_wtvp_minisrv/SharedROMCache/up-arrows.swf b/zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/up-arrows.swf
similarity index 100%
rename from zefie_wtvp_minisrv/SharedROMCache/up-arrows.swf
rename to zefie_wtvp_minisrv/includes/ServiceVault/SharedROMCache/up-arrows.swf
diff --git a/zefie_wtvp_minisrv/ServiceVault/http_pc/favicon.ico b/zefie_wtvp_minisrv/includes/ServiceVault/http_pc/favicon.ico
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/http_pc/favicon.ico
rename to zefie_wtvp_minisrv/includes/ServiceVault/http_pc/favicon.ico
diff --git a/zefie_wtvp_minisrv/ServiceVault/http_pc/index.js b/zefie_wtvp_minisrv/includes/ServiceVault/http_pc/index.js
similarity index 100%
rename from zefie_wtvp_minisrv/ServiceVault/http_pc/index.js
rename to zefie_wtvp_minisrv/includes/ServiceVault/http_pc/index.js
diff --git a/zefie_wtvp_minisrv/ServiceVault/http_pc/viewergen/index.js b/zefie_wtvp_minisrv/includes/ServiceVault/http_pc/viewergen/index.js
similarity index 81%
rename from zefie_wtvp_minisrv/ServiceVault/http_pc/viewergen/index.js
rename to zefie_wtvp_minisrv/includes/ServiceVault/http_pc/viewergen/index.js
index fb7647d7..41fb17e9 100644
--- a/zefie_wtvp_minisrv/ServiceVault/http_pc/viewergen/index.js
+++ b/zefie_wtvp_minisrv/includes/ServiceVault/http_pc/viewergen/index.js
@@ -1,7 +1,4 @@
var minisrv_service_file = true;
-var viewer = 2 // debug override
-
-var viewergen_resource_dir = ServiceDeps + "/viewergen/";
var viewers = {
0: "WebTVIntel--1.0.exe",
@@ -30,6 +27,7 @@ var viewer_stock_md5s = {
"WebTVIntel--2.5-HE.exe": "64edab977ec19a663c5842176bec306a"
}
+/*
var modpacks = {
0: {
"name": "Background Sound",
@@ -38,6 +36,30 @@ var modpacks = {
"default": true
}
}
+*/
+
+var modpacks = {};
+
+
+var feature_bits = {
+ 2: {
+ 0: {
+ "offset": 2063881,
+ "name": "Background Sound",
+ "description": "Enables the Viewer to continue playing sound when it is not the currently active window.",
+ "value": Buffer.from("\x80", 'ascii')
+ }
+ },
+ 4: {
+ 0: {
+ "offset": 2063881,
+ "name": "Background Sound",
+ "description": "Enables the Viewer to continue playing sound when it is not the currently active window.",
+ "value": Buffer.from("\x80", 'ascii')
+ }
+ }
+}
+
var patch_defaults = {
@@ -76,6 +98,7 @@ function getPatchDataType(type, invert = false) {
patch_data += "wtv-disk-first-error: %s\r\n";
patch_data += "wtv-disk-size: %s\r\n";
patch_data += "wtv-client-address: %s\r\n";
+ patch_data += "wtv-viewer: %s\r\n";
}
return patch_data;
}
@@ -84,10 +107,10 @@ function getPatchDataType(type, invert = false) {
function getResData(file) {
var res_data = null;
if (file.substr(-2, 2).toLowerCase() == "gz") {
- var res_gz_data = fs.readFileSync(viewergen_resource_dir + file);
+ var res_gz_data = wtvshared.getServiceDep("/viewergen/" + file);
res_data = zlib.gunzipSync(res_gz_data);
} else {
- res_data = fs.readFileSync(viewergen_resource_dir + file);
+ res_data = wtvshared.getServiceDep("/viewergen/" + file);
}
return res_data;
}
@@ -250,23 +273,30 @@ function getPatchData(fname, client_data_obj, start_url = "client:GoToConn", def
return customized_patch_data;
}
-function patchBinary(patchDataObject) {
- Object.keys(patchDataObject.patch_data).forEach(function (idx) {
- idx = parseInt(idx);
- data_length = patchDataObject.patch_data[idx].byteLength || patchDataObject.patch_data[idx].length
- patchDataObject.data.fill(patchDataObject.patch_data[idx], idx, data_length + idx);
- })
- return patchDataObject.data;
+function applyPatch(data, patch_data, offset) {
+ var data_length = patch_data.byteLength || patch_data.length;
+ var data = data.fill(patch_data, offset, data_length + offset);
+ return data;
}
+function patchBinary(patchDataObject) {
+ var patched_file = patchDataObject.data;
+ Object.keys(patchDataObject.patch_data).forEach(function (idx) {
+ idx = parseInt(idx);
+ patched_file = applyPatch(patched_file, patchDataObject.patch_data[idx], idx);
+ })
+ return patched_file;
+}
+
+
function generateSSID() {
- var ssid_template = "91xxxY0xx0b002xx";
+ var ssid_template = "91xxxxxxaeb002";
var ssid = ssid_template;
while (ssid.indexOf("x") != -1) {
+ // random hex char from 0-F
ssid = ssid.replace("x", Math.floor(Math.random() * 16).toString(16))
- }
- ssid = ssid.replace("Y", Math.floor(Math.random() * 7));
- return ssid;
+ }
+ return ssid + wtvshared.getSSIDCRC(ssid);
}
function buildProfile(build) {
@@ -329,7 +359,7 @@ function buildProfile(build) {
}
var enable_full_hacktv = false;
-if (fs.existsSync(viewergen_resource_dir + "HackTV.zip")) {
+if (wtvshared.getServiceDep("/viewergen/" + "HackTV.zip", true)) {
enable_full_hacktv = true;
disksets['99'] = "HackTV.zip";
}
@@ -350,7 +380,7 @@ if (request_headers.query.viewer &&
headers = errpage[0];
data = errpage[1];
} else {
- var viewer_gz_data = fs.readFileSync(viewergen_resource_dir + viewer_file + ".gz");
+ var viewer_gz_data = wtvshared.getServiceDep("/viewergen/" + viewer_file + ".gz");
var viewer_data = zlib.gunzipSync(viewer_gz_data);
var viewer_md5 = crypto.createHash('md5').update(viewer_data).digest("hex");
if (viewer_md5 != viewer_stock_md5s[viewer_file]) {
@@ -361,6 +391,7 @@ if (request_headers.query.viewer &&
} else {
var build = request_headers.query.build;
var client_data_obj = null
+
if (build) {
if (parseInt(build) > 0) {
client_data_obj = buildProfile(parseInt(build));
@@ -370,6 +401,9 @@ if (request_headers.query.viewer &&
if (!client_data_obj)
client_data_obj = buildProfile(7181);
+ var viewer_tag = viewer_file.split('.');
+ viewer_tag.pop();
+ client_data_obj['wtv-viewer'] = viewer_tag.join('.');
client_data_obj["wtv-client-serial-number"] = client_ssid;
var patchDataObject = {
data: viewer_data,
@@ -382,6 +416,19 @@ if (request_headers.query.viewer &&
data = errpage[1];
} else {
var patched_file = patchBinary(patchDataObject);
+ var enabled_feature_bits = [];
+ Object.keys(request_headers.query).forEach((k) => {
+ if (k.substring(0, 12) === "feature_bit_") {
+ enabled_feature_bits.push(parseInt(k.substring(12)));
+ }
+ });
+ Object.keys(enabled_feature_bits).forEach((k) => {
+ var bit = feature_bits[request_headers.query.viewer][enabled_feature_bits[k]];
+ if (bit) {
+ patched_file = applyPatch(patched_file, bit.value, bit.offset);
+ }
+ });
+
headers = `200 OK
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="${viewer_file.replace(".exe", ".zip")}"`
@@ -391,13 +438,13 @@ Content-Disposition: attachment; filename="${viewer_file.replace(".exe", ".zip")
zip.addZipComment("Viewer SSID: " + client_ssid);
zip.addFile(viewer_file.replace("--", "-" + client_ssid + "-"), patched_file);
if (!request_headers.query.viewer_only) {
- var romset_zip = new AdmZip(viewergen_resource_dir + viewer_file.replace(".exe", "").replace("WebTVIntel", "AppData") + ".zip");
+ var romset_zip = new AdmZip(wtvshared.getServiceDep("/viewergen/" + viewer_file.replace(".exe", "").replace("WebTVIntel", "AppData") + ".zip", true));
var zipEntries = romset_zip.getEntries();
zipEntries.forEach(function (zipEntry) {
if (zipEntry.entryName == "Setup.bmp" && request_headers.query.logo) {
var logo_file = logos[parseInt(request_headers.query.logo) || 0];
if (logo_file) {
- var logo_gz_data = fs.readFileSync(viewergen_resource_dir + logo_file + ".gz");
+ var logo_gz_data = wtvshared.getServiceDep("/viewergen/" + logo_file + ".gz");
var logo_data = zlib.gunzipSync(logo_gz_data);
zip.addFile(zipEntry.entryName, logo_data);
} else {
@@ -409,10 +456,10 @@ Content-Disposition: attachment; filename="${viewer_file.replace(".exe", ".zip")
});
if (request_headers.query.diskset || needs_hacktv_mini) {
var diskset_file = 0;
- if (needs_hacktv_mini) diskset_file = disksets[98];
+ if (needs_hacktv_mini && request_headers.query.diskset === 0) diskset_file = disksets[98];
else diskset_file = disksets[parseInt(request_headers.query.diskset) || 0];
if (diskset_file) {
- var diskset_zip = new AdmZip(viewergen_resource_dir + diskset_file);
+ var diskset_zip = new AdmZip(wtvshared.getServiceDep("/viewergen/" + diskset_file, true));
var zipEntries = diskset_zip.getEntries();
zipEntries.forEach(function (zipEntry) {
zip.addFile("Disk/" + zipEntry.entryName, zipEntry.getData());
@@ -429,7 +476,7 @@ Content-Disposition: attachment; filename="${viewer_file.replace(".exe", ".zip")
if (embed_modpacks.length > 0) {
Object.keys(embed_modpacks).forEach((k) => {
- var modpack_file = viewergen_resource_dir + modpacks[k].file;
+ var modpack_file = wtvshared.getServiceDep("/viewergen/" + modpacks[k].file, true);
if (fs.existsSync(modpack_file)) {
var modpack_zip = new AdmZip(modpack_file);
var zipEntries = modpack_zip.getEntries();
@@ -464,19 +511,38 @@ td {