Commit Graph

523 Commits

Author SHA1 Message Date
Bryan Ashby b3e1490d63 Add username to client.log 2016-01-01 21:17:13 -07:00
Bryan Ashby 1212eb41eb Semi functional for basic private mail 2015-12-30 23:24:26 -07:00
Bryan Ashby ac6288eb23 Notes 2015-12-30 22:29:41 -07:00
Bryan Ashby 92c33d2d43 Add WIP method getNewMessagesInAreaForUser() 2015-12-30 22:29:10 -07:00
Bryan Ashby 7fb9cdccb1 Add local_bulletin message area type 2015-12-30 22:28:25 -07:00
Bryan Ashby db014c16bf Backup restore() when 'close' fails to fire 2015-12-28 16:34:28 -07:00
Bryan Ashby eca82b66d4 Better loading of themes & getAvailThemes() 2015-12-24 11:56:04 -07:00
Bryan Ashby 37bba84cb4 Missing ; 2015-12-24 11:55:37 -07:00
Bryan Ashby edcee5eb6a setNewAuthCredentials() method 2015-12-24 11:54:55 -07:00
Bryan Ashby a9490d8fd2 Formatting 2015-12-24 11:54:38 -07:00
Bryan Ashby d2c8bd90f0 setFocusItemIndex() support 2015-12-24 11:54:03 -07:00
Bryan Ashby a2011ef39c setText() for MaskEditTextView 2015-12-24 11:53:34 -07:00
Bryan Ashby 67b0d1a683 User configuration functional 2015-12-24 11:52:23 -07:00
Bryan Ashby fe01a9f15e Additional max lengths for user properties 2015-12-24 11:51:49 -07:00
Bryan Ashby e8c8975f13 Allow hotkeys to submit 2015-12-23 19:08:24 -07:00
Bryan Ashby 3ffccc35da Switch to Renegade style color codes as default pipe code system 2015-12-21 18:07:03 -07:00
Bryan Ashby 727f9fdb1f Fix occasional null ref if client ends before door sock 2015-12-15 23:27:13 -07:00
Bryan Ashby 1404768ed3 Add explicit 'ansi-bbs' as ANSI terminal type 2015-12-14 10:33:15 -07:00
Bryan Ashby 0489f5b2dd * Remove/fix up some console.log()'s 2015-12-13 17:32:05 -07:00
Bryan Ashby b53ad03ad0 Default to luciano_blocktronics for pre-login theme 2015-12-13 16:47:28 -07:00
Bryan Ashby da5d88d20d * Validation framework functional
* Use validation for FSE, NUA, etc.
* Switch to nua.js from apply.js (MenuModule + validation)
2015-12-12 15:52:56 -07:00
Bryan Ashby 0d477210f9 Add Config.general.menuFile: Specify name or path of menu HJSON file. Defaults to menu.hjson in mods 2015-12-11 13:58:58 -07:00
Bryan Ashby bd4c50fa8d Handle SIGINT a bit more gracefully - disconnect clients 2015-12-11 13:57:56 -07:00
Bryan Ashby cb3ae84bc5 Many updates to view validation framework 2015-12-10 21:45:02 -07:00
Bryan Ashby 490d71c180 Remove console.log() 2015-12-10 21:44:36 -07:00
Bryan Ashby 007103cbc1 * New validation methods 2015-12-10 21:44:21 -07:00
Bryan Ashby 34a8bdae21 * Notes on validation framework usage 2015-12-10 21:43:57 -07:00
Bryan Ashby 743035683c * WIP on new view validation framework 2015-12-10 00:04:38 -07:00
Bryan Ashby 964b899fe5 * 'validator' property 2015-12-10 00:03:58 -07:00
Bryan Ashby 93a28f4b7b Rename debugConnections -> traceConnections 2015-12-07 21:45:48 -07:00
Bryan Ashby 4458bcfd37 * Remove inhSocket stuff at least for now: a) It's untested and liekly dangerous, b) does not work with SSH connections 2015-12-07 21:44:42 -07:00
Bryan Ashby 06974973a3 * Make keyboard input trace optional
* Ensure term exists before calling disconnect()
2015-12-07 21:43:37 -07:00
Bryan Ashby 32fe815ea2 Ensure top() exists before attempting to return instance 2015-12-07 19:15:15 -07:00
Bryan Ashby 6af0861dfe * ClientTerminal now has disconnect() method called by a client when a connection ends thus preventing data to be written after 2015-12-07 19:12:31 -07:00
Bryan Ashby 7cc1fe55c0 * Better handling of TOONODE (existing user already logged in) 2015-12-06 20:54:23 -07:00
Bryan Ashby ecaee4fe2f * Handle RFC 779 SEND_LOCATION in telnet 2015-12-06 15:25:10 -07:00
Bryan Ashby 6152530a57 * Add {userId} arg to doors 2015-12-06 15:24:34 -07:00
ENiGMA BBS 58f4af0f11 * Fix defaultHandlerMissingMod for menu load error 2015-12-05 23:22:23 -07:00
Bryan Ashby 406b272de1 Some fixes to doors using sockets. Works on Windows! 2015-12-03 20:31:20 -07:00
Bryan Ashby 5087467eeb * Doors can now optionally spawn a temporary server for I/O (e.g. to be used for virtual serial port for QEMU/etc.) 2015-12-02 22:10:45 -07:00
Bryan Ashby 87b6e245ce Help on message reading #29 2015-11-28 12:17:14 -07:00
Bryan Ashby a1f1578048 System allows non-unique email addresses #7 2015-11-27 22:26:00 -07:00
Bryan Ashby d7c35911e8 * Some DOOR32 updates 2015-11-26 22:09:40 -07:00
Bryan Ashby 5d37b25ad9 WIP door32.sys support 2015-11-26 21:48:02 -07:00
Bryan Ashby c7a6e6fd29 * Temporary work around for broken pty/iconv-lite encoding with doors 2015-11-26 21:27:57 -07:00
Bryan Ashby 15cf37c55c Add Who's Online mod 2015-11-25 18:03:47 -07:00
Bryan Ashby 6a70c5af51 Fix bad SyncTerm/cterm font ESC generation when no font match 2015-11-25 17:58:35 -07:00
Bryan Ashby 11ff742dc6 Don't set font to default (cp437) if it came from SAUCE 2015-11-21 17:01:21 -07:00
Bryan Ashby 3380f3a2e5 * Remove console.log() 2015-11-21 13:31:26 -07:00
Bryan Ashby 97ac37deb9 * Fix ~ and config.hjson lookup on Windows 2015-11-21 13:29:24 -07:00
Bryan Ashby 3ad43c07e8 * New user / apply crashes if no message areas defined #19 2015-11-20 23:46:48 -07:00
Bryan Ashby 839ab8fc91 * Leaving feedback to Sysop #20
* Cache sysop info after first user created
* ACS check preventing sysop from sending feedback to themselves @ apply
2015-11-20 17:49:37 -07:00
Bryan Ashby c81eb6f514 * Update some packages
* Use ptyw.js (from a specific rev for now) vs pty.js for better Windows support
* Updated docs slightly
* Use iconv.encode() in dropfile generation
2015-11-20 11:48:32 -07:00
Bryan Ashby 48c12ddffb * ACS checks in 'next' blocks can now have a default "catch all" by simply omitting the 'acs' portion of a condition 2015-11-14 17:51:05 -07:00
Bryan Ashby 688e46bc47 * Some more JSON -> HJSON cleanup
* More work on ACS system conditional matching. Now functional within menus. Still more work to go on various ACS checks themselves.
* Use ACS for new user path: If new user requires activation, they will see 'DONE' then get logged off
2015-11-14 12:22:21 -07:00
Bryan Ashby 03f9ad4789 * ACS system is now to chars for all IDs, e.g. ID, LC, etc. 2015-11-13 16:13:20 -07:00
Bryan Ashby a2f8101821 * Some additional work on ACS 2015-11-12 20:47:34 -07:00
Bryan Ashby da460dfc7b * Change config.hjson path from ~/.enigma-bbs/config.hjson to ~/.config/enigma-bbs/config.hjson
* Note about first user being sysop
2015-11-12 16:18:28 -07:00
Bryan Ashby a1d3ab9f0e * Lots of progress on PEG.js ACS parsing and validation implementation 2015-11-12 00:31:25 -07:00
Bryan Ashby 23025ca5bd * Very early start on PEG.js based ACS grammar 2015-11-10 23:05:42 -07:00
Bryan Ashby e023d0236e * Fix accidental delete of user db line 2015-11-06 19:09:26 -07:00
Bryan Ashby b6aa21b990 * Fix misc path 2015-11-06 18:30:08 -07:00
Bryan Ashby 3af5b9a213 * Much better DB init 2015-11-06 18:25:07 -07:00
Bryan Ashby 2423a00d05 * Add misc to path creation 2015-11-06 17:15:05 -07:00
Bryan Ashby 4d40fe0f1b * Databases not initialized on first run #15 2015-11-06 16:14:30 -07:00
Bryan Ashby 5bd95255a3 * User.isGroupMember() can now take a string or array of strings to check
* Add WELCOME2.ANS
* Disallow "all" as a username
* Check group membership when switching areas
2015-11-04 23:04:55 -07:00
Bryan Ashby b1be5cdff4 * Delete mods/login.js (not used)
* More fallbackMenuModule & gotoMenuModule clean up -- should all be using new system now
2015-11-03 23:25:35 -07:00
Bryan Ashby f7a7423b32 * New menu stack functional
* @systemMethod:fallbackMenu -> @systemMethod:prevMenu
* Lots of cleanup of gotoMenuModule() -> MenuModule.gotoMenu()
* Lots of cleanup of fallbackMenuModule() -> MenuModule.prevMenu()
* Lots of cleanup of 'next' processing -> MenuModule.nextMenu()
* Clean up CPU strings a bit more
2015-11-03 23:15:49 -07:00
Bryan Ashby 15ce69e02c * More work on MenuStack 2015-11-03 16:42:11 -07:00
Bryan Ashby 64e9b9b057 * Start work on MenuStack 2015-11-03 15:17:14 -07:00
Bryan Ashby da9ae94ab8 * Sanatise ARM CPU string a bit 2015-11-01 14:02:06 -07:00
Bryan Ashby f318dc8da2 * Couple more toString() -> decode() updates 2015-11-01 13:55:59 -07:00
Bryan Ashby 46088a9f02 * Update to encode()/decode() direct calls for iconv-lite
* Overrite font (to not use!) when showing pause prompts - they should use the current set by menu/art
2015-11-01 13:32:52 -07:00
Bryan Ashby 9df21170c6 * Clean up connect.js a bit, add Github URL
* Readme updated some more :)
2015-10-29 14:10:34 -06:00
Bryan Ashby 77a4f27d9e * Remove old files 2015-10-27 22:49:51 -06:00
Bryan Ashby c5a094d8ff * Lots of mods/art/* file cleanup
* doortoomany.ans -> DOORMANY.ANS
2015-10-27 21:12:55 -06:00
Bryan Ashby 349549fae2 * Add .gitignore
* Use 'privateKeyPem' and 'privateKeyPass' for SSH
2015-10-27 20:46:30 -06:00
Bryan Ashby 4a386d649e * WIP on message last read - not fully functional yet 2015-10-22 15:44:44 -06:00
Bryan Ashby 4988559569 * Fix 'newMark' -> 'newIndicator' in message list
* Better Telnet trace filter similar to SSH
2015-10-22 13:01:16 -06:00
Bryan Ashby e9836e18db * New user reserved names now direct to applicaiton process for SSH 2015-10-22 12:22:03 -06:00
Bryan Ashby 93cff52c1f * Allow SSHPMPT.ASC for displaying SSH/secure app info/instructions 2015-10-22 11:04:50 -06:00
Bryan Ashby 4a22ce0924 * Servers now define 'firstMenu'. This allows e.g. SSH to pre auth, while Telnet still gets the matrix 2015-10-22 10:36:08 -06:00
Bryan Ashby 12e7722ec9 * Better place to get server name/type
* Servers export 'isSecure'
2015-10-22 00:03:18 -06:00
Bryan Ashby ad4eea6ba7 * SSH is now functional for 'ssh', PuTTY, SyncTerm, EtherTerm, and hopefully most others
* Explicit detect of syncterm as ANSI
* Add serverType (TELNET, SSH) MCI: %ST
2015-10-21 22:51:35 -06:00
Bryan Ashby e7e9746a85 * Rewrite SSH authentication - now works with PuTTY (thoguh there are some issues) and standard ssh. WIP still!
* Idle monitor not started until 'ready' signal
2015-10-21 16:30:32 -06:00
Bryan Ashby 6a2d283fad * WIP on SSH2 access: Linux ssh can now connect, browse, etc.
* Still issues with other terminals such as EtherTERM which just hangs after auth. Does not seem to send the 'shell' event
* Fix typo in msg_list module
2015-10-20 22:37:39 -06:00
Bryan Ashby 0f1fe31fe5 * SSH semi functional 2015-10-20 15:39:33 -06:00
Bryan Ashby 3833f9910e * Update some packages
* Still trying to figure out ssh2
2015-10-19 22:33:11 -06:00
Bryan Ashby d86d3e0119 * Separate login logic vs display
* Work on SSH a bit -- major WIP, not working!
2015-10-19 17:21:47 -06:00
Bryan Ashby a6f15c2dfc * Add BSD license 2015-10-19 10:50:35 -06:00
Bryan Ashby 549fba6b34 * Code cleanup + comments
* Fix message area access in NUA path
2015-10-18 21:24:13 -06:00
Bryan Ashby e36507fec1 * WIP user list - mostly complete
* Some code cleanup / renaming
2015-10-18 11:48:08 -06:00
Bryan Ashby 52dee0a401 * Filter Private from area lists/etc.
* Clean up CPU string for MCI display
2015-10-17 21:39:54 -06:00
Bryan Ashby d9ee2b6c80 * Add system_property.js 2015-10-17 20:56:16 -06:00
Bryan Ashby 1c1f4394ca * System stats
* Last callers rewritten using format and VM
* Some minor MCI stuff
2015-10-17 20:03:51 -06:00
Bryan Ashby d02d9e4a7c * TOONODE support when already logged in
* Work on new user / NUA flow
* Various cleanup
2015-10-15 23:41:24 -06:00
Bryan Ashby 171ee75043 * pipeWrite() can now parse Renegade via spec='renegade'
* WIP on user config
2015-10-13 00:35:37 -06:00
Bryan Ashby ea8061ae85 * Skeleton for user configuration 2015-10-11 23:26:27 -06:00
Bryan Ashby 6e0a4e84af * Message list updated to be functional with new MCI/etc. (Still WIP, but working good) 2015-10-11 16:05:45 -06:00
Bryan Ashby 3038213c09 * More progress on theming esp. in relation to .config menu module sections 2015-10-09 23:35:40 -06:00
Bryan Ashby a3ba9b0252 * More work on theming 2015-10-06 21:21:13 -06:00
Bryan Ashby 73952a2c37 * Minor work on themes + FSE 2015-10-06 15:22:49 -06:00
Bryan Ashby 60758e0f34 * WIP on theme by Luciano Ayres
* %TL for area name vs MA which is to become "default" message area
2015-10-04 22:04:56 -06:00
Bryan Ashby 3db16ed4a1 * Missing ; 2015-09-30 05:21:28 -06:00
Bryan Ashby a3e37293f4 * WIP on customization of .config blocks
* getThemeArt() updated with new fallback mechanism (theme -> default theme -> art generic)
2015-09-27 22:05:40 -06:00
Bryan Ashby 78f6915577 * More minor WIP on making theme merging more flexible 2015-09-27 19:33:25 -06:00
Bryan Ashby 05812f57f0 * Trailing LF handling is now 'trailingLF' option, with 'default', 'yes', 'no', etc.
* Initial checking of WIP Mystery Skulls theme by Luciano Ayres of blocktronics
* Fix random theme selection
* WIP on theme customization apply: Needs to be much more flexible than current
* MenuModule will use .next > .fallback > default fallback
2015-09-27 15:35:24 -06:00
Bryan Ashby 68b8af7975 * Fix version to represent alpha
* Some fixes to message areas
* New NU-MAYA prompt
2015-09-26 00:20:17 -06:00
Bryan Ashby df477667b0 * client.runtime.* renamed to client.session.*
* some work on area names - need to fix login issue & rest shoudl work
2015-09-25 23:10:18 -06:00
Bryan Ashby 1082b6e39c * Minor fix + notes 2015-09-23 23:55:13 -06:00
Bryan Ashby 903db84f23 * New fallback with default vs explicit working
* New @systemMethod:fallbackMenu working
* Work on NUA flow: added preamble and some work on FSE related stuff
2015-09-23 23:41:06 -06:00
Bryan Ashby d63320e0b7 Merge branch 'master' of ssh://numinibsd/git/base/enigma-bbs 2015-09-23 22:24:59 -06:00
Bryan Ashby 41cdeb4c55 * WIP new fallback system and @systemMethod:fallback 2015-09-23 22:24:37 -06:00
Bryan Ashby 1175278779 * Some work on NUA
* Placeholder for sysop feedback after NUA step
2015-09-22 23:13:06 -06:00
Bryan Ashby 6c38ff54d5 * WIP replacement NUA system 2015-09-22 21:31:56 -06:00
Bryan Ashby b2592d0e71 * Fixes to actionKeys with new focus changes
* Various fixes, minor changes
2015-09-20 19:10:09 -06:00
Bryan Ashby b15d9a0bf8 * Fix word wrap bug introduced prior -- use 'expand' not 'expandTabs'
* Notes on better access of views by ID
* Work on apply process a bit
* Replies can now be saved
2015-09-20 01:29:07 -06:00
Bryan Ashby a6d00b05a7 * Artwork for NU-MAYA help, updated quote builder, etc.
* Fix some typos
* Fix message getQuoteLines()
* Quote builder fully functional
* MLTEV emits more information in position events
* Action keys can how handle plain characters that don't have full key object, e.g. "?"
* Hot keys for a lot of stuff
* WIP work on focus issue in VC.
2015-09-19 22:55:09 -06:00
Bryan Ashby d23012a201 * Fixed actionKeys to have full conf data including extraArgs 2015-09-18 22:16:19 -06:00
Bryan Ashby 899cb658cc * Clean up some "JSON" nameing in config to reflect generic config or HJSON
* Found why "r" wasn't working for reply in menu.hjson... now it crashes though because actionKeys extraArgs broken it seems
2015-09-17 23:17:15 -06:00
Bryan Ashby 1b46506cf8 * New concept of saved states. Modules will be called before enter to restore a saved state (if applicable) and before leave to save one. 2015-09-17 23:11:21 -06:00
Bryan Ashby 9865da34cc * Quote builder very functional, some bugs
* Work on fallback system (implicit); Added some notes... need saveState/restoreState type functionality as extraArgs may not be final args!
2015-09-17 22:53:19 -06:00
Bryan Ashby 6970e6e2ab * Lots of good progress with quote builder... still WIP, but nearly there 2015-09-16 22:31:09 -06:00
Bryan Ashby 20fb54422a * Quote builder even more functional :) 2015-09-15 22:44:31 -06:00
Bryan Ashby 4cba6f4c10 * word_wrap.js: Word wrapping functionality in it's own module
* Message.getQuoteLines()
2015-09-15 21:55:10 -06:00
Bryan Ashby a320a05c99 * Minor tweak to quoting
* Notes / TODO items
2015-09-14 23:02:09 -06:00
Bryan Ashby cee7983c5a * Progress on FSE quote builder... WIP! 2015-09-14 22:40:00 -06:00
Bryan Ashby 150de3953e * Work on quote builder / reply 2015-09-13 21:15:55 -06:00
Bryan Ashby 88d725f585 * Minor work on reply area post 2015-09-12 19:18:08 -06:00
Bryan Ashby 05f666cf29 * Minor JSON -> HJSON config cleanup
* Some logging in telnet server vs console.log()
* Calculate FSE footer position vs hard code it
2015-09-12 17:17:00 -06:00
Bryan Ashby e661b23eca * Strict mode 2015-09-11 08:39:25 -06:00
Bryan Ashby 7b7cf38113 * Cleanup and minor work on FSE post 2015-09-10 23:09:45 -06:00
Bryan Ashby 1a81532aa7 * Mostly thoughts on starting pipe code support for preview mode of MLTEV 2015-09-10 22:20:11 -06:00
Bryan Ashby 6b03b5357f * predefined_mci.js: General method for resolving MCI codes -> string
* Changed MCI resolution to use object to function mapping so entries not yet available would not be executed
* enigmaToAnsi() can now (optionally) resolve MCI codes
* pipeWrite() resolves MCI codes
2015-09-10 21:01:04 -06:00
Bryan Ashby 870e5a9136 * Update modules
* Remove lingering strip-json-comments
2015-09-10 13:38:36 -06:00
Bryan Ashby 481c3171f4 * JSONCache -> ConfigCache
* ConfigCache used for theme.hjson
* Reformatted theme.hjson JSON to HJSON
* Specific form ID used when applying themes if available, else generic match used
* Pass extraArgs when processing 'next'
2015-09-09 21:31:04 -06:00
Bryan Ashby cc6d214882 * More work on 'action' vs 'next' -- mostly complete for now 2015-09-08 22:31:38 -06:00
Bryan Ashby ca4b99a83e * Convert all JSON configurations (*.json) to HJSON (*.hjson) which is much more flexible for a human readable and editable configuration format
* WIP "next" vs "action" changes
* options.cls is now defaulted in config.js/config.hjson (default = true)
* Notes/etc.
2015-09-08 22:08:45 -06:00
Bryan Ashby 052cf5c490 * Some notes / TODO 2015-09-07 22:40:08 -06:00
Bryan Ashby 2edc63632b * Mostly work on building demo / NU-MAYA theme for testing / working out details / etc. 2015-09-07 21:18:09 -06:00
Bryan Ashby 6517f50e0c * Message view prev/next
* Message view up/down movement
* Some new experimental MCI codes
* Put cursor @ top of document in MLTEV preview mode
* Fix fse finishedLoading()
* Menus can have names, clients have current status
2015-09-07 00:12:01 -06:00
Bryan Ashby 1f3948d84c * Menus can specify status
* WIP changes of message loading in viewer - can now do next... WIP!!!
2015-09-06 15:58:58 -06:00
Bryan Ashby b911db75ca * Some Notes 2015-09-04 16:58:54 -06:00
Bryan Ashby cc68106473 * Message number/total 2015-09-04 16:35:08 -06:00
Bryan Ashby 80460ea050 * Code cleanup; minor 2015-09-04 16:17:41 -06:00
Bryan Ashby f587b228bc * Fix separation of editorMode vs footerMode 2015-09-04 14:28:05 -06:00
Bryan Ashby ddc806bd39 * Varous fixes for FSE. ...WIP on separation of editorMode vs editor/menu/etc. focus 2015-09-04 00:02:28 -06:00
Bryan Ashby 42ddabd875 * Minor work on post view FSE / related 2015-09-02 23:11:17 -06:00
Bryan Ashby 8b3b36fd83 * Add dateTimeFormat 2015-09-01 22:42:54 -06:00
Bryan Ashby e0f267c9a5 * Updates & notes to fse for view mode... WIP! 2015-09-01 22:20:29 -06:00