diff --git a/zefie_wtvp_minisrv/app.js b/zefie_wtvp_minisrv/app.js index e2b15053..3ac7644a 100644 --- a/zefie_wtvp_minisrv/app.js +++ b/zefie_wtvp_minisrv/app.js @@ -1412,6 +1412,8 @@ async function sendToClient(socket, headers_obj, data = null) { var headers = ""; var content_length = 0; var eol = "\n"; + var timezone = "-0000"; + if (typeof (data) === 'undefined' || data === null) data = ''; if (typeof (headers_obj) === 'string') { // string to header object @@ -1435,6 +1437,7 @@ async function sendToClient(socket, headers_obj, data = null) { // logged in headers_obj['wtv-mail-count'] = ssid_sessions[socket.ssid].mailstore.countUnreadMessages(0); } + timezone = ssid_sessions[socket.ssid].getSessionData("timezone") || "-0000" } } } else { @@ -1483,8 +1486,15 @@ async function sendToClient(socket, headers_obj, data = null) { wtvshared.getFileExt(socket_sessions[socket.id].request_headers.service_file_path).toLowerCase() !== "php" || wtvshared.getFileExt(socket_sessions[socket.id].request_headers.service_file_path).toLowerCase() !== "cgi" || socket_sessions[socket.id].request_headers.raw_file === true) { - var last_modified = wtvshared.getFileLastModifiedUTCString(socket_sessions[socket.id].request_headers.service_file_path); - if (last_modified) headers_obj["Last-Modified"] = last_modified; + if (socket.res) { + var last_modified_formatted = wtvshared.getFileLastModifiedUTCString(socket_sessions[socket.id].request_headers.service_file_path); + } else { + var last_modified = wtvshared.getFileLastModifiedUTCObj(socket_sessions[socket.id].request_headers.service_file_path); + var strftime = require('strftime'); + var strf = strftime.timezone(timezone); + var last_modified_formatted = strf("%a, %d %b %Y %H:%M:%S", last_modified); + } + if (last_modified_formatted) headers_obj["Last-Modified"] = last_modified_formatted; } } } diff --git a/zefie_wtvp_minisrv/includes/ServiceVault/wtv-head-waiter/login-stage-two.js b/zefie_wtvp_minisrv/includes/ServiceVault/wtv-head-waiter/login-stage-two.js index 1e97b3af..614951ee 100644 --- a/zefie_wtvp_minisrv/includes/ServiceVault/wtv-head-waiter/login-stage-two.js +++ b/zefie_wtvp_minisrv/includes/ServiceVault/wtv-head-waiter/login-stage-two.js @@ -34,7 +34,8 @@ else { var human_name = nickname; var userid = '1' + Math.floor(Math.random() * 1000000000000000000); var messenger_enabled = 0; - var messenger_authorized = 0; + var messenger_authorized = 0; + var timezone = "-0000"; if (request_headers.query.skip_splash) gourl = "wtv-home:/home?"; else gourl = "wtv-home:/splash?"; } else if (!session_data.getSessionData("registered")) { @@ -48,6 +49,7 @@ else { var messenger_enabled = session_data.getSessionData("messenger_enabled") || 0; var messenger_authorized = session_data.getSessionData("messenger_authorized") || 0; var messenger_email = session_data.getSessionData("messenger_email"); + var timezone = session_data.getSessionData("timezone") || "-0000"; var gourl = "wtv-home:/splash?"; } var limitedLogin = session_data.lockdown; @@ -87,10 +89,11 @@ wtv-expire-all: wtv-head-waiter: `; if (!limitedLogin && !limitedLoginRegistered) { - headers += `wtv-client-time-zone: GMT -0000 + + headers += `wtv-country: US +wtv-client-time-zone: GMT ${timezone} wtv-client-time-dst-rule: GMT -wtv-client-date: `+ strftime("%a, %d %b %Y %H:%M:%S", new Date(new Date().toUTCString())) + ` GMT -wtv-country: US +wtv-client-date: ${new Date().toUTCString()} wtv-language-header: en-US,en wtv-noback-all: wtv- wtv-transition-override: off diff --git a/zefie_wtvp_minisrv/includes/ServiceVault/wtv-setup/timezone.js b/zefie_wtvp_minisrv/includes/ServiceVault/wtv-setup/timezone.js new file mode 100644 index 00000000..6eb0575d --- /dev/null +++ b/zefie_wtvp_minisrv/includes/ServiceVault/wtv-setup/timezone.js @@ -0,0 +1,124 @@ +var minisrv_service_file = true; + +var timezone = "-0000"; +if (session_data.isRegistered()) { + timezone = session_data.getSessionData("timezone") || timezone; + if (request_headers.query.timezone) { + timezone = request_headers.query.timezone; + session_data.setSessionData("timezone", timezone); + } +} + +strf = strftime.timezone(timezone) + +headers = `200 OK +Connection: Keep-Alive +wtv-expire-all: wtv- +wtv-expire-all: http +wtv-client-time-zone: GMT -0000 +wtv-client-time-dst-rule: false +wtv-client-date: ${strf("%a, %d %b %Y %H:%M:%S", new Date(new Date().setUTCSeconds(new Date().getUTCSeconds())))} GMT +Content-Type: text/html` + + + +html = ` +
+| + |
+ | ||||
| + |
+
| + | |||
+
| |||||
| + | |||||
+
+ | |||||
| + | |||||
| + |
+|
+ |
+ |
+
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+ |
+
+ |
+ | | |||||||||||||||