mirror of
https://github.com/NuSkooler/enigma-bbs.git
synced 2025-06-10 14:44:40 +02:00
Add 'My Messages' module
This commit is contained in:
parent
c695c1f4c5
commit
83d0daf4b7
5 changed files with 111 additions and 0 deletions
59
core/my_messages.js
Normal file
59
core/my_messages.js
Normal file
|
@ -0,0 +1,59 @@
|
|||
/* jslint node: true */
|
||||
'use strict';
|
||||
|
||||
// ENiGMA½
|
||||
const MenuModule = require('./menu_module.js').MenuModule;
|
||||
const Message = require('./message.js');
|
||||
const UserProps = require('./user_property.js');
|
||||
|
||||
exports.moduleInfo = {
|
||||
name : 'My Messages',
|
||||
desc : 'Finds messages addressed to the current user.',
|
||||
author : 'NuSkooler',
|
||||
};
|
||||
|
||||
exports.getModule = class MyMessagesModule extends MenuModule {
|
||||
constructor(options) {
|
||||
super(options);
|
||||
}
|
||||
|
||||
initSequence() {
|
||||
const filter = {
|
||||
toUserName : [ this.client.user.username, this.client.user.getProperty(UserProps.RealName) ],
|
||||
sort : 'modTimestamp',
|
||||
resultType : 'messageList',
|
||||
limit : 1024 * 16, // we want some sort of limit...
|
||||
};
|
||||
|
||||
Message.findMessages(filter, (err, messageList) => {
|
||||
if(err) {
|
||||
this.client.log.warn( { error : err.message }, 'Error finding messages addressed to current user');
|
||||
return this.prevMenu();
|
||||
}
|
||||
this.messageList = messageList;
|
||||
this.finishedLoading();
|
||||
});
|
||||
}
|
||||
|
||||
finishedLoading() {
|
||||
if(!this.messageList || 0 === this.messageList.length) {
|
||||
return this.gotoMenu(
|
||||
this.menuConfig.config.noResultsMenu || 'messageSearchNoResults',
|
||||
{ menuFlags : [ 'popParent' ] }
|
||||
);
|
||||
}
|
||||
|
||||
const menuOpts = {
|
||||
extraArgs : {
|
||||
messageList : this.messageList,
|
||||
noUpdateLastReadId : true
|
||||
},
|
||||
menuFlags : [ 'popParent' ],
|
||||
};
|
||||
|
||||
return this.gotoMenu(
|
||||
this.menuConfig.config.messageListMenu || 'messageAreaMessageList',
|
||||
menuOpts
|
||||
);
|
||||
}
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue