-
Eric Oulashin authoredEric Oulashin authored
DDReadPersonalMail.js 2.29 KiB
// $Id: DDReadPersonalMail.js,v 1.5 2020/05/23 23:35:48 nightfox Exp $
// This script is to be executed for the 'Read mail' loadable module, configured
// in SCFG in System > Loadable Modules.
if (typeof(require) === "function")
require("sbbsdefs.js", "SCAN_UNREAD");
else
load("sbbsdefs.js");
console.print("\1n");
// Synchronet will pass 2 command-line arguments:
// 1. The 'which' mailbox value (numeric) - MAIL_YOUR, MAIL_SENT, or MAIL_ALL.
// MAIL_ANY won't be passed to this script.
// 2. The user number (numeric)
if (argc < 2)
{
console.print("\1h\1yNot enough arguments were passed to the Read Mail module! Please inform the");
console.crlf();
console.print("sysop.\1n");
console.crlf();
console.pause();
exit(1);
}
//bbs.read_mail(whichMailbox);
//exit(0);
var whichMailbox = Number(argv[0]);
var userNum = Number(argv[1]);
// The 3rd argument is mode bits. See if we should only display new (unread)
// personal email.
var newMailOnly = false;
if (argv.length >= 3)
{
var modeVal = +(argv[2]);
newMailOnly = (((modeVal & SCAN_FIND) == SCAN_FIND) && ((modeVal & LM_UNREAD) == LM_UNREAD));
}
// SYSOPS: Change the msgReaderPath variable if you put Digital Distortion
// Message Reader in a different path
var msgReaderPath = "../xtrn/DDMsgReader";
// The readerStartMode variable, below, controls whether the reader
// is to start in reader mode or message list mode. Set it to "list"
// for list mode or "read" for reader mode.
var readerStartmode = "list";
//var readerStartmode = "read";
// The start of the command string to use with bbs.exec()
var rdrCmdStrStart = "?" + msgReaderPath + "/DDMsgReader.js ";
// Launch Digital Distortion depending on the value whichMailBox.
// Note: MAIL_ANY won't be passed to this script.
switch (whichMailbox)
{
case MAIL_YOUR: // Mail sent to you
var cmdArgs = "-personalEmail -userNum=" + userNum;
if (newMailOnly)
cmdArgs += " -onlyNewPersonalEmail";
cmdArgs += " -startMode=" + readerStartmode;
bbs.exec(rdrCmdStrStart + cmdArgs);
break;
case MAIL_SENT: // Mail you have sent
bbs.exec(rdrCmdStrStart + "-personalEmailSent -userNum=" + userNum + " -startMode=" + readerStartmode);
break;
case MAIL_ALL:
bbs.exec(rdrCmdStrStart + "-allPersonalEmail -startMode=" + readerStartmode);
break;
default:
bbs.read_mail(whichMailbox);
break;
}