From b1be5cdff42fbe1f766c22a45fcc170dd5067eab Mon Sep 17 00:00:00 2001 From: Bryan Ashby Date: Tue, 3 Nov 2015 23:25:35 -0700 Subject: [PATCH] * Delete mods/login.js (not used) * More fallbackMenuModule & gotoMenuModule clean up -- should all be using new system now --- core/client.js | 9 --------- core/fse.js | 4 +--- core/menu_stack.js | 18 ------------------ core/system_menu_method.js | 4 ++-- core/user_config.js | 2 +- mods/abracadabra.js | 4 ++-- mods/apply.js | 9 ++++++--- mods/login.js | 38 -------------------------------------- mods/msg_area_list.js | 4 ++-- mods/msg_area_post_fse.js | 5 +---- mods/msg_area_view_fse.js | 3 +-- mods/msg_list.js | 1 - 12 files changed, 16 insertions(+), 85 deletions(-) delete mode 100644 mods/login.js diff --git a/core/client.js b/core/client.js index 4e7ed707..248ae074 100644 --- a/core/client.js +++ b/core/client.js @@ -448,15 +448,6 @@ Client.prototype.address = function() { return this.input.address(); }; -// :TODO: remove these deprecated wrappers: -Client.prototype.gotoMenuModule = function(options, cb) { - this.menuStack.goto(options.name, options, cb); -}; - -Client.prototype.fallbackMenuModule = function(options, cb) { - this.menuStack.prev(cb); -}; - /////////////////////////////////////////////////////////////////////////////// // Default error handlers /////////////////////////////////////////////////////////////////////////////// diff --git a/core/fse.js b/core/fse.js index 9fca5f81..9542b15b 100644 --- a/core/fse.js +++ b/core/fse.js @@ -834,9 +834,7 @@ function FullScreenEditorModule(options) { replyDiscard : function(formData, extraArgs) { // :TODO: need to prompt yes/no // :TODO: @method for fallback would be better - self.client.fallbackMenuModule(function fallback(err) { - console.log(err) - }); + self.prevMenu(); }, */ editModeMenuHelp : function(formData, extraArgs) { diff --git a/core/menu_stack.js b/core/menu_stack.js index f60da56c..dc75cda1 100644 --- a/core/menu_stack.js +++ b/core/menu_stack.js @@ -7,24 +7,6 @@ var loadMenu = require('./menu_util.js').loadMenu; var _ = require('lodash'); var assert = require('assert'); -/* -MenuStack(client) - stack[] push, pop, ... - - next() - goto(name, options, cb) - prev() - -MenuModule - nextMenu() - gotoMenu(name, options, cb) - prevMenu() -*/ - -// :TODO: Clean up client attach/detach/etc. -// :TODO: gotoMenuModule() -> MenuModule.gotoMenu() -// :TODO: fallbackMenuModule() -> MenuModule.prevMenu() - module.exports = MenuStack; function MenuStack(client) { diff --git a/core/system_menu_method.js b/core/system_menu_method.js index 8fa12505..86723dcc 100644 --- a/core/system_menu_method.js +++ b/core/system_menu_method.js @@ -37,14 +37,14 @@ function login(callingMenu, formData, extraArgs) { } setTimeout(function timeout() { - client.fallbackMenuModule(); + callingMenu.prevMenu(); }, 2000); }); return; } else { // Other error - client.fallbackMenuModule(); + callingMenu.prevMenu(); } } else { diff --git a/core/user_config.js b/core/user_config.js index 30a43842..ffda190b 100644 --- a/core/user_config.js +++ b/core/user_config.js @@ -45,7 +45,7 @@ function UserConfigModule(options) { this.menuMethods = { exitKeyPressed : function(formData, extraArgs) { // :TODO: save/etc. - self.client.fallbackMenuModule(); + self.prevMenu(); } }; } diff --git a/mods/abracadabra.js b/mods/abracadabra.js index 7a40d0c1..3e300aae 100644 --- a/mods/abracadabra.js +++ b/mods/abracadabra.js @@ -121,7 +121,7 @@ function AbracadabraModule(options) { function complete(err) { if(err) { self.lastError = err; - self.client.fallbackMenuModule(); + self.prevMenu(); } else { self.finishedLoading(); } @@ -149,7 +149,7 @@ function AbracadabraModule(options) { var doorInstance = new door.Door(this.client, exeInfo); doorInstance.on('finished', function doorFinished() { - self.client.fallbackMenuModule(); + self.prevMenu(); }); self.client.term.write(ansi.resetScreen()); diff --git a/mods/apply.js b/mods/apply.js index 140489db..5c3d38b3 100644 --- a/mods/apply.js +++ b/mods/apply.js @@ -124,18 +124,21 @@ function submitApplication(callingMenu, formData, extraArgs) { if(err) { Log.info( { error : err, username : formData.value.username }, 'New user creation failed'); - client.gotoMenuModule( { name : extraArgs.error } ); + callingMenu.gotoMenu(extraArgs.error, function result(err) { + if(err) { + callingMenu.prevMenu(); + } + }); } else { Log.info( { username : formData.value.username, userId : newUser.userId }, 'New user created'); if(user.User.AccountStatus.inactive === client.user.properties.account_status) { - client.gotoMenuModule( { name : extraArgs.inactive } ); + callingMenu.gotoMenu(extraArgs.inactive); } else { // // If active now, we need to call login() to authenticate // sysMenuMethod.login(callingMenu, formData, extraArgs); - // client.gotoMenuModule( { name : menuConfig.next } ); } } }); diff --git a/mods/login.js b/mods/login.js deleted file mode 100644 index bffa67b8..00000000 --- a/mods/login.js +++ /dev/null @@ -1,38 +0,0 @@ -/* jslint node: true */ -'use strict'; - -var theme = require('../core/theme.js'); -var Log = require('../core/logger.js').log; - -var async = require('async'); - -exports.login = login; - -function login(callingMenu, formData, extraArgs) { - var client = callingMenu.client; - - client.user.authenticate(formData.value.username, formData.value.password, function authenticated(err) { - if(err) { - Log.info( { username : formData.value.username }, 'Failed login attempt %s', err); - - client.gotoMenuModule( { name : callingMenu.menuConfig.fallback } ); - } else { - // use client.user so we can get correct case - Log.info( { username : callingMenu.client.user.username }, 'Successful login'); - - async.parallel( - [ - function loadThemeConfig(callback) { - theme.getThemeInfo(client.user.properties.theme_id, function themeInfo(err, info) { - client.currentTheme = info; - callback(null); - }); - } - ], - function complete(err, results) { - client.gotoMenuModule( { name : callingMenu.menuConfig.next } ); - } - ); - } - }); -} diff --git a/mods/msg_area_list.js b/mods/msg_area_list.js index d9afe19d..4935e271 100644 --- a/mods/msg_area_list.js +++ b/mods/msg_area_list.js @@ -55,10 +55,10 @@ function MessageAreaListModule(options) { self.client.term.pipeWrite('\n|00Cannot change area: ' + err.message + '\n'); setTimeout(function timeout() { - self.client.fallbackMenuModule(); + self.prevMenu(); }, 1000); } else { - self.client.fallbackMenuModule(); + self.prevMenu(); } }); } diff --git a/mods/msg_area_post_fse.js b/mods/msg_area_post_fse.js index 24455701..817dbbbd 100644 --- a/mods/msg_area_post_fse.js +++ b/mods/msg_area_post_fse.js @@ -48,10 +48,7 @@ function AreaPostFSEModule(options) { console.log(msg); } - self.client.fallbackMenuModule( { }, function result(err) { - // :TODO: how to best handle this??? fallbackMenuModule should prob inspect options & cb to be optional. gotoMenuModule() already has default cb - }); - //self.client.gotoMenuModule( { name : self.menuConfig.fallback } ); + self.prevMenu(); } ); }; diff --git a/mods/msg_area_view_fse.js b/mods/msg_area_view_fse.js index 15eace0f..7d1d1e44 100644 --- a/mods/msg_area_view_fse.js +++ b/mods/msg_area_view_fse.js @@ -71,14 +71,13 @@ function AreaViewFSEModule(options) { this.menuMethods.replyMessage = function(formData, extraArgs) { if(_.isString(extraArgs.menu)) { var modOpts = { - name : extraArgs.menu, extraArgs : { messageAreaName : self.messageAreaName, replyToMessage : self.message, } }; - self.client.gotoMenuModule(modOpts); + self.gotoMenu(extraArgs.menu, modOpts); } else { self.client.log(extraArgs, 'Missing extraArgs.menu'); } diff --git a/mods/msg_list.js b/mods/msg_list.js index 8359bf72..97b4a5ea 100644 --- a/mods/msg_list.js +++ b/mods/msg_list.js @@ -60,7 +60,6 @@ function MessageListModule(options) { selectMessage : function(formData, extraArgs) { if(1 === formData.submitId) { var modOpts = { - name : config.menuViewPost || 'messageAreaViewPost',//'messageAreaViewPost', // :TODO: should come from config!!! extraArgs : { messageAreaName : self.messageAreaName, messageList : self.messageList,