Merge branch 'master' of ssh://numinibsd/git/base/enigma-bbs
This commit is contained in:
@@ -369,9 +369,6 @@
|
||||
art: LETTER
|
||||
options: { pause: true }
|
||||
next: newUserFeedbackToSysOp
|
||||
extraArgs: {
|
||||
messageAreaName: private_mail
|
||||
}
|
||||
}
|
||||
|
||||
newUserFeedbackToSysOp: {
|
||||
@@ -395,7 +392,9 @@
|
||||
help: MSGEHLP
|
||||
},
|
||||
editorMode: edit
|
||||
editorType: area
|
||||
editorType: email
|
||||
messageAreaName: private_mail
|
||||
toUserId: 1 /* always to +op */
|
||||
}
|
||||
form: {
|
||||
0: {
|
||||
@@ -505,6 +504,7 @@
|
||||
options: { pause: true }
|
||||
next: fullLoginSequenceLastCallers
|
||||
}
|
||||
|
||||
fullLoginSequenceLastCallers: {
|
||||
desc: Last Callers
|
||||
module: last_callers
|
||||
@@ -517,8 +517,34 @@
|
||||
module: whos_online
|
||||
art: WHOSON
|
||||
options: { pause: true }
|
||||
next: fullLoginSequenceSysStats
|
||||
next: fullLoginSequenceNewScanConfirm
|
||||
}
|
||||
|
||||
fullLoginSequenceNewScanConfirm: {
|
||||
desc: Logging In
|
||||
prompt: loginGlobalNewScan
|
||||
submit: [
|
||||
{
|
||||
value: { promptValue: 0 }
|
||||
action: @menu:fullLoginSequenceNewScan
|
||||
}
|
||||
{
|
||||
value: { promptValue: 1 }
|
||||
action: @menu:fullLoginSequenceUserStats
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
fullLoginSequenceNewScan: {
|
||||
desc: Performing New Scan
|
||||
module: @systemModule:new_scan
|
||||
art: NEWSCAN
|
||||
next: fullLoginSequenceSysStats
|
||||
config: {
|
||||
messageListMenu: newScanMessageList
|
||||
}
|
||||
}
|
||||
|
||||
fullLoginSequenceSysStats: {
|
||||
desc: System Stats
|
||||
art: SYSSTAT
|
||||
@@ -532,6 +558,40 @@
|
||||
next: mainMenu
|
||||
}
|
||||
|
||||
newScanMessageList: {
|
||||
desc: Viewing New Message List
|
||||
module: msg_list
|
||||
art: NEWMSGS
|
||||
config: {
|
||||
menuViewPost: messageAreaViewPost
|
||||
}
|
||||
form: {
|
||||
0: {
|
||||
mci: {
|
||||
VM1: {
|
||||
focus: true
|
||||
submit: true
|
||||
argName: message
|
||||
}
|
||||
}
|
||||
submit: {
|
||||
*: [
|
||||
{
|
||||
value: { message: null }
|
||||
action: @method:selectMessage
|
||||
}
|
||||
]
|
||||
}
|
||||
actionKeys: [
|
||||
{
|
||||
keys: [ "escape", "q", "shift + q" ]
|
||||
action: @systemMethod:prevMenu
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// Main Menu
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
@@ -743,6 +803,10 @@
|
||||
value: { command: "4" }
|
||||
action: @menu:doorTradeWars2002BBSLink
|
||||
}
|
||||
{
|
||||
value: { command: "DL" }
|
||||
action: @menu:doorDarkLands
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -763,6 +827,24 @@
|
||||
io: socket
|
||||
}
|
||||
}
|
||||
|
||||
doorDarkLands: {
|
||||
desc: Playing Dark Lands
|
||||
module: abracadabra
|
||||
config: {
|
||||
name: DARKLANDS
|
||||
dropFileType: DOOR
|
||||
cmd: /home/nuskooler/dev/enigma-bbs/doors/darklands/start.sh
|
||||
args: [
|
||||
"{node}",
|
||||
"{dropFile}",
|
||||
"{srvPort}",
|
||||
],
|
||||
nodeMax: 1
|
||||
tooManyArt: DOORMANY
|
||||
io: socket
|
||||
}
|
||||
}
|
||||
|
||||
doorLORD: {
|
||||
desc: Playing L.O.R.D.
|
||||
@@ -860,7 +942,6 @@
|
||||
module: msg_list
|
||||
art: MSGLIST
|
||||
config: {
|
||||
listType: public
|
||||
menuViewPost: messageAreaViewPost
|
||||
}
|
||||
form: {
|
||||
|
||||
@@ -45,7 +45,7 @@ function AreaPostFSEModule(options) {
|
||||
if(err) {
|
||||
// :TODO:... sooooo now what?
|
||||
} else {
|
||||
console.log(msg);
|
||||
console.log(msg); // :TODO: remove me -- probably log that one was saved, however.
|
||||
}
|
||||
|
||||
self.nextMenu();
|
||||
|
||||
@@ -52,9 +52,21 @@ function MessageListModule(options) {
|
||||
var self = this;
|
||||
var config = this.menuConfig.config;
|
||||
|
||||
this.listType = config.listType || 'public';
|
||||
this.messageAreaName = config.messageAreaName;
|
||||
|
||||
this.messageList = [];
|
||||
if(options.extraArgs) {
|
||||
//
|
||||
// |extraArgs| can override |messageAreaName| provided by config
|
||||
// as well as supply a pre-defined message list
|
||||
//
|
||||
if(options.extraArgs.messageAreaName) {
|
||||
this.messageAreaName = options.extraArgs.messageAreaName;
|
||||
}
|
||||
|
||||
if(options.extraArgs.messageList) {
|
||||
this.messageList = options.extraArgs.messageList;
|
||||
}
|
||||
}
|
||||
|
||||
this.menuMethods = {
|
||||
selectMessage : function(formData, extraArgs) {
|
||||
@@ -85,9 +97,11 @@ require('util').inherits(MessageListModule, MenuModule);
|
||||
MessageListModule.prototype.enter = function(client) {
|
||||
MessageListModule.super_.prototype.enter.call(this, client);
|
||||
|
||||
if('private' === this.listType) {
|
||||
this.messageAreaName = Message.WellKnownAreaNames.Private;
|
||||
} else {
|
||||
//
|
||||
// Config can specify |messageAreaName| else it comes from
|
||||
// the user's current area
|
||||
//
|
||||
if(!this.messageAreaName) {
|
||||
this.messageAreaName = client.user.properties.message_area_name;
|
||||
}
|
||||
};
|
||||
@@ -110,14 +124,21 @@ MessageListModule.prototype.mciReady = function(mciData, cb) {
|
||||
vc.loadFromMenuConfig(loadOpts, callback);
|
||||
},
|
||||
function fetchMessagesInArea(callback) {
|
||||
messageArea.getMessageListForArea( { client : self.client }, self.messageAreaName, function msgs(err, msgList) {
|
||||
if(msgList && 0 === msgList.length) {
|
||||
callback(new Error('No messages in area'));
|
||||
} else {
|
||||
self.messageList = msgList;
|
||||
callback(err);
|
||||
}
|
||||
});
|
||||
//
|
||||
// Config can supply messages else we'll need to populate the list now
|
||||
//
|
||||
if(_.isArray(self.messageList)) {
|
||||
callback(0 === self.messageList.length ? new Error('No messages in area') : null);
|
||||
} else {
|
||||
messageArea.getMessageListForArea( { client : self.client }, self.messageAreaName, function msgs(err, msgList) {
|
||||
if(msgList && 0 === msgList.length) {
|
||||
callback(new Error('No messages in area'));
|
||||
} else {
|
||||
self.messageList = msgList;
|
||||
callback(err);
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
function getLastReadMesageId(callback) {
|
||||
messageArea.getMessageAreaLastReadId(self.client.user.userId, self.messageAreaName, function lastRead(err, lastReadId) {
|
||||
|
||||
@@ -46,6 +46,19 @@
|
||||
}
|
||||
}
|
||||
|
||||
loginGlobalNewScan: {
|
||||
art: GNSPMPT
|
||||
mci: {
|
||||
TM1: {
|
||||
argName: promptValue
|
||||
items: [ "yes", "no" ]
|
||||
focus: true
|
||||
hotKeys: { Y: 0, N: 1 }
|
||||
hotKeySubmit: true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
"menuCommand" : {
|
||||
art: MNUPRMT
|
||||
"mci" : {
|
||||
|
||||
Reference in New Issue
Block a user