diff --git a/core/message_area.js b/core/message_area.js index bfc93250..b99e6bbb 100644 --- a/core/message_area.js +++ b/core/message_area.js @@ -10,6 +10,7 @@ var _ = require('lodash'); var assert = require('assert'); exports.getAvailableMessageAreas = getAvailableMessageAreas; +exports.getDefaultMessageArea = getDefaultMessageArea; exports.getMessageAreaByName = getMessageAreaByName; exports.changeMessageArea = changeMessageArea; exports.getMessageListForArea = getMessageListForArea; @@ -20,6 +21,10 @@ function getAvailableMessageAreas() { return Config.messages.areas; } +function getDefaultMessageArea() { + return getAvailableMessageAreas()[0]; +} + function getMessageAreaByName(areaName) { areaName = areaName.toLowerCase(); diff --git a/mods/apply.js b/mods/apply.js index 16f1eb8c..a8361bc9 100644 --- a/mods/apply.js +++ b/mods/apply.js @@ -1,16 +1,18 @@ /* jslint node: true */ 'use strict'; -var ansi = require('../core/ansi_term.js'); -var art = require('../core/art.js'); -var user = require('../core/user.js'); -var theme = require('../core/theme.js'); -var Log = require('../core/logger.js').log; -var MenuModule = require('../core/menu_module.js').MenuModule; -var ViewController = require('../core/view_controller.js').ViewController; -var Config = require('../core/config.js').config; +var ansi = require('../core/ansi_term.js'); +var art = require('../core/art.js'); +var user = require('../core/user.js'); +var theme = require('../core/theme.js'); +var Log = require('../core/logger.js').log; +var MenuModule = require('../core/menu_module.js').MenuModule; +var ViewController = require('../core/view_controller.js').ViewController; +var Config = require('../core/config.js').config; +var sysMenuMethod = require('../core/system_menu_method.js'); +var getDefaultMessageArea = require('../core/message_area.js').getDefaultMessageArea; -var util = require('util'); +var util = require('util'); exports.submitApplication = submitApplication; @@ -85,14 +87,16 @@ function submitApplication(callingMenu, formData, extraArgs) { newUser.username = formData.value.username; newUser.properties = { - real_name : formData.value.realName, - birthdate : new Date(Date.parse(formData.value.birthdate)).toISOString(), - sex : formData.value.sex, - location : formData.value.location, - affiliation : formData.value.affils, - email_address : formData.value.email, - web_address : formData.value.web, - account_created : new Date().toISOString(), + real_name : formData.value.realName, + birthdate : new Date(Date.parse(formData.value.birthdate)).toISOString(), + sex : formData.value.sex, + location : formData.value.location, + affiliation : formData.value.affils, + email_address : formData.value.email, + web_address : formData.value.web, + account_created : new Date().toISOString(), + + message_area_name : getDefaultMessageArea().name, // :TODO: This is set in User.create() -- proabbly don't need it here: //account_status : Config.users.requireActivation ? user.User.AccountStatus.inactive : user.User.AccountStatus.active, @@ -118,7 +122,11 @@ function submitApplication(callingMenu, formData, extraArgs) { if(user.User.AccountStatus.inactive === client.user.properties.account_status) { client.gotoMenuModule( { name : extraArgs.inactive } ); } else { - client.gotoMenuModule( { name : menuConfig.next } ); + // + // If active now, we need to call login() to authenticate + // + sysMenuMethod.login(callingMenu, formData, extraArgs); + // client.gotoMenuModule( { name : menuConfig.next } ); } } }); diff --git a/mods/prompt.hjson b/mods/prompt.hjson index 856fedb0..77cdc3af 100644 --- a/mods/prompt.hjson +++ b/mods/prompt.hjson @@ -31,7 +31,7 @@ } }, "menuCommand" : { - "art" : "menu_prompt.ans", + art: MNUPRMT "mci" : { "ET2" : { "argName" : "command", diff --git a/mods/themes/NU-MAYA/MNUPRMT.ANS b/mods/themes/NU-MAYA/MNUPRMT.ANS new file mode 100644 index 00000000..5b10c3d0 Binary files /dev/null and b/mods/themes/NU-MAYA/MNUPRMT.ANS differ diff --git a/package.json b/package.json index ca860a36..b2b6ebdf 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name" : "enigma-bbs", - "version" : "0.0.1-beta", + "version" : "0.0.1-alpha", "description" : "ENiGMA½ Bulletin Board System", "author" : "Bryan Ashby ", "dependencies" : {