362 lines
13 KiB
Plaintext
362 lines
13 KiB
Plaintext
{
|
|
menus: {
|
|
// A quick preamble - defaults to warning about broken terminals
|
|
newUserApplicationPre: {
|
|
art: NEWUSER1
|
|
next: newUserApplication
|
|
desc: Applying
|
|
config: {
|
|
pause: true
|
|
cls: true
|
|
menuFlags: [ "noHistory" ]
|
|
}
|
|
}
|
|
|
|
newUserApplication: {
|
|
module: nua
|
|
art: NUA
|
|
next: [
|
|
{
|
|
// Initial SysOp does not send feedback to themselves
|
|
acs: ID1
|
|
next: fullLoginSequenceLoginArt
|
|
}
|
|
{
|
|
// ...everyone else does
|
|
next: newUserFeedbackToSysOpPreamble
|
|
}
|
|
]
|
|
form: {
|
|
0: {
|
|
mci: {
|
|
ET1: {
|
|
focus: true
|
|
argName: username
|
|
maxLength: @config:users.usernameMax
|
|
validate: @systemMethod:validateUserNameAvail
|
|
}
|
|
ET2: {
|
|
argName: realName
|
|
maxLength: @config:users.realNameMax
|
|
validate: @systemMethod:validateNonEmpty
|
|
}
|
|
MET3: {
|
|
argName: birthdate
|
|
maskPattern: "####/##/##"
|
|
validate: @systemMethod:validateBirthdate
|
|
}
|
|
ME4: {
|
|
argName: sex
|
|
maskPattern: A
|
|
textStyle: upper
|
|
validate: @systemMethod:validateNonEmpty
|
|
}
|
|
ET5: {
|
|
argName: location
|
|
maxLength: @config:users.locationMax
|
|
validate: @systemMethod:validateNonEmpty
|
|
}
|
|
ET6: {
|
|
argName: affils
|
|
maxLength: @config:users.affilsMax
|
|
}
|
|
ET7: {
|
|
argName: email
|
|
maxLength: @config:users.emailMax
|
|
validate: @systemMethod:validateEmailAvail
|
|
}
|
|
ET8: {
|
|
argName: web
|
|
maxLength: @config:users.webMax
|
|
}
|
|
ET9: {
|
|
argName: password
|
|
password: true
|
|
maxLength: @config:users.passwordMax
|
|
validate: @systemMethod:validatePasswordSpec
|
|
}
|
|
ET10: {
|
|
argName: passwordConfirm
|
|
password: true
|
|
maxLength: @config:users.passwordMax
|
|
validate: @method:validatePassConfirmMatch
|
|
}
|
|
TM12: {
|
|
argName: submission
|
|
items: [ "apply", "cancel" ]
|
|
submit: true
|
|
}
|
|
}
|
|
|
|
submit: {
|
|
*: [
|
|
{
|
|
value: { "submission" : 0 }
|
|
action: @method:submitApplication
|
|
extraArgs: {
|
|
inactive: userNeedsActivated
|
|
error: newUserCreateError
|
|
}
|
|
}
|
|
{
|
|
value: { "submission" : 1 }
|
|
action: @systemMethod:prevMenu
|
|
}
|
|
]
|
|
}
|
|
|
|
actionKeys: @reference:common.escToPrev
|
|
}
|
|
}
|
|
}
|
|
|
|
// A quick preamble - defaults to warning about broken terminals (SSH version)
|
|
newUserApplicationPreSsh: {
|
|
art: NEWUSER1
|
|
next: newUserApplicationSsh
|
|
desc: Applying
|
|
config: {
|
|
pause: true
|
|
cls: true
|
|
menuFlags: [ "noHistory" ]
|
|
}
|
|
}
|
|
|
|
//
|
|
// SSH specialization of NUA
|
|
// Canceling this form logs off vs falling back to matrix
|
|
//
|
|
newUserApplicationSsh: {
|
|
module: nua
|
|
art: NUA
|
|
fallback: logoff
|
|
next: newUserFeedbackToSysOpPreamble
|
|
form: {
|
|
0: {
|
|
mci: {
|
|
ET1: {
|
|
focus: true
|
|
argName: username
|
|
maxLength: @config:users.usernameMax
|
|
validate: @systemMethod:validateUserNameAvail
|
|
}
|
|
ET2: {
|
|
argName: realName
|
|
maxLength: @config:users.realNameMax
|
|
validate: @systemMethod:validateNonEmpty
|
|
}
|
|
MET3: {
|
|
argName: birthdate
|
|
maskPattern: "####/##/##"
|
|
validate: @systemMethod:validateBirthdate
|
|
}
|
|
ME4: {
|
|
argName: sex
|
|
maskPattern: A
|
|
textStyle: upper
|
|
validate: @systemMethod:validateNonEmpty
|
|
}
|
|
ET5: {
|
|
argName: location
|
|
maxLength: @config:users.locationMax
|
|
validate: @systemMethod:validateNonEmpty
|
|
}
|
|
ET6: {
|
|
argName: affils
|
|
maxLength: @config:users.affilsMax
|
|
}
|
|
ET7: {
|
|
argName: email
|
|
maxLength: @config:users.emailMax
|
|
validate: @systemMethod:validateEmailAvail
|
|
}
|
|
ET8: {
|
|
argName: web
|
|
maxLength: @config:users.webMax
|
|
}
|
|
ET9: {
|
|
argName: password
|
|
password: true
|
|
maxLength: @config:users.passwordMax
|
|
validate: @systemMethod:validatePasswordSpec
|
|
}
|
|
ET10: {
|
|
argName: passwordConfirm
|
|
password: true
|
|
maxLength: @config:users.passwordMax
|
|
validate: @method:validatePassConfirmMatch
|
|
}
|
|
TM12: {
|
|
argName: submission
|
|
items: [ "apply", "cancel" ]
|
|
submit: true
|
|
}
|
|
}
|
|
|
|
submit: {
|
|
*: [
|
|
{
|
|
value: { "submission" : 0 }
|
|
action: @method:submitApplication
|
|
extraArgs: {
|
|
inactive: userNeedsActivated
|
|
error: newUserCreateError
|
|
}
|
|
}
|
|
{
|
|
value: { "submission" : 1 }
|
|
action: @systemMethod:logoff
|
|
}
|
|
]
|
|
}
|
|
|
|
actionKeys: [
|
|
{
|
|
keys: [ "escape" ]
|
|
action: @systemMethod:logoff
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
|
|
newUserFeedbackToSysOpPreamble: {
|
|
art: LETTER
|
|
config: { pause: true }
|
|
next: newUserFeedbackToSysOp
|
|
}
|
|
|
|
newUserFeedbackToSysOp: {
|
|
desc: Feedback to SysOp
|
|
module: msg_area_post_fse
|
|
next: [
|
|
{
|
|
acs: AS2
|
|
next: fullLoginSequenceLoginArt
|
|
}
|
|
{
|
|
next: newUserInactiveDone
|
|
}
|
|
]
|
|
config: {
|
|
art: {
|
|
header: MSGEHDR
|
|
body: MSGBODY
|
|
footerEditor: MSGEFTR
|
|
footerEditorMenu: MSGEMFT
|
|
help: MSGEHLP
|
|
},
|
|
editorMode: edit
|
|
editorType: email
|
|
messageAreaTag: private_mail
|
|
toUserId: 1 /* always to +op */
|
|
}
|
|
form: {
|
|
0: {
|
|
mci: {
|
|
TL1: {
|
|
argName: from
|
|
}
|
|
ET2: {
|
|
argName: to
|
|
focus: true
|
|
text: @sysStat:sysop_username
|
|
maxLength: 36
|
|
// :TODO: readOnly: true
|
|
}
|
|
ET3: {
|
|
argName: subject
|
|
maxLength: 72
|
|
submit: true
|
|
text: New user feedback
|
|
validate: @systemMethod:validateMessageSubject
|
|
}
|
|
}
|
|
submit: {
|
|
3: [
|
|
{
|
|
value: { subject: null }
|
|
action: @method:headerSubmit
|
|
}
|
|
]
|
|
}
|
|
}
|
|
1: {
|
|
mci: {
|
|
MT1: {
|
|
width: 79
|
|
argName: message
|
|
mode: edit
|
|
}
|
|
}
|
|
|
|
submit: {
|
|
*: [
|
|
{
|
|
value: message
|
|
action: @method:editModeEscPressed
|
|
}
|
|
]
|
|
}
|
|
actionKeys: [
|
|
{
|
|
keys: [ "escape" ]
|
|
viewId: 1
|
|
}
|
|
]
|
|
},
|
|
2: {
|
|
TLTL: {
|
|
mci: {
|
|
TL1: {
|
|
width: 5
|
|
}
|
|
TL2: {
|
|
width: 4
|
|
}
|
|
}
|
|
}
|
|
}
|
|
3: {
|
|
HM: {
|
|
mci: {
|
|
HM1: {
|
|
// :TODO: clear
|
|
items: [ "save", "help" ]
|
|
}
|
|
}
|
|
submit: {
|
|
*: [
|
|
{
|
|
value: { 1: 0 }
|
|
action: @method:editModeMenuSave
|
|
}
|
|
{
|
|
value: { 1: 1 }
|
|
action: @method:editModeMenuHelp
|
|
}
|
|
]
|
|
}
|
|
actionKeys: [
|
|
{
|
|
keys: [ "escape" ]
|
|
action: @method:editModeEscPressed
|
|
}
|
|
{
|
|
keys: [ "?" ]
|
|
action: @method:editModeMenuHelp
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
newUserInactiveDone: {
|
|
desc: Finished with NUA
|
|
art: DONE
|
|
config: { pause: true }
|
|
next: @menu:logoff
|
|
}
|
|
}
|
|
} |