Synchronet merge requestshttps://gitlab.synchro.net/main/sbbs/-/merge_requests2020-08-28T21:41:34Zhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/3Add .gitattributes and .vscode/settings for easier editing/committing.2020-08-28T21:41:34ZMichael J. RyanAdd .gitattributes and .vscode/settings for easier editing/committing.The .gitattributes should preserve the appropriate line endings for legacy files and the vscode settings should allow for the appropriate code page when viewing/editing files in the project with VS Code.The .gitattributes should preserve the appropriate line endings for legacy files and the vscode settings should allow for the appropriate code page when viewing/editing files in the project with VS Code.https://gitlab.synchro.net/main/sbbs/-/merge_requests/17Updates around NNTP service2020-10-30T01:16:54ZMichael J. RyanUpdates around NNTP serviceUpdates around NNTP service
- Add polyfills from load/core-js polyfills (missing modern syntax options).
- Update service to only use/return newsgroup names that match system groups.
- Update nntp service to use modern/functional syntax...Updates around NNTP service
- Add polyfills from load/core-js polyfills (missing modern syntax options).
- Update service to only use/return newsgroup names that match system groups.
- Update nntp service to use modern/functional syntax.
- formatted with prettier.Rob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/20WIP: External Programs/Menu Enhancements2020-11-06T04:02:15ZphareousWIP: External Programs/Menu EnhancementsStill in progress but wanted to get some feedback from @rswindell and @echicken. I can still post in programming on DoveNet if you'd like, but I thought this WIP merge request would be a great way to see the code, comment on it, etc.
T...Still in progress but wanted to get some feedback from @rswindell and @echicken. I can still post in programming on DoveNet if you'd like, but I thought this WIP merge request would be a great way to see the code, comment on it, etc.
This is a rewrite of xtrn_sec.js and related files that optionally allows setting custom external program menus. My original need for this is to allow many levels of external section menus such that I can categorize the games by genre, author, system type, league vs local, etc. The custom menus can be any number of levels and the items within the menus can point to other custom menus, to external program sections, or external programs (mix and match even). There are a number of sorting, formatting, etc. options which allows customization of the menus and highlighting of specific items, etc. The custom menus allow custom input keys as well. There are also some small features like the ability to ask for confirmation before entering a door (good for after they read the intro *.ANS file).
I've tried to make this an opt-in feature so unless the user creates the json config file, the system should act like it did before, with the exception of webv4 which presents doors in 2 hierarchy instead of every door on the main index (so it more mimics the forum web nav)
The files I have done so far are:
- xtrn_sec.js - most of the logic for presenting the terminal menus
- xtrnmenulib.js - library
- logon.js - makes it use all the normal xtrn_sec.js options so for example, logging into a door from web interface will support pausing, displaying *.ANS files, etc. now
- xtrnmenucfg.js - UIFC editor to create the custom menus
- 003-games.xjs - updated webv4 module to support the custom menus
- xtrnmenucfg.txt - start of readme/documentation/wiki
To do:
- Update lbshell.js light shell to support custom menus
- Look into a way of preserving the selected menu item/screen position when copying/pasting items, instead of throwing cursor to top
- Possibly add an option to the editor to import external programs into a custom menu. This would allow you to make a duplicate of the normal section menu and be able to customize it 100%...at the expense of no longer automatically making the list (so you would have to manually add/remove games from the menu in the future). Another possibility is to allow creating an overlay of config/item changes that would be merged/applied over the default section program list...but this would be a bit more complicated
- Add "cost" support to the webv4 and lightshell (not sure if anyone would even need this...)
- Possibly add an alternative to the *.ANS info/intro screen that would use templating and an INI file to inject per-game data into the screen
PS This is my first major code in javascript so if there are better ways to do something, please let me knowhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/21WIP:Add pre/post loadable modules for external programs, consolidate launchin...2020-11-06T04:01:58ZphareousWIP:Add pre/post loadable modules for external programs, consolidate launching door featuresAdd loadable modules for pre/post external program execution. This will allow all shells/web/etc. to present all features of loading a door (ANSI file, pause, clear, fonts, etc.)Add loadable modules for pre/post external program execution. This will allow all shells/web/etc. to present all features of loading a door (ANSI file, pause, clear, fonts, etc.)Rob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/23WIP:External Program Pre/Post Mod2020-11-07T06:25:57ZphareousWIP:External Program Pre/Post ModCreating new branch/merge request as the other was getting a bit messyCreating new branch/merge request as the other was getting a bit messyRob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/39WIP:fix r being injected into "intercept i/o" under dosemu2020-12-08T03:18:42ZphareousWIP:fix r being injected into "intercept i/o" under dosemuIf you set intercept i/o on any dosemu program, a "r" gets sent to the program on execution
Example scenarios are dos-based external editors, and any sysop reset/config/util entries added for dosemu doorsIf you set intercept i/o on any dosemu program, a "r" gets sent to the program on execution
Example scenarios are dos-based external editors, and any sysop reset/config/util entries added for dosemu doorshttps://gitlab.synchro.net/main/sbbs/-/merge_requests/50Mlong/ddmsgcolor2020-12-01T20:30:47ZphareousMlong/ddmsgcolorEric OulashinEric Oulashinhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/51fix left/right colors not being customizable on message list lightbar2020-12-13T00:30:04Zphareousfix left/right colors not being customizable on message list lightbarEric OulashinEric Oulashinhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/80Draft: Resolve "When using SlyEdit CTRL-Space on a MAC sends a 0x0 NUL charac...2021-01-24T05:55:54ZEric OulashinDraft: Resolve "When using SlyEdit CTRL-Space on a MAC sends a 0x0 NUL character causing execution in the timeout logic"Closes #206Closes #206https://gitlab.synchro.net/main/sbbs/-/merge_requests/81Draft: Resolve "When using SlyEdit CTRL-Space on a MAC sends a 0x0 NUL charac...2021-01-24T06:48:29ZEric OulashinDraft: Resolve "When using SlyEdit CTRL-Space on a MAC sends a 0x0 NUL character causing execution in the timeout logic"Closes #206Closes #206https://gitlab.synchro.net/main/sbbs/-/merge_requests/84Update letsyncrypt.js2021-01-25T22:16:37ZMichael J. RyanUpdate letsyncrypt.jsMakes the hostname and email address used with registration configurable to something other than system.inet_addr. In case system has a different host name than the internet email domain.Makes the hostname and email address used with registration configurable to something other than system.inet_addr. In case system has a different host name than the internet email domain.DeucеDeucеhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/91Make backspace work on typeahead, treat del and backspace as equivalent2021-02-03T03:49:48ZphareousMake backspace work on typeahead, treat del and backspace as equivalentechickenechickenhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/96WIP:fix error when user has no favorites2021-02-05T05:50:59ZphareousWIP:fix error when user has no favoritesRob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/103WIP:Importcfg2021-02-07T18:45:04ZphareousWIP:Importcfgfor your reviewfor your reviewRob SwindellRob Swindellhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/113i should not have overrode button styles on dark mode, it keeps from using...2023-11-20T01:24:59Zphareousi should not have overrode button styles on dark mode, it keeps from using...i should not have overrode button styles on dark mode, it keeps from using btn-warning, etc. classesi should not have overrode button styles on dark mode, it keeps from using btn-warning, etc. classesechickenechickenhttps://gitlab.synchro.net/main/sbbs/-/merge_requests/114Revert "Merge branch 'master' of https://gitlab.synchro.net/sbbs/sbbs"2021-02-28T02:36:02Zm jRevert "Merge branch 'master' of https://gitlab.synchro.net/sbbs/sbbs"This reverts commit 9d6b6c2f0e5efab1cf71ef6ebfd1f805126e3a2eThis reverts commit 9d6b6c2f0e5efab1cf71ef6ebfd1f805126e3a2ehttps://gitlab.synchro.net/main/sbbs/-/merge_requests/115Update Polyfills.2021-04-02T19:26:13ZMichael J. RyanUpdate Polyfills.- Update load/array.js to include flat and flatmap methods
- Add load/object.js to include various Object methods
- Added .vscode/settings.json to avoid mangling existing formatting- Update load/array.js to include flat and flatmap methods
- Add load/object.js to include various Object methods
- Added .vscode/settings.json to avoid mangling existing formattinghttps://gitlab.synchro.net/main/sbbs/-/merge_requests/117Implement support for event style programming2021-03-31T05:06:49ZDeucеImplement support for event style programmingIf js.keepGoing is set to true, a script will not terminate when it finishes. Instead, it will enter an event loop running installed callbacks when configured events occurs. Currently, events can be added with the following new methods...If js.keepGoing is set to true, a script will not terminate when it finishes. Instead, it will enter an event loop running installed callbacks when configured events occurs. Currently, events can be added with the following new methods:
* js.setInterval(callback_function, period_in_ms);
* js.setTimeout(callback_function, timeout_in_ms);
* SocketInstance.on('read' | 'write', callback_function);
* SocketInstance.once('read' | 'write', callback_function);
* SocketInstance.connect(host, port, callback_function);
Aside from Socket.connect(), these functions return a value that can be passed to a matching clear function:
* js.clearInterval(id);
* js.clearTimeout(id);
* SocketInstance.clearOn('read' | 'write', id);
* SocketInstance.clearOnce('read' | 'write', id);https://gitlab.synchro.net/main/sbbs/-/merge_requests/124Initial IRCd 1.9 changes2021-04-05T06:56:07ZGhost UserInitial IRCd 1.9 changesFirst cleanup of the code for IRCd 1.9First cleanup of the code for IRCd 1.9https://gitlab.synchro.net/main/sbbs/-/merge_requests/129Better handling of ESC key input if mouse support is not enabled2021-12-14T03:27:32ZEric OulashinBetter handling of ESC key input if mouse support is not enabledIf mouseEnabled is default, now uses console.inkey()/getkey() directly rather than mouse_getkey(). This way, if mouse support is not enabled, inputting the ESC key can be handled better.If mouseEnabled is default, now uses console.inkey()/getkey() directly rather than mouse_getkey(). This way, if mouse support is not enabled, inputting the ESC key can be handled better.