295 lines
5.6 KiB
Plaintext
295 lines
5.6 KiB
Plaintext
{
|
|
/*
|
|
./\/\.' ENiGMA½ Prompt Configuration -/--/-------- - -- -
|
|
|
|
_____________________ _____ ____________________ __________\_ /
|
|
\__ ____/\_ ____ \ /____/ / _____ __ \ / ______/ // /___jp!
|
|
// __|___// | \// |// | \// | | \// \ /___ /_____
|
|
/____ _____| __________ ___|__| ____| \ / _____ \
|
|
---- \______\ -- |______\ ------ /______/ ---- |______\ - |______\ /__/ // ___/
|
|
/__ _\
|
|
<*> ENiGMA½ // HTTPS://GITHUB.COM/NUSKOOLER/ENIGMA-BBS <*> /__/
|
|
|
|
-------------------------------------------------------------------------------
|
|
|
|
This configuration is in HJSON (http://hjson.org/) format. Strict to-spec
|
|
JSON is also perfectly valid. Use 'hjson' from npm to convert to/from JSON.
|
|
|
|
See http://hjson.org/ for more information and syntax.
|
|
|
|
|
|
If you haven't yet, copy the conents of this file to something like
|
|
sick_board_prompt.hjson. Point to it via config.hjson using the
|
|
'general.promptFile' key:
|
|
|
|
general: { promptFile: "sick_board_prompt.hjson" }
|
|
|
|
*/
|
|
// :TODO: this entire file needs cleaned up a LOT
|
|
// :TODO: Convert all of this to HJSON
|
|
prompts: {
|
|
userCredentials: {
|
|
"art" : "usercred",
|
|
"mci" : {
|
|
"ET1" : {
|
|
"argName" : "username",
|
|
"maxLength" : "@config:users.usernameMax"
|
|
},
|
|
"ET2" : {
|
|
"submit" : true,
|
|
"argName" : "password",
|
|
"password" : true,
|
|
"maxLength" : "@config:users.passwordMax"
|
|
}
|
|
}
|
|
},
|
|
"userLoginCredentials" : {
|
|
"art" : "USRCRED",
|
|
"mci" : {
|
|
"ET1" : {
|
|
"argName" : "username",
|
|
"maxLength" : "@config:users.usernameMax"
|
|
},
|
|
"ET2" : {
|
|
"submit" : true,
|
|
"argName" : "password",
|
|
"password" : true,
|
|
"maxLength" : "@config:users.passwordMax"
|
|
}
|
|
}
|
|
},
|
|
|
|
logoffConfirmation: {
|
|
art: LOGPMPT
|
|
mci: {
|
|
TM1: {
|
|
argName: promptValue
|
|
items: [ "yes", "no" ]
|
|
focus: true
|
|
hotKeys: { Y: 0, N: 1 }
|
|
hotKeySubmit: true
|
|
}
|
|
}
|
|
}
|
|
|
|
loginSequenceFlavorSelect: {
|
|
art: LOGINSEL
|
|
mci: {
|
|
TM1: {
|
|
argName: promptValue
|
|
items: [ "yes", "no" ]
|
|
focus: true
|
|
focusItemIndex: 1
|
|
hotKeys: { Y: 0, N: 1 }
|
|
hotKeySubmit: true
|
|
}
|
|
}
|
|
}
|
|
|
|
loginGlobalNewScan: {
|
|
art: GNSPMPT
|
|
mci: {
|
|
TM1: {
|
|
argName: promptValue
|
|
items: [ "yes", "no" ]
|
|
focus: true
|
|
hotKeys: { Y: 0, N: 1 }
|
|
hotKeySubmit: true
|
|
}
|
|
}
|
|
}
|
|
|
|
menuCommand: {
|
|
art: MNUPRMT
|
|
mci: {
|
|
TL1: {
|
|
// theme me!
|
|
}
|
|
ET2: {
|
|
argName: command
|
|
width: 20
|
|
maxLength: 20
|
|
submit: true
|
|
textStyle: upper
|
|
focus: true
|
|
}
|
|
}
|
|
},
|
|
|
|
messageMenuCommand: {
|
|
art: MSGPMPT
|
|
mci: {
|
|
TL1: {
|
|
// theme me!
|
|
}
|
|
ET2: {
|
|
argName: command
|
|
width: 20
|
|
maxLength: 20
|
|
submit: true
|
|
textStyle: upper
|
|
focus: true
|
|
}
|
|
}
|
|
},
|
|
|
|
deleteMessageFromListPrompt: {
|
|
art: MSGDELPMPT
|
|
mci: {
|
|
TM1: {
|
|
argName: promptValue
|
|
items: [ "yes", "no" ]
|
|
focus: true
|
|
hotKeys: { Y: 0, N: 1 }
|
|
hotKeySubmit: true
|
|
}
|
|
}
|
|
}
|
|
|
|
"newAreaPostPrompt" : {
|
|
"art" : "message_area_new_post",
|
|
"mci" : {
|
|
"ET1" : {
|
|
"argName" : "to",
|
|
"width" : 20
|
|
},
|
|
"ET2" : {
|
|
"argName" : "subject",
|
|
"width" : 20
|
|
}
|
|
}
|
|
},
|
|
|
|
forgotPasswordPrompt: {
|
|
art: FORGOTPW
|
|
mci: {
|
|
ET1: {
|
|
argName: username
|
|
maxLength: @config:users.usernameMax
|
|
width: 32
|
|
focus: true
|
|
}
|
|
}
|
|
actionKeys: [
|
|
{
|
|
keys: [ "escape" ]
|
|
action: @systemMethod:prevMenu
|
|
}
|
|
]
|
|
}
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
// File Base Related
|
|
///////////////////////////////////////////////////////////////////////
|
|
fileMenuCommand: {
|
|
art: FILPMPT
|
|
mci: {
|
|
TL1: {}
|
|
ET2: {
|
|
argName: menuOption
|
|
width: 20
|
|
maxLength: 20
|
|
textStyle: upper
|
|
focus: true
|
|
}
|
|
}
|
|
}
|
|
|
|
fileBaseRateEntryPrompt: {
|
|
art: RATEFILE
|
|
mci: {
|
|
SM1: {
|
|
argName: rating
|
|
items: [ "-----", "*----", "**---", "***--", "****-", "*****" ]
|
|
}
|
|
}
|
|
|
|
actionKeys: [
|
|
{
|
|
keys: [ "escape" ]
|
|
action: @systemMethod:prevMenu
|
|
}
|
|
]
|
|
}
|
|
|
|
fileBaseTagEntryPrompt: {
|
|
art: TAGFILE
|
|
mci: {
|
|
ET1: {
|
|
argName: tags
|
|
}
|
|
}
|
|
}
|
|
|
|
///////////////////////////////////////////////////////////////////////
|
|
// Standard / Required
|
|
//
|
|
// Prompts in this section are considered "standard" and are required
|
|
// to be present
|
|
//
|
|
///////////////////////////////////////////////////////////////////////
|
|
pause: {
|
|
//
|
|
// Any menu 'pause' will use this prompt
|
|
//
|
|
art: pause
|
|
config: {
|
|
trailingLF: no
|
|
}
|
|
/*
|
|
"mci" : {
|
|
// :TODO: Need special pause for a key MCI
|
|
// e.g. %PA -> themed prompt
|
|
}
|
|
|
|
...or maybe pause should just be special:
|
|
{
|
|
...
|
|
"pause" true
|
|
// uses theme pause which can be art/inline/etc.
|
|
|
|
}
|
|
|
|
... better, a special prompt
|
|
|
|
GetKeyView
|
|
* echoKey : false
|
|
|
|
*/
|
|
}
|
|
/*,
|
|
"standard" : {
|
|
// any menu 'pause' will display this, pause for a key, then erase and move on
|
|
"pause" : {
|
|
"art" : "pause"
|
|
// :TODO: support mci mappings
|
|
}
|
|
},
|
|
"custom" : {
|
|
|
|
}*/
|
|
/*
|
|
see notes in menu_module.js also
|
|
...how to allow for this to come from the theme first???
|
|
same as custom vc drawing/etc.? ...
|
|
|
|
{
|
|
"theme" : {
|
|
"inlineArt" : {
|
|
"something" : "%MC and |01Pipe codes here"
|
|
}
|
|
}
|
|
}
|
|
|
|
"pause" : {
|
|
"art" : "@inline:simplePrompt",
|
|
// support pipe codes & MCI
|
|
"simplePrompt" : "--------/ Pause /----------------",
|
|
"mci" : {
|
|
|
|
}
|
|
}
|
|
*/
|
|
}
|
|
}
|