Commit Graph

1943 Commits

Author SHA1 Message Date
Bryan Ashby 99ae973396
Handle Update of Notes, store Activites as-is, better shared mailbox delivery and DRY 2023-02-04 22:55:11 -07:00
Nathan Byrd 77b0e6dd23 Merge branch '459-activitypub-integration' of github.com:NuSkooler/enigma-bbs into 459-activitypub-integration 2023-02-04 19:34:09 -06:00
Nathan Byrd 877e2ca61a Added followers and following 2023-02-04 19:33:56 -06:00
Bryan Ashby c3335ce062
Hopefully better microformat handling outgoing 2023-02-04 15:17:59 -07:00
Bryan Ashby a24ec5fd67
Some hardening and Note import improvements for diff systems 2023-02-04 14:19:29 -07:00
Bryan Ashby b20b6cc5ca
Updates on form validation
* Better errors, using enig Errors and ErrorReasons
* If subject isn't required, don't enforce it
* Allow validator listeners to override error (ie: ignore)
2023-02-04 13:44:55 -07:00
Bryan Ashby a8e867a4bb
Support 'maxLength' property in MLTEV; Enforce this by default, to 500 characters for AP messages. WIP optional subjects, some new configuration 2023-02-04 11:51:47 -07:00
Bryan Ashby 1065f14c2e
Merge branch '459-activitypub-integration' of github.com:NuSkooler/enigma-bbs into 459-activitypub-integration 2023-02-03 15:14:54 -07:00
Nathan Byrd 00e6b41a3e Fixed focus and minor changes 2023-02-03 16:14:45 -06:00
Bryan Ashby f97d1844e3
Add attachment information to messages, fix duplicate handling to respond properly 2023-02-03 15:14:27 -07:00
Nathan Byrd 95250d23f2 Added additional fields and some cleanup 2023-02-03 15:21:19 -06:00
Bryan Ashby 8a4f90263a
Split out web logging to it's own logger/files/configuration 2023-02-01 23:02:33 -07:00
Bryan Ashby d286fa2cf4
Merge branch '459-activitypub-integration' of github.com:NuSkooler/enigma-bbs into 459-activitypub-integration 2023-02-01 22:01:20 -07:00
Bryan Ashby 5f53ef9a60
itemFormat/focusItemFormat properties in Button 2023-02-01 22:00:31 -07:00
Bryan Ashby eb9d9055e9
Allow itemFormat/focusItem format on TextViews/Buttons/... 2023-02-01 21:59:55 -07:00
Nathan Byrd 3be14ec94b Start of an actor search screen, finally 2023-02-01 21:50:32 -06:00
Nathan Byrd 1d1bf68f0d Added warning to make finding misconfigurations easier 2023-02-01 18:26:33 -06:00
Bryan Ashby 835bfbddb0
Return to prev on save 2023-01-31 22:19:27 -07:00
Bryan Ashby f8d4f49f7f
WIP ActivityPub user config 2023-01-31 22:16:19 -07:00
Bryan Ashby 98d37e9564
Fix various Content-Lenght's 2023-01-31 20:06:07 -07:00
Bryan Ashby a829905c63
New convienience functions on toggle menus, allow paths in sys module search 2023-01-30 22:13:38 -07:00
Bryan Ashby c456c18b85
Non-dynamic info 2023-01-30 16:09:18 -07:00
Bryan Ashby 35b7c00d11
Additionl of WIP NodeInfo2 support, fix content-type for Actor images 2023-01-30 12:30:36 -07:00
Bryan Ashby 3bdce81bdb
Retro style default profile, constant cleanup, some DRY, etc. 2023-01-29 16:52:01 -07:00
Bryan Ashby 2a75d55b42
Remove alias cache never used 2023-01-28 12:59:56 -07:00
Bryan Ashby 0ca67f6729
Clean up cache, add missing FK option 2023-01-28 12:59:12 -07:00
Bryan Ashby 6dd9fe810f
Fix profile query 2023-01-28 12:13:11 -07:00
Bryan Ashby 2f577fcada
Merge branch '459-activitypub-integration' of github.com:NuSkooler/enigma-bbs into 459-activitypub-integration 2023-01-28 11:57:14 -07:00
Bryan Ashby 9b01124b2e
Re-work of ActivityPub DBs and various account lookups
* Always look up Actors by explicit Actor IDs
* Re-work DB: style, properties we track, etc.
* Create AP properties via a event!
* Lots of cleanup
* WF may be partially broken if loooking up by 'profile' alias URL: WIP
2023-01-28 11:55:31 -07:00
Nathan Byrd 4f6891a668 Fix possible BBS crash on undefined text 2023-01-27 16:27:33 -06:00
Nathan Byrd 8dd28e3091 Fixed not-found and similar errors case 2023-01-26 19:18:25 -06:00
Bryan Ashby d624871a83
Split message consts to their own file, fix some HTTP responses, better subjects from ActivityPub messages, fix AP reply indicators, ... 2023-01-26 15:42:11 -07:00
Bryan Ashby 0bd2c3db1c
Better handling of to/from HTML and BBS message formats, Note handling esp with inReplyTo, etc. 2023-01-25 22:22:45 -07:00
Bryan Ashby 4f632fd8c4
Many WebFinger improvements, can now round trip private messages 2023-01-25 18:41:47 -07:00
Bryan Ashby 82091c11c1
pretty 2023-01-24 21:53:39 -07:00
Bryan Ashby 1aa56fbaa7
WIP: Import messages sent to local Actor inboxes to their private mail 2023-01-24 21:40:12 -07:00
Nathan Byrd 5b69cdb516 Changed activity.js back for WellKnownActivityTypes 2023-01-24 20:51:40 -06:00
Nathan Byrd f8b132310c Cleaned up missing ./const 2023-01-24 19:16:14 -06:00
Bryan Ashby d5446cdb51
Cleanup and placeholder 2023-01-24 18:11:28 -07:00
Bryan Ashby d7df066ab0
Object and Note, load of public notes, etc. 2023-01-23 14:45:56 -07:00
Bryan Ashby 0fc8ae0e18
WIP on shared inbox functionality 2023-01-22 13:51:32 -07:00
Bryan Ashby 8f131630ff
Update on recording to outbox 2023-01-22 11:02:45 -07:00
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
Bryan Ashby 468f1486c0
Use a Collection for outbox 2023-01-21 18:51:54 -07:00
Bryan Ashby ce7dd8e1cd
Handle Undo 2023-01-21 01:19:19 -07:00
Bryan Ashby d9e4b66a35
Cleanup, DRY, logging 2023-01-20 22:15:59 -07:00
Bryan Ashby 9517b292a4
Work on shifting code to generic collections, etc. 2023-01-20 16:03:27 -07:00
Bryan Ashby 930308e07f
Fix POST to Accept Follow Request 2023-01-19 22:31:14 -07:00
Bryan Ashby 51308a5ad3
Merge branch 'master' of github.com:NuSkooler/enigma-bbs into 459-activitypub-integration 2023-01-16 11:08:11 -07:00
Bryan Ashby 30f965d981
Remove no longer supported CombatNet 2023-01-16 11:04:56 -07:00
Bryan Ashby b075e25330
Cleanup 2023-01-13 23:55:05 -07:00
Nathan Byrd 4841823d67 Additional merge changes 2023-01-13 23:16:55 -06:00
Nathan Byrd 3cb4f5158e Merge upstream 2023-01-13 23:00:12 -06:00
Bryan Ashby 315d77b1c0
Start Collection, some extra Actor props, start Followers, cleanup/DRY/etc. 2023-01-13 21:27:02 -07:00
Nathan Byrd c796a856b1 Bug squashing and refactored inbox 2023-01-13 16:03:09 -06:00
Nathan Byrd 84dde6c5c5 Small bugfixes 2023-01-13 13:26:12 -06:00
Nathan Byrd 1068abca80 Changed the key name for the ActivityPub signing key 2023-01-13 13:07:06 -06:00
Bryan Ashby 9ad0cabd04
Test hook 2023-01-13 09:52:21 -07:00
Bryan Ashby 5e5c9236ec
Return a outbox WIP 2023-01-12 23:19:52 -07:00
Bryan Ashby 157b90687c
Move ActivityPub stuff under activitypub/ 2023-01-12 18:49:13 -07:00
Bryan Ashby 67652b18f2
Prettier 2023-01-12 18:40:43 -07:00
Bryan Ashby fc14b5d299
Persist exported/published messages to ActivityPub 2023-01-12 18:38:42 -07:00
Bryan Ashby eaadd0a830
Persist exported/published messages to ActivityPub 2023-01-12 18:26:44 -07:00
Bryan Ashby 64848b4675
Initial 'Note' support for ActivitiyPub/Mastodon, reconition of @User@domain ActivityPub addresses, skeleton for ActivityPub scan/toss 2023-01-11 22:37:09 -07:00
Bryan Ashby ef118325ba
Add intiial 'flavor' for ActivityPub messages 2023-01-11 09:47:07 -07:00
Bryan Ashby 01cd91b045
Fix route 2023-01-08 20:43:16 -07:00
Bryan Ashby 44c67f5327
Added HTTP util: postJson(), post Accept Activity to server with signing 2023-01-08 20:34:30 -07:00
Bryan Ashby 3a70cc6939
Abilitiy to respond with 'Accept' Activity and ActivityPubSettings user props 2023-01-08 17:11:49 -07:00
Bryan Ashby e5b2beffcf
Actor.fromLocalUser() 2023-01-08 13:42:52 -07:00
Bryan Ashby 2370185bcc
Tidy 2023-01-08 13:26:52 -07:00
Bryan Ashby f86d9338a1
Start work on Activity and Actor objects, validation, fetching, etc. 2023-01-08 13:18:50 -07:00
Bryan Ashby f9f9208ada
Merge 2023-01-08 01:29:37 -07:00
Bryan Ashby 55b210e4e7
Steps to allow follow requests 2023-01-08 01:22:02 -07:00
Nathan Byrd 2c0992becb Added stub activitypub_actor database entries 2023-01-07 14:48:12 -06:00
Nathan Byrd 9eb3a1d37f eslint fixes as well as fixing a small variable typo 2023-01-07 13:40:52 -06:00
Bryan Ashby 23f753e4b3
Web Handlers are now given the parent Web Server directly 2023-01-07 09:50:16 -07:00
Bryan Ashby a1e54dee6d
Log cleanup 2023-01-06 18:55:24 -07:00
Bryan Ashby 60238de017
Some tidy and log cleanup 2023-01-06 18:05:11 -07:00
Nathan Byrd b252f69f05 Changes to work with Mastodon. Also fixed variable rename issue 2023-01-06 16:09:08 -06:00
Bryan Ashby d278307a81
Durp. 2023-01-06 14:19:14 -07: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 d615b53f1f Small fixes to activitypub json output 2023-01-06 13:49:45 -06:00
Nathan Byrd e478665456 Added public key to selfUrl 2023-01-06 13:42:15 -06:00
Nathan Byrd 344d4716ce Added ability to use .json to get JSON from self URL. Also added some logging. 2023-01-06 13:15:29 -06:00
Nathan Byrd 9f33c8b21d Added public/private keypairs for user (and hid from logging) 2023-01-05 22:33:03 -06:00
Bryan Ashby dc7f902182
Missing import 2023-01-04 22:19:12 -07:00
Bryan Ashby 8026164ae4
Standardize on _enig prefix for internal routes; update all _internal to this prefix 2023-01-04 21:25:33 -07:00
Bryan Ashby 5055337eff
Hand back a profile for self 2023-01-04 20:29:18 -07:00
Bryan Ashby d4f74447ec
Skeleton work 2023-01-03 20:42:36 -07:00
Bryan Ashby 6cea4269b2
More utils, tidy, and activitypub.js added 2023-01-03 20:32:09 -07:00
Bryan Ashby 127e9794ee
Central check for enable/disabled web handlers, added some utility functions, etc. 2023-01-03 15:10:39 -07:00
Bryan Ashby 99e9ebbec9
Utility, cleanup, etc. 2023-01-02 22:25:32 -07:00
Bryan Ashby 092acc0138
Tidy 2023-01-02 16:55:36 -07:00
Nathan Byrd 395676f19d accountStatus cannot both be inactive and disabled, changed to or condition. Also removed outdated comment. 2023-01-02 15:20:24 -06:00
Bryan Ashby 25e3630458
Additional variables for profile/template 2023-01-01 21:15:43 -07:00
Bryan Ashby ff219cbb06
Filter disabled/inactive users out 2023-01-01 20:54:19 -07:00
Bryan Ashby 380920f6c8
Profile template ability 2023-01-01 19:19:51 -07:00
Nathan Byrd db652bff59 Just added some info to the profile as an example. 2023-01-01 11:07:33 -06:00
Nathan Byrd e1b4c3e510 Refactored profile to be part of webfinger 2023-01-01 10:47:59 -06:00
Bryan Ashby 38098b46f1
Comments 2022-12-31 17:51:03 -07:00
Bryan Ashby a00a93859e
Extend from WebHandlerModule 2022-12-31 15:48:51 -07:00
Bryan Ashby 0e32e3856e
Add CognitiveGears to author 2022-12-31 15:39:54 -07:00
Bryan Ashby e78f9cdb71
Merge branch '459-activitypub-integration' of github.com:NuSkooler/enigma-bbs into 459-activitypub-integration 2022-12-31 15:31:53 -07:00
Bryan Ashby 7b5cb165ee
Updates to WebFinger resource parsing 2022-12-31 15:30:54 -07:00
Nathan Byrd fb035f2b58 Added a start at a profile 2022-12-31 16:28:03 -06:00
Nathan Byrd d8de6171aa Added additional fields from Masto 2022-12-31 13:05:59 -06:00
Bryan Ashby 46bc92a690
WebFinger update: return super basic info 2022-12-31 00:38:09 -07:00
Bryan Ashby b1bb66e52f
WebFinger stub 2022-12-30 22:39:39 -07:00
Bryan Ashby d2d5aad236
Add concept of 'handlers' to web server 2022-12-30 22:35:18 -07:00
Bryan Ashby c265a44c1a
Bump version to 0.0.14-beta + major web server updates 2022-12-29 00:56:10 -07:00
Bryan Ashby 7f0254701c
Ensure we have a message list 2022-12-14 19:56:43 -07:00
Bryan Ashby a4261d2d36
Fix bad check for missing areas (by tag) 2022-11-27 21:07:56 -07:00
Bryan Ashby d1f0a12f77
New options for launching local doors via the abracadabra module 2022-10-25 10:59:56 -06:00
Bryan Ashby ff616c384f
MenuModule.setConfigWithExtraArgs() 2022-10-13 22:43:41 -06:00
Bryan Ashby 065658f6b8
First commit of "advanced" MCI formatting via theme.hjson entries allowing mini-formatting langauge to apply
Example: {BN!styleFirstLower} in 'text' property
2022-10-05 21:46:13 -06:00
Bryan Ashby 1021226020
Nuke %PL - never used, not needed 2022-10-05 21:07:56 -06:00
Bryan Ashby c7568ac897
Fix visibility restore at WFC exit 2022-10-02 11:22:23 -06:00
Bryan Ashby d8bc02ce46
Catch timestamp error 2022-09-30 23:55:28 -06:00
Bryan Ashby 8c92f3cc49
Log IPs 2022-09-25 18:29:00 -06:00
Bryan Ashby c4518c7b94
Tidy/DRY 2022-09-25 14:00:52 -06:00
Bryan Ashby 5f6d70e460
Some fixes to NNTP POSTs, logging, etc. 2022-09-23 11:06:33 -06:00
Bryan Ashby 2cb0970a31
Add 'allowPosting' config 2022-09-22 21:24:24 -06:00
Bryan Ashby d2dafc4dbc
Initial NNTP write access support 2022-09-22 21:03:53 -06:00
Bryan Ashby e61be537aa
Minor bug fix 2022-09-21 08:26:52 -06:00
Bryan Ashby c105a2601a
Add by filename support to FileEntry.findFiles() 2022-09-15 12:37:48 -06:00
Bryan Ashby ad44495469
Utility methods 2022-09-14 22:48:56 -06:00
Bryan Ashby a1188fb90c
Handle case where remoteAddress is not yet avail 2022-09-13 13:59:29 -06:00
Bryan Ashby 2a0ae05c45
Bail and log why if door 'io' config is bad 2022-09-08 21:31:01 -06:00
Bryan Ashby 695bb40b17
More improved logging around client changes 2022-08-31 11:47:03 -06:00
Bryan Ashby 2d8c896ad4
Handle node status views when client disconnects 2022-08-31 11:46:51 -06:00
Bryan Ashby edfc2f68a4
Fix pre-auth properties in user list 2022-08-23 16:56:40 -06:00
Bryan Ashby 4d6bc98a0f
Fix a dumb :( 2022-08-21 15:43:53 -06:00
Bryan Ashby 7060bf270b
Better debug logs 2022-08-21 15:41:37 -06:00
Bryan Ashby 4a63bc577e
Fix terminology used in code 2022-08-21 14:03:19 -06:00
Bryan Ashby 1f130347d5
Fix missing check 2022-08-21 14:02:47 -06:00
Bryan Ashby c8df7f3d6b
New easier to manage Gopher include/exclude areas with wildcard support
* Deprecate but still support older format for now
* Add new format allowing easier management
2022-08-21 13:27:32 -06:00
Bryan Ashby d4341bf85f
Doc tidy 2022-08-19 00:03:25 -06:00
Bryan Ashby 94145c043a
Tidy tidy tidy 2022-08-18 14:55:57 -06:00
Bryan Ashby 226c261505
Change sort order for 'lastlogin' and 'created' sorts 2022-08-16 13:45:39 -06:00
Bryan Ashby b971876795
Table output, more fields, and --sort for './oputil.js user list' 2022-08-16 12:19:49 -06:00
Bryan Ashby 5b1c11b1bc
Fix typo 2022-08-15 22:37:28 -06:00
Bryan Ashby b48d133229
Fix some view offsets that broke with CPR removal
* Fix Quote builder
* Fix File Browser details
* Added 'viewOffsets' ability to loadFromMenuConfig() and friends
* Add MenuModule.getCustomViewsWithFilter() -> Array[] of views
* Add ViewController.applyViewOffsets()
2022-08-15 22:23:14 -06:00
Bryan Ashby 56f03ff847
Moar better logging 2022-08-13 18:13:30 -06:00
Bryan Ashby a48f2b4067
Tidy up more log messages 2022-08-13 11:51:11 -06:00
Bryan Ashby 21d0ad9e59
Change scann/toss watch msg again, use access() over exists() 2022-08-13 10:49:44 -06:00
Bryan Ashby 2e159a0cc6
Don't call paths.join() twice in a row here 2022-08-13 10:36:21 -06:00
Bryan Ashby 1d14b187c2
Fix undefined ref 2022-08-12 19:50:41 -06:00