Commit Graph

1141 Commits

Author SHA1 Message Date
Bryan Ashby e9787cee3e ENiGMA 1/2 WILL USE SPACES FROM THIS POINT ON VS TABS
* Really just to make GitHub formatting happy. Arg.
2018-06-21 23:15:04 -06:00
Bryan Ashby 6325f92fa5 Increase max listeners in Events - experimental: may change this in the near future 2018-06-21 18:37:48 -06:00
Bryan Ashby 1fe46894d3 More Hot-Reload related changes
* Config.get(): Returns the latest config
* Update code all over the place to use Config.get() vs Config.conf (which will be deprecated)
2018-06-20 19:57:06 -06:00
Bryan Ashby ca0149eaf0 Fix rare race crash in CombatNet module 2018-06-18 20:17:56 -06:00
Bryan Ashby 4074d68526 #195: Finish scanFile() & hash updates: Clean up code 2018-06-17 20:42:42 -06:00
Bryan Ashby 681e45cb6d Much faster hash calculation / processing & therefor faster scanFile()
* Manaul read of buffers vs stream (fs.createReadStream())
* Small optimization by skipping work if no progress iterator
* Don't use async loop for updating hashes - vanilla for loop
2018-06-17 20:39:43 -06:00
Bryan Ashby f3cd36ad07 Fix oputil hang 2018-06-17 15:14:31 -06:00
Bryan Ashby c9674e68fb * Re-work menu stack goto() a bit - cleaner, support 'mergeFlags', and 'forwardArgs' menuFlags.
* Add show_art.js module: Advanced ways to show art in menu stacks. For example, by extraArgs, fileBase area art, etc -- this will replace e.g. showing message conf art later as to be more generic
2018-06-16 10:01:08 -06:00
Bryan Ashby 5f0c9ed1ab Fix require paths 2018-06-16 08:42:16 -06:00
Bryan Ashby 057ba684ea Use pre-generated table vs parsing a string 2018-06-16 08:41:41 -06:00
Bryan Ashby 2f09f3e995 Fix a couple rare bugs around SSH sessions 2018-06-14 20:00:01 -06:00
Bryan Ashby 4aab8224ed Initial version of hot-reload of config, menus, and prompts
* Themes use ES6 Map vs object{}
* Re-write and re-enable config cache using sane
* Events sent for config, prompt, or menu changes
* Event sent for theme changes
* Theme (or parent menu/prompt) changes cause re-merge and updates to connected clients
2018-06-13 21:02:00 -06:00
Bryan Ashby 1870db7d38 Cleanup code for new getConditionalValue() support 2018-06-13 20:59:43 -06:00
Bryan Ashby ceab8a0180 Code cleanup 2018-06-13 20:58:59 -06:00
Bryan Ashby 7748765ce0 Clean up code for updated getConditionalValue() 2018-06-13 20:58:02 -06:00
Bryan Ashby c08e4dbe04 New system events 2018-06-13 20:54:59 -06:00
Bryan Ashby 82da4b8e1e Resolve non-conditionals as-is 2018-06-13 20:54:17 -06:00
Bryan Ashby ec30c595c4 Fix drawing like page up/down 2018-06-09 22:50:57 -06:00
Bryan Ashby 973e10fb8b HOME/END key support in lists 2018-06-09 22:45:01 -06:00
Bryan Ashby 1cb811576b + Add unique session ID to client sessions
* Aliased to user for convienence
* Added to logs for easy tracing
* Can be used from events/etc. for grouping
2018-06-03 19:58:31 -06:00
Bryan Ashby fbe87640c5 + New user event 2018-06-03 19:58:05 -06:00
Bryan Ashby 0ae9d0d143 + User login and logoff events 2018-06-03 17:59:16 -06:00
Bryan Ashby c142a9c3d3 Work on Events missed files (see prev) 2018-06-03 17:02:28 -06:00
Bryan Ashby b273101b61 Work on Events system:
+ system_event.js
+ codes.l33t.enigma.system.user_upload and codes.l33t.enigma.system.user_download events
2018-06-03 17:00:54 -06:00
Bryan Ashby 57ecac5350 Add ESC support (actually works) 2018-06-02 20:51:09 -06:00
Bryan Ashby ccf29ea8d4 Force overwrite when extracting lha archives - they can contain dupes! 2018-06-02 17:09:43 -06:00
Bryan Ashby 3ecadebf91 Generic MIME types (file types) such as application/octet-stream can how have sub types for handlers (archive, info extract, ...)
+ Add Amiga DMS support via xdms
2018-06-02 16:06:04 -06:00
Bryan Ashby 95422f71ba Fix possible SQL injection in file tags search 2018-06-01 20:16:08 -06:00
Bryan Ashby 70ce81c01a Fix bug with quote escaping in DB sanatizeString() 2018-06-01 20:15:47 -06:00
Bryan Ashby 83dd440219 Lzx / unlzx info 2018-06-01 19:32:00 -06:00
Bryan Ashby 881f9765a6 Remove dead code, init MIME DB when doing file scan 2018-06-01 19:10:42 -06:00
Bryan Ashby 37e5948f65 Add lzx archive support via unlzx 2018-05-31 20:58:24 -06:00
Bryan Ashby 39be44434a Ensure all number groups work 2018-05-21 20:39:52 -06:00
Bryan Ashby 407f38d148 Merge branch '0.0.9-alpha' of github.com:NuSkooler/enigma-bbs into 0.0.9-alpha 2018-05-21 20:37:41 -06:00
Bryan Ashby 8a428e6f74 oputil updates
* oputil.js user ... now works more like other "action" based commands
* add oputil.js user group .... for add/removal from groups
2018-05-21 20:36:34 -06:00
SemperFu 9385cd2c93
Update telnet.js
Spelling
2018-05-12 15:59:28 -04:00
Bryan Ashby 388e581b90 * Fix file transfer bug for WebSockets and SSH. Set/restore temp data handler belongs in base client.
* Lint some files
2018-05-12 09:33:41 -06:00
Bryan Ashby b2ae81c59e
Merge pull request #183 from davestephens/0.0.9-node10
Node.js 10 Upgrade. Bazinga!
2018-04-29 17:31:18 -06:00
Bryan Ashby 73e3e0f0c9 Merge branch '0.0.9-alpha' of github.com:NuSkooler/enigma-bbs into 0.0.9-alpha 2018-04-29 09:08:00 -06:00
David Stephens f692c593e7 Buffer.alloc should be .from 2018-04-29 12:01:34 +01:00
David Stephens b45a6a8743 * Buffer froms that should be allocs
* Remove unnecessary Buffer fill after alloc
*  minor cleanup on fnv1a.js
2018-04-28 21:39:04 +01:00
David Stephens 0d7676a871 Buffer.alloc to init Buffer with a length 2018-04-28 14:06:36 +01:00
David Stephens f16eb6f3e6 Fix Node.js 10 deprecation warnings 2018-04-28 13:59:07 +01:00
Bryan Ashby 0b77c1f79e Better notFoundGenerator 2018-04-24 20:07:02 -06:00
Bryan Ashby 69ced917f3 Bind notFoundGenerator 2018-04-24 19:58:59 -06:00
Jason Kendall 7ac388c30d
Force no compression
It appears as tho there is a problem with compression and the upstream library. This PR forces no compression mode, making a work around for #181. 

This work around is derived from https://github.com/mscdex/ssh2/issues/594 which may be the cause for #181 as well.
2018-04-24 08:30:14 -04:00
Bryan Ashby df01e72f2e
Merge pull request #180 from coolacid/patch-3
Missing mb command in oputil.js help
2018-04-23 19:17:56 -06:00
Bryan Ashby a0cd8fed83 Websocket config should be similar to web #176 2018-04-23 19:03:35 -06:00
Jason Kendall 389e52dcb9
Missing mb command in oputil.js help
The `mb` sub-command was missing from the general help output from oputil.js - this add it.
2018-04-23 20:53:55 -04:00
Bryan Ashby a1f55e5ad5 Webserver Crashes accessing Directory #177 2018-04-23 18:41:12 -06:00
Bryan Ashby 695e84e16f * Remove "LastLine" indicator - does not seem to be used in practice/is not required
* Add logging to Gopher
2018-04-16 19:29:25 -06:00
Bryan Ashby f557e5b6e0 Minor Gopher updates 2018-04-16 17:10:19 -06:00
Bryan Ashby 8ee573fb9d Initial commit of Gopher contnet server 2018-04-15 20:25:56 -06:00
Bryan Ashby 207e361c03 Pull copyright from license - easier to maintain single place 2018-04-10 19:53:04 -06:00
Bryan Ashby f08d6efb97 WIP work on door fixes, updates, etc. 2018-03-28 19:16:10 -06:00
Bryan Ashby 7bd980c886 Crash with color differences in same variable #164 2018-03-22 20:48:31 -06:00
Bryan Ashby 66f444d4fb Slight findFiles optimization 2018-03-17 13:48:11 -06:00
Bryan Ashby 18284d8038 Merge minor theme stuff 2018-03-14 21:33:58 -06:00
Bryan Ashby 290b391bf8 Fix TypeError: cb is not a function during ping 2018-03-14 20:26:40 -06:00
Bryan Ashby 4acbae86e3 Crash on configuration when theme no longer exists #157 2018-03-13 19:22:26 -06:00
Bryan Ashby 66423068b1 Crash on delete in BBS List with zero entries #156 2018-03-13 19:10:20 -06:00
Bryan Ashby 534b51933a Register key press handler - oops! 2018-03-13 19:00:34 -06:00
Bryan Ashby 91bbc2e5fe DESCRIPT.ION generation disabled by default 2018-03-13 18:59:47 -06:00
Bryan Ashby 6311198f4d Schedule that actually is valid... 2018-03-12 22:55:10 -06:00
Bryan Ashby 0de98a673f Add DESCRIPT.ION export ability
* 4DOS style DESCRIPT.ION generated in storage areas @ weekly schedule by default
* Format can be controlled via templates; schedule can be changed or disabled, etc.
2018-03-12 22:18:09 -06:00
Bryan Ashby 7bf49d973d Split up code a bit in prep for DESCRIPT.ION generation 2018-03-11 21:23:35 -06:00
Bryan Ashby edc0bf5e06 Split up code a bit in prep for DESCRIPT.ION generator 2018-03-11 21:23:23 -06:00
Bryan Ashby 9c87d45433 Add GLOB support to oputil fb scan... 2018-03-10 11:37:23 -07:00
Bryan Ashby f6f1de4bd8 Move to pty-node over custom pty2.js 2018-03-08 21:39:42 -07:00
Bryan Ashby 281bfbc2aa Implement isLocal() for 'LC' ACS 2018-03-04 20:47:25 -07:00
Bryan Ashby 17cebdebce Better fillChar handling 2018-03-04 13:35:57 -07:00
Bryan Ashby cac3e0ceae Better fillChar handling, specialKeyMapOverride() 2018-03-04 13:35:36 -07:00
Bryan Ashby e7fb569466 Docs, some minor updates 2018-03-04 13:35:05 -07:00
Bryan Ashby 1482d0b78f Add known system events enum - many more to come 2018-03-04 13:34:35 -07:00
Bryan Ashby 74b9d587c9 + Add compression for larger exports
* Temp disable of idle monitor while building large lists
* Fix hash tags
* Handle no results & other errors
2018-03-04 09:17:49 -07:00
Bryan Ashby 44a4a4aeb4 Updates to idle monitor inc. ability to disable 2018-03-04 09:17:27 -07:00
Bryan Ashby d260011ce8 + New file base list export functionality (early beta!)
* File base area startup() and cleanup
* Better prepViewController() signature
2018-03-03 21:47:04 -07:00
Bryan Ashby d3d8268df8 + New file base list export functionality (early beta!)
* File base area startup() and cleanup
* Better prepViewController() signature
2018-03-03 21:46:41 -07:00
Bryan Ashby 4ccb059d61 Add --quick to help 2018-03-03 21:41:17 -07:00
Bryan Ashby bb605d8781 * Add new well known meta for temp session d/ls
* Better meta assign in ctor
2018-03-03 21:40:28 -07:00
Bryan Ashby c3b62ac608 Some default long formats for theme helpers 2018-03-03 21:16:21 -07:00
Bryan Ashby 95f4cd3fe2 Fix emit args 2018-03-03 21:16:01 -07:00
Bryan Ashby 9ad38f84a7 Add --quick option to fb scan ... 2018-02-16 23:00:15 -07:00
Bryan Ashby cd51cc1adb Merge branch '0.0.9-alpha' of github.com:NuSkooler/enigma-bbs into 0.0.9-alpha 2018-02-12 20:18:38 -07:00
David Stephens 26e8e0f6d0 Fix message counter and message area display in message listings 2018-02-12 21:53:15 +00:00
Bryan Ashby c26a8872e6 Fix TIC node config lookup when wildcards are present 2018-02-10 10:54:04 -07:00
Bryan Ashby 8c7c20862c * Implement some missing placeholder ACS checks
* Add some new ACS checks
* Add documentation on new ACS
2018-02-07 20:26:29 -07:00
Bryan Ashby 3db5081698 Allow wildcards such as "21:*" for node configuraiton keys
* Resolves TODO
* Aligns with docs
2018-02-05 20:13:29 -07:00
Bryan Ashby ced943867e #146 Fix color codes 2018-02-05 18:52:24 -07:00
Bryan Ashby 7555233ac7 Fix some word wrap bugs previously introduced 2018-02-04 21:01:19 -07:00
Bryan Ashby aecc24079f Revert "Fix word wrap crash reported by user when pipe codes are in play"
This reverts commit 0a486d290f.
2018-02-04 10:39:14 -07:00
Bryan Ashby 0a486d290f Fix word wrap crash reported by user when pipe codes are in play 2018-02-04 10:27:32 -07:00
Bryan Ashby 7a6188bba0 Merge branch 'master' of github.com:NuSkooler/enigma-bbs into 0.0.9-alpha 2018-02-03 08:37:24 -07:00
Bryan Ashby aa274bb354 Update copyright to 2018 2018-02-03 08:20:51 -07:00
Bryan Ashby 1b58b85b1f Code cleanup + provide default 'text' member 2018-02-02 21:22:47 -07:00
Bryan Ashby 548ff41467 Conceptual MenuItem caching - WIP for testing, will impl. in others if it seems good 2018-02-01 20:29:26 -07:00
Bryan Ashby a121d60c1b Fix lastReadId logic 2018-02-01 19:34:14 -07:00
Bryan Ashby 5c580c1ecd Prevent private mail in message search results 2018-01-31 23:01:42 -07:00
Bryan Ashby 837326e15a MANY changes around message listing / viewing
* If messageList is used, alwasy require items to contain areaTag
* Standardize messageList a bit - still WIP, needs cleaned up
* Lof of changes around area/conf tracking in relation to messages and message listings
* Work for message searching
* Clean up of various code, much to do...
2018-01-31 22:45:03 -07:00
Bryan Ashby cc2ee9c586 Add ESC support - WIP, not fully functional 2018-01-31 22:42:43 -07:00
Bryan Ashby 0eee701bf6 Add 'data' member support to getData() 2018-01-31 22:42:20 -07:00
Bryan Ashby 783f142e20 Add refreshPredefinedMciViewsByCode() 2018-01-31 22:41:13 -07:00
Bryan Ashby d244cd25fa Add getViewsByMciCode()
* Store MCI code in View when created from MCI
* Allow retrieval by MCI code
2018-01-31 22:38:02 -07:00
Bryan Ashby cb8d331415 Add 'data' member support to getData() 2018-01-31 22:37:03 -07:00
Bryan Ashby ec87d11c31 Fix FileEntry.findFiles() terms MATCH expr 2018-01-31 22:36:31 -07:00
Bryan Ashby 06ea2d1600 Code readability 2018-01-31 22:52:27 +00:00
Bryan Ashby c81aa001f4 Fix typo 2018-01-28 13:22:47 -07:00
Bryan Ashby 999033ec15 New menu sorting, fix up default SGR 2018-01-28 13:03:11 -07:00
Bryan Ashby b6317e0541 File Base area selection using new simplified formatting 2018-01-28 13:02:24 -07:00
Bryan Ashby 342c37b388 Allow extraArgs such that we can launch from menu items easier 2018-01-28 12:56:35 -07:00
Bryan Ashby 7a2df56855 Menu items can now be arrays of objects
* Allows custom members of each item
* 'data' overrides selection (vs returning the index)
* 'text' is the default member for text if no formatters are supplied
* formatters: 'itemFormat' and 'focusItemFormat', e.g. "{member1} - {member2}"
2018-01-27 22:21:48 -07:00
Bryan Ashby 974ee1b389 MAJOR *POSSIBLY BREAKING* changes in FSE
* WIP on cleanup to use 'standard' MCI formatting / theming  used elsewhere in system
* Some MCI ID changes (e.g. FSE in edit mode %TL13 -> %TL4); update your theme.hjson / artwork!
2018-01-26 21:45:08 -07:00
Bryan Ashby a3e257aee3 Fix FSE word wrap bug when no barriers could be located in a > width string 2018-01-26 21:44:07 -07:00
Bryan Ashby 303259841f options -> client, since client was only option ;) 2018-01-26 21:43:08 -07:00
Bryan Ashby dc1ff587a3 Use new Message.findMessages() functionality 2018-01-26 21:42:43 -07:00
Bryan Ashby cc119297e8 wcValue -> wildcards (readability) 2018-01-26 21:39:53 -07:00
Bryan Ashby b6bda7f45f much cleaner code 2018-01-26 21:38:50 -07:00
Bryan Ashby 3d575f7645 Default renderLen array 2018-01-26 21:37:26 -07:00
Bryan Ashby 70b5d7a124 MAJOR refactor of Message class
* ES6 class vs old style
* Add findMessages(filter, ...) similar to FileEntry.findFiles() allowing many filter types used throughout the system
2018-01-26 21:36:16 -07:00
Bryan Ashby ec1876084c Add sanatizeString() method 2018-01-26 21:34:32 -07:00
Bryan Ashby cc74616a93 Next at end of list goes to previous menu by default 2018-01-26 21:34:10 -07:00
Bryan Ashby 50074d7765 Remove unused require 2018-01-21 20:49:49 -07:00
Bryan Ashby 94f3721bf8 Prompt when already logged in 2018-01-21 20:49:38 -07:00
Bryan Ashby 8bfad971a1 Finish conversion from 'binary' -> 'binary-parser'
* FTN packets
* SAUCE
2018-01-21 11:58:19 -07:00
Bryan Ashby c1f971d2d9 Code readability 2018-01-20 19:30:21 -07:00
Bryan Ashby bc55317a4b Fix drawing when focus items set - we should not attempt to stylize! 2018-01-20 19:30:10 -07:00
Bryan Ashby 5caf7a9fce Move NetMail routes to scannerTossers: { ftn_bso: { ... } } where it belongs in config.hjson 2018-01-20 18:47:19 -07:00
Bryan Ashby 70a2bc5160 Rework BSO-style flow file generation
* Add point address NNNNnnnn.pnt sub dir support
* Use *route* address in case of non-direct destinations
2018-01-20 18:32:15 -07:00
Bryan Ashby afe0c88cfc NetMail non-HUB fixes
* Properly separate FTN *packet* header vs *message* header DST/SRC information
* Change routes{} handling: These are now *require* for out-of-HUB routing such that Enig will know where to send messages
2018-01-20 15:16:35 -07:00
Bryan Ashby b1cea5edd7 Add in reason if available, to error message 2018-01-20 15:16:10 -07:00
Bryan Ashby 16c8fd0afc Fix focusTextStyle for VerticalMenuView (lightbar) 2018-01-15 21:40:13 -07:00
Bryan Ashby 78ca1e9c4f * Ensure explicit by-MCI key forms are properly themed, e.g. form: { 3: { HM1: { ... }}} 2018-01-15 21:06:16 -07:00
Bryan Ashby 23e77dcb31 Uncommeng out a deprecated function - will fix later; need for now 2018-01-15 21:05:55 -07:00
Bryan Ashby 05a93cae89 Default to left justification 2018-01-15 20:31:55 -07:00
Bryan Ashby d1593ed159 * Fix bug where 'submit' property was ignored in favor of highest MCI ID always; Will now properly set view with 'submit' to true else rely on highest ID 2018-01-15 20:30:55 -07:00
Bryan Ashby a8d5e84779 * Fix justification 'right' vs 'left': They were flipped (durp!). Right aligned is now really that, etc. You may need to update your theme.hjson/similar! 2018-01-15 16:08:35 -07:00
Bryan Ashby ac1433e84b * Code cleanup and eslint since -- remove unused variables, clean up RegExs, so on... 2018-01-15 12:22:11 -07:00
Bryan Ashby a106050ba3 Fix attempts to load bad path 2018-01-15 09:41:18 -07:00
Bryan Ashby 136d21276c Add new scan pointers for mb/fb 2018-01-14 17:09:23 -07:00
Bryan Ashby e7b0e4af30 Add private exported + sent mail cleanup to trimMessageAreasScheduledEvent() scheduled event 2018-01-14 13:52:40 -07:00
Bryan Ashby 84fd0ff6d2 Add ability to send directly to a NetMail address 2018-01-13 09:06:50 -07:00
Bryan Ashby 9a00b3eb15 Add validateGeneralMailAddressedTo() 2018-01-13 08:58:28 -07:00
Bryan Ashby 149f8bd9f5 Add valid check methods 2018-01-13 08:57:54 -07:00
Bryan Ashby 08ea798d53 Rename to AddressFlavor 2018-01-13 08:57:13 -07:00
Bryan Ashby 2bc8e417e4 Fix non-reply crash 2018-01-12 23:44:22 -07:00
Bryan Ashby 27fcd40900 Fix remote from user @ import 2018-01-12 19:06:33 -07:00
Bryan Ashby 00deb3fe72 * Add concept of external flavor to import/exported mails, e.g. 'ftn'
* Add to/from remote user meta for opaqe addrs, e.g. 'ftn' flavor can use FTN-style addresses
* Allow replys from inbox to a NetMail
2018-01-11 21:39:14 -07:00
Bryan Ashby c5e3220c1d Add support for finding messages by date for msg pointers 2018-01-11 21:17:59 -07:00
Bryan Ashby fa1bffeaf8 Fix limit when fetching entries, allow moment timestamps 2018-01-11 21:17:26 -07:00
Bryan Ashby 4e4ee6b8ce cleanup 2018-01-11 21:16:37 -07:00