Pre-Auth Feedback
Pre-Auth Feedback
The pre_auth_feedback module lets unauthenticated visitors send a private message to the sysop before logging in — directly from the login matrix. This is distinct from page_sysop, which requires an authenticated user.
The sender types a free-text name in the From field. It is stored as-is and never resolved to a user account, so a malicious visitor cannot impersonate an existing user. The To field is locked to the sysop. The full FSE editor is used for composition.
Because the sender has no account, replies to these messages are blocked: attempting to reply from the inbox shows the preAuthFeedbackNoReply notice and returns to the inbox rather than opening a compose screen that would silently discard the mail.
Enabling the Feature
- Add a
feedbackitem to your loginmatrixmenu’sVM1items list and wire it to@menu:preAuthFeedback. - Add a
preAuthFeedbackmenu entry to your login menu config (seemisc/menu_templates/login.in.hjsonfor a complete example). - Create art
msg_op_feedback_headerwithET1(From — editable),ET2(To — locked),ET3(Subject — editable), and optionalTL4(error message). The body, footer, and help art reuse the standardMSGBODY,MSGEFTR,MSGEMFT,MSGEHLPfiles. - Create art
PREAFNRPLYfor the “cannot reply” notice shown to the sysop. The menu auto-advances toprevMenuafter 3 seconds. - Add a
preAuthFeedbacktheme block (seetheme.hjson) matching the MCI widths and bodyMT1height — copy fromprivateMailMenuCreateMessage.
Art Files
| Spec | Description | Key MCI |
|---|---|---|
msg_op_feedback_header |
Header form — From (editable), To (locked), Subject (editable), optional error | ET1 (from), ET2 (to), ET3 (subject), TL4 (error) |
PREAFNRPLY |
Notice shown when sysop attempts to reply to a ghost-sender message | none required |
preAuthFeedback Menu Config Keys
| Key | Default | Description |
|---|---|---|
sysopUserName |
Sysop |
Display name shown in the locked To field |
defaultFromName |
"" |
Seed value for the editable From field |
defaultSubject |
Feedback to Sysop |
Pre-populated Subject (user may edit) |
noReplyGhostSenderMenu |
preAuthFeedbackNoReply |
Menu shown when sysop attempts to reply |
Theming
Add a preAuthFeedback block to your theme.hjson, matching the MCI view widths from your art file and the body MT1 height:
preAuthFeedback: {
0: {
mci: {
ET1: { width: 19, textOverflow: "..." }
ET2: { width: 19, textOverflow: "..." }
ET3: { width: 19, textOverflow: "..." }
}
}
1: {
mci: {
MT1: { height: 14 }
}
}
}
See Also
- Sysop Chat — two-way split-screen chat and paging for authenticated users.
