Commit Graph

82 Commits

Author SHA1 Message Date
Bryan Ashby d03718d55e
Move avatar handler to generic system general handler 2023-01-22 10:18:52 -07:00
Bryan Ashby 3f2dcee5a7
Add avatar support
* Default generated for new users (oputil.js tool to come)
* Defaults to setting ActivityPub image/icon
* Allows ops to configure the look, extend, etc.
2023-01-21 20:57:22 -07:00
Nathan Byrd 1068abca80 Changed the key name for the ActivityPub signing key 2023-01-13 13:07:06 -06:00
Bryan Ashby 41867c73d5
Tidy 2023-01-06 14:17:16 -07:00
Bryan Ashby 7380ef571a
Hopefully formatted correctly 2023-01-06 13:52:33 -07:00
Bryan Ashby 848044bec6
Prettier 2023-01-06 13:49:13 -07:00
Nathan Byrd 9f33c8b21d Added public/private keypairs for user (and hid from logging) 2023-01-05 22:33:03 -06:00
Bryan Ashby 9172fdda9d
Re-apply some Prettier formatting after merge 2022-06-12 14:12:03 -06:00
Bryan Ashby e0fca9f8f7
Initial sync up with master after Prettier 2022-06-12 13:57:46 -06:00
Bryan Ashby 4881c2123a First pass formatting with Prettier
* Added .prettierrc.json
* Added .prettierignore
* Formatted
2022-06-05 14:04:25 -06:00
Bryan Ashby f02624c14d
Add ability to toggle avail/invis from WFC 2022-05-31 12:28:26 -06:00
Bryan Ashby 6502f3b55e
Initial support for user status flags (NotAvail, NotVisible, ...) 2022-05-08 22:15:57 -06:00
Bryan Ashby d0db38a544
More docs, total user count MCI and stat 2022-05-01 19:58:00 -06:00
Bryan Ashby 9c7fb16196
Last caller information / MCI 2020-11-26 19:51:00 -07:00
Bryan Ashby 24963406ea
Much faster getUserList 2020-07-13 22:40:49 -06:00
Bryan Ashby e9cc49497c
Fix group assignment bug 2020-02-18 09:35:23 -07:00
Bryan Ashby 0ed507cd7b
Initial real 2FA/OTP work 2019-04-09 20:07:19 -06:00
Bryan Ashby 23779c3abe
Use authInfo obj vs weird params. auth factor 1: factor 2 for 2FA, etc. 2019-02-22 22:51:12 -07:00
Bryan Ashby 57938e761e
+ Implement SSH PubKey authentication
* Security related items to config/security dir
2019-02-20 23:55:09 -07:00
Bryan Ashby 65ef1feb6c
Use crypto.timingSafeEqual() vs hand rolled method for constant time password comparison 2019-02-20 21:12:41 -07:00
Bryan Ashby 2788c37492 + ACS: AC for achievement count check
+ ACS: AP for achievement point check
+ User minutes used on the system are now tracked
+ MCI: TO for total time spent online system (friendly format)
* Fix up a couple ACS bugs with |value|
* Fix formatting of achievement text
+ Add more achievements
* Fix achievement duration formatting
2019-01-10 20:34:52 -07:00
Bryan Ashby 8652b35b46 Code cleanup & resolve some minor TODO's in dropfile gen 2018-12-09 01:01:55 -07:00
Bryan Ashby 6d2c095976 Fix cb 2018-11-27 22:01:14 -07:00
Bryan Ashby f80e07fcf9 ...and more UserProps 2018-11-23 22:18:15 -07:00
Bryan Ashby a4823c0c4a Logging around accoung lock/unlocking 2018-11-23 11:44:46 -07:00
Bryan Ashby df2bf4477e SECURITY UPDATE
* Handle failed login attempts via Telnet
* New lockout features for >= N failed attempts
* New auto-unlock over email feature
* New auto-unlock after N minutes feature
* Code cleanup in users
* Add user_property.js - start using consts for user properties. Clean up over time.
* Update email docs
2018-11-22 23:07:37 -07:00
Bryan Ashby 9fd819d608 Resolve TODO RE using EnigError for bad login attempts 2018-11-21 19:43:50 -07:00
Bryan Ashby e6a812cf34 Standardization work on built in user list module plus docs & code cleanup
* More docs, fix some info
* Code cleanup
2018-07-22 12:56:56 -06:00
Bryan Ashby 52585c78f0 Major changes around events, event log, etc.
* User event log is now functional & attached to various events
* Add additional missing system events
* Completely re-write last_callers to have new functionality, etc.
* Events.addListenerMultipleEvents()
* New 'moduleInitialize' export for module init vs Event specific registerEvents
* Add docs on last_callers mod
2018-07-21 14:32:06 -06:00
Bryan Ashby 1d8be6b014 Pardon the noise. More tab to space conversion! 2018-06-22 21:26:46 -06:00
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 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 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
David Stephens f16eb6f3e6 Fix Node.js 10 deprecation warnings 2018-04-28 13:59:07 +01: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 b97f96ce18 * Fix Via parsing
* Use LIKE for real name lookup
2018-01-01 18:43:05 -07:00
Bryan Ashby 84a1f70fc2 * Add some user lookup functionality
* Fix INTL to/from order
* Remove VIA kludge when initially creating a NetMail message
2018-01-01 18:10:38 -07:00
Bryan Ashby 1e250f06d9 * Fix major issue with SQLite transactions + aync code causing collisions 2017-09-16 17:13:11 -06:00
Bryan Ashby 213f63ae12 More deleted user robustness 2017-03-02 18:50:58 -07:00
Bryan Ashby 058ff3f367 * Rework user.js and User object to ES6
* Update download stats for user when web download is completed
2017-02-18 13:21:18 -07:00
Bryan Ashby 12d4c158c4 * ENiGMA now require Node.js 6.x LTS+
* Bump version to 0.0.4-alpha
* Update package dependencies
* Use modified node-buffers that does not use deprecated Array.get()
* Update lodash dependency to 4.x & convert to new methods/etc.
* Better 'noHistory' support for menu stack
* Fix bug in download queue init
* Misc code cleanup
2017-01-28 12:33:06 -07:00
Bryan Ashby 6da7d557f9 * Improvements to ANSI parser
* Introduction of storage tags for file bases / areas
* Expiration for file web server items
* WIP work on clean ANSI (on hold for a bit while other file base stuff is worked on)
2016-12-06 18:58:56 -07:00
Bryan Ashby 2c53515b60 Better isGroupMember() impl. 2016-08-31 22:06:49 -06:00
Bryan Ashby 57309b433a Misc & isRootUserId() 2016-08-29 21:03:48 -06:00
Bryan Ashby 8787703989 * New StatLog: Replaces various logs, system props, etc. into one class/methods
* Uew StatLog for last callers
* Use new StatLog for +op props
* Use new StatLog for user props such as posts & MCI to access such
* Use StatLog for various new MCI codes for +op
* Misc missing MCI codes
2016-07-27 21:44:27 -06:00
Bryan Ashby 6750c05f07 Beter group check and isAuthenticated() 2016-01-30 15:26:19 -07:00
Bryan Ashby edcee5eb6a setNewAuthCredentials() method 2015-12-24 11:54:55 -07:00
Bryan Ashby a1f1578048 System allows non-unique email addresses #7 2015-11-27 22:26:00 -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