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
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
e36507fec1
* WIP user list - mostly complete
...
* Some code cleanup / renaming
2015-10-18 11:48:08 -06:00
Bryan Ashby
1cb95bd44e
* Remove message_area_desc property -- just fetch it
2015-08-20 22:51:00 -06:00
Bryan Ashby
150bd5778a
* Switch to JSON/config.json based user groups, and user group membership
2015-08-20 22:29:16 -06:00
Bryan Ashby
35de0a2487
* Initial work on moving to JSON configured Message Areas (vs ID's in SQLite). This will be applied to user groups, and other types as well such that JSON can simply be edited in config.json
...
* Hopefully better/proper merge of config.js + config.json => config
2015-08-20 16:35:04 -06:00