diff --git a/core/user.js b/core/user.js index 0fa35af2..1b38b6b0 100644 --- a/core/user.js +++ b/core/user.js @@ -318,8 +318,12 @@ User.prototype.persistProperty = function(propName, propValue, cb) { userDb.run( 'REPLACE INTO user_property (user_id, prop_name, prop_value) ' + - 'VALUES (?, ?, ?);', [ this.userId, propName, propValue ], function ran(err) { - cb(err); + 'VALUES (?, ?, ?);', + [ this.userId, propName, propValue ], + function ran(err) { + if(cb) { + cb(err); + } } ); } diff --git a/mods/menu.json b/mods/menu.json index 427515e8..ccd0c053 100644 --- a/mods/menu.json +++ b/mods/menu.json @@ -259,8 +259,12 @@ "submit" : [ { "value" : { "command" : "N" }, - "action" : "@menu:messageAreaNewPost", - "extraArgs" : { "messageAreaId" : 123 } + "action" : "@menu:messageAreaNewPost"//, + //"extraArgs" : { "messageAreaId" : 123 } + }, + { + "value" : { "command" : "A" }, + "action" : "@method:changeArea" }, { "value" : { "command" : "Q" }, @@ -268,6 +272,7 @@ } ] }, + // :TODO: messageAreaSelect (change msg areas -> call @systemMethod -> fallback to menu "messageAreaNewPost" : { "module" : "msg_area_post_fse", "options" : { "cls" : true }, diff --git a/mods/msg_area.js b/mods/msg_area.js index d88a16e1..34f7d56f 100644 --- a/mods/msg_area.js +++ b/mods/msg_area.js @@ -23,7 +23,10 @@ function MessageAreaModule(options) { this.menuMethods = { changeArea : function(formData, extraArgs) { - + // :TODO: really, we just need to go to a menu with a list of areas to select from and call a @systemMethod:setMessageArea() call with fallback to here + self.client.user.persistProperty('message_area_id', 2, function persisted(err) { + + }); // :TODO: just for testing } }; } diff --git a/mods/msg_area_post_fse.js b/mods/msg_area_post_fse.js index aecac3f6..ee4fc5a4 100644 --- a/mods/msg_area_post_fse.js +++ b/mods/msg_area_post_fse.js @@ -22,14 +22,6 @@ function AreaPostFSEModule(options) { // we're posting, so always start with 'edit' mode this.editorMode = 'edit'; - // - // If messageAreaId is passed in extraArgs, use it. Otherwise, look - // to the client user for current area ID - // - if(_.isNumber(client.user.properties.message_area_id)) { - this.messageAreaId = client.user.properties.message_area_id; - } - this.menuMethods.editModeMenuSave = function(formData, extraArgs) { var msg = self.getMessage(); console.log(msg); @@ -38,3 +30,14 @@ function AreaPostFSEModule(options) { require('util').inherits(AreaPostFSEModule, FullScreenEditorModule); +AreaPostFSEModule.prototype.enter = function(client) { + // + // If messageAreaId is passed in extraArgs, use it. Otherwise, look + // to the client user for current area ID + // + if(_.isNumber(client.user.properties.message_area_id)) { + this.messageAreaId = client.user.properties.message_area_id; + } + + AreaPostFSEModule.super_.prototype.enter.call(this, client); +}; \ No newline at end of file