diff --git a/xtrn/DDMsgReader/DDMsgReader.js b/xtrn/DDMsgReader/DDMsgReader.js index d9943383d29b8ceab3bbe3b045107b5be9dfae51..80a08f9027d663cdd9ca6603bbf3bd668ccd667c 100644 --- a/xtrn/DDMsgReader/DDMsgReader.js +++ b/xtrn/DDMsgReader/DDMsgReader.js @@ -144,6 +144,8 @@ * 2023-08-20 Eric Oulashin Version 1.77 * Including all message headers when saving a message (sysop only) is now * optional. + * 2023-08-26 Eric Oulashin Version 1.77a + * When saving a message on the local BBS PC without all the headers, the date is now included */ "use strict"; @@ -250,8 +252,8 @@ var ansiterm = require("ansiterm_lib.js", 'expand_ctrl_a'); // Reader version information -var READER_VERSION = "1.77"; -var READER_DATE = "2023-08-20"; +var READER_VERSION = "1.77a"; +var READER_DATE = "2023-08-26"; // Keyboard key codes for displaying on the screen var UP_ARROW = ascii(24); @@ -14779,7 +14781,13 @@ function DigDistMsgReader_SaveMsgToFile(pMsgHdr, pFilename, pPromptPos) { // Write to, from, subjetc, etc. to the file if (this.subBoardCode == "mail") - messageSaveFile.writeln("From " + pMsgHdr.from + "'s personal email"); + { + if (!msgIsToCurrentUserByName(pMsgHdr)) + { + messageSaveFile.writeln("From " + pMsgHdr.to + "'s personal email"); + messageSaveFile.writeln("======================="); + } + } else { var line = format("From sub-board: %s, %s", @@ -14790,6 +14798,15 @@ function DigDistMsgReader_SaveMsgToFile(pMsgHdr, pFilename, pPromptPos) messageSaveFile.writeln("From: " + pMsgHdr.from); messageSaveFile.writeln("To: " + pMsgHdr.to); messageSaveFile.writeln("Subject: " + pMsgHdr.subject); + // Message time + var msgWrittenLocalTime = msgWrittenTimeToLocalBBSTime(pMsgHdr); + var dateTimeStr = ""; + if (msgWrittenLocalTime != -1) + dateTimeStr = strftime("%a, %d %b %Y %H:%M:%S", msgWrittenLocalTime); + else + dateTimeStr = pMsgHdr.date.replace(/ [-+][0-9]+$/, ""); + messageSaveFile.writeln("Date: " + dateTimeStr); + } messageSaveFile.writeln("==============================="); @@ -17703,7 +17720,7 @@ function searchMsgbase(pSubCode, pSearchType, pSearchString, pListingPersonalEma // deleted. function msgIsToUserByNum(pMsgHdr, pUserNum) { - if (typeof(pMsgHdr) != "object") + if (typeof(pMsgHdr) !== "object") return false; // Return false if the message is marked as deleted and the user can't read deleted messages if (((pMsgHdr.attr & MSG_DELETE) == MSG_DELETE) && !canViewDeletedMsgs()) @@ -17723,6 +17740,16 @@ function msgIsToUserByNum(pMsgHdr, pUserNum) return msgIsToUser; } +// Returns whether or not a message header is to the current logged-in user by name, alias, or handle +function msgIsToCurrentUserByName(pMsgHdr) +{ + if (typeof(pMsgHdr) !== "object" || !pMsgHdr.hasOwnProperty("to")) + return false; + + var msgToUpper = pMsgHdr.to.toUpperCase(); + return (msgToUpper == user.name.toUpperCase() || msgToUpper == user.alias.toUpperCase() || msgToUpper == user.handle.toUpperCase()); +} + // Returns whether or not a message is from the current user (either the current // logged-in user or the user specified by the userNum command-line argument) // and is not deleted. diff --git a/xtrn/DDMsgReader/readme.txt b/xtrn/DDMsgReader/readme.txt index c94b263c2a79e7228688e2eed35a3bdccdd6df64..60a1745e8bada9be89da77e6ea8de060d4bcb566 100644 --- a/xtrn/DDMsgReader/readme.txt +++ b/xtrn/DDMsgReader/readme.txt @@ -1,6 +1,6 @@ Digital Distortion Message Reader - Version 1.77 - Release date: 2023-08-20 + Version 1.77a + Release date: 2023-08-26 by diff --git a/xtrn/DDMsgReader/revision_history.txt b/xtrn/DDMsgReader/revision_history.txt index d5725a931a5b425c459873e221fc38e3a29c8c5b..4102b65a8ef252d23e47aa23e48d40046886b0d2 100644 --- a/xtrn/DDMsgReader/revision_history.txt +++ b/xtrn/DDMsgReader/revision_history.txt @@ -5,7 +5,9 @@ Revision History (change log) ============================= Version Date Description ------- ---- ----------- -1.77 2023-07-20 Including all message headers when saving a message (sysop +1.77a 2023-08-26 When saving a message on the local BBS PC without all the + headers, the date is now included +1.77 2023-08-20 Including all message headers when saving a message (sysop only) is now optional. 1.76 2023-08-18 Fix for "Message header has 'expanded fields'" error when updating message header attributes in certain conditions