Commit graph

15846 commits

Author SHA1 Message Date
Ben Rog-Wilhelm
41497958b6 Clean up a few minor code quality issues in the chat system. 2023-09-04 15:28:25 -05:00
Ben Rog-Wilhelm
ae58ca89eb Add debug option to make volunteer debugging easier. 2023-09-04 12:42:33 -05:00
Ben Rog-Wilhelm
310c6c4424
Rig up chat to be suitable for a Doge election. (Hopefully.) (#692)
* Integrate chat from upstream

Substantially borrowed from upstream ref: 13a208ee88e55 (before they
started editing generated artefacts instead of source).

Integrated, including:
  - Remove previously removed features: emoji, hats, and name colors
  - Compensate for lack of unified root template
  - Add React build process to Dockerfile and `bootstrap/init.sh`
  - Preliminary integration of chat websocket workers

For testing, modify `supervisord.conf.dev` to put chat on port 80 and
the site service on some other port. Then visit: http://localhost/chat

Still to do:
  - Access control for specific small-groups (and admins probably):
    Set the values somewhere (site_settings.json? Redis?) and use for
    authorization in `chat_is_allowed`.
  - Proxying only /chat to the websocket workers
  - Chat persistance across restarts: either Redis devops or to DB

* Add nginx server to do appropriate redirection.

* Add necessary columns to User.

* Wire up chat permissions.

* Reload chat on source change.

* Add a better structure for slash commands and add/remove functionality.

* Stop putting up previews of slash commands.

* We require more whitespace.

* Strip DMs out entirely, I currently do not want to deal with them.

* Change "Users Online" to just "Users".

* Clean up a little more DM detritus.

* Save chat history in database.

* Remove unnecessary hefty query to the DB.

* Clean up optimistic messages.

* Initial implementation of notification icon.

* Update readme a little bit.

* Fix notification highlight (mostly).

* Remove chat version number that will never be updated.

* Fix: Errors on logged-out users.

* Add function to nuke the chat state.

* Update DB.

* Add a dedicated deployable docker image.

* Fix: init_build.sh execute bit not set.

* Whoops, screwed up the abort() call.

* Relax chat rate limiter.

* Remove a somewhat silly comment.

* Remove an unnecessary g.db.add().

---------

Co-authored-by: TLSM <duolsm@outlook.com>
2023-09-04 12:42:20 -05:00
Ben Rog-Wilhelm
7032d0680d Fix: Release-mode server trying to reload on code changes. 2023-09-02 18:42:41 -05:00
Ben Rog-Wilhelm
c14fce184c Fix: Usernotes aren't sorted by timestamp. 2023-08-27 13:20:34 -05:00
Ben Rog-Wilhelm
dba6d37456 Fix: Volunteer timestamp field doesn't default properly 2023-08-25 11:21:17 -05:00
Ben Rog-Wilhelm
2f82457f5e Fix: Two spoilers on the same line causes unintended results. 2023-08-25 03:20:34 -05:00
Ben Rog-Wilhelm
cba354098f Compensate for a currently-unsolved bug involving notifications with weird states. 2023-08-25 02:25:29 -05:00
Ben Rog-Wilhelm
a32fe3e90c Add a commented-out line to support specific DB files during dev. 2023-08-25 02:25:07 -05:00
Viet Than
4f8ba42738
🏦 Database Change: convert created utc to datetimez for volunteer_janitor (#679) 2023-08-25 01:00:09 -05:00
Ben Rog-Wilhelm
3187a372fe Add link to the Dev Discord in the Readme. 2023-08-23 18:39:21 -05:00
Ben Rog-Wilhelm
ae85dcce99
Fix: No button for replying to PM's. (#673) 2023-08-09 03:07:04 -05:00
Ben Rog-Wilhelm
2adae47b19 Stop deleting notifications to private messages after reply. 2023-08-09 02:50:55 -05:00
Ben Rog-Wilhelm
7d1ff848d8 Add an environment variable to enable the spammy SQL diagnostics. 2023-08-09 02:35:27 -05:00
justcool393
335f19f561
excise country club (#665) 2023-08-08 23:51:39 -05:00
Ben Rog-Wilhelm
b557812e07 Ensure that Janitor comments are visible; ensure that Janitor comments aren't replies to the user. 2023-08-08 23:49:30 -05:00
Ben Rog-Wilhelm
65c50e4e4a Add new rules to sidebar. 2023-08-08 03:44:39 -05:00
Ben Rog-Wilhelm
e2c602e387 Fix: Username messaging redirects when it shouldn't. 2023-08-06 22:35:11 -05:00
Ben Rog-Wilhelm
8942046a1c Fix: Null reference when sending messages through a non-comment window. 2023-08-06 22:35:11 -05:00
Ben Rog-Wilhelm
bc9c59c92c Fix: Javascript filename typo. 2023-08-06 22:35:11 -05:00
Viet Than
15f387f109
🏦 Database Change: convert created utc to datetimez for votes (#670) 2023-08-02 22:16:29 -05:00
Viet Than
53c78c4536
🏦 Database Change: convert created utc to datetimez for usernotes (#669) 2023-08-02 21:46:48 -05:00
Viet Than
e1075eb722
🏦 Database Change: convert created utc to datetimez for notifications (#668) 2023-08-02 21:35:05 -05:00
Viet Than
34b328583c
🏦 Database Change: convert created utc to datetimez for modactions (#667) 2023-08-02 17:37:38 -05:00
Viet Than
356f7e2f41
🏦 Database Change: convert created utc to datetimez for follows (#666) 2023-08-02 17:36:16 -05:00
justcool393
0138596dca fix remove/approve buttons not working from listing page 2023-07-28 16:18:47 -05:00
Viet Than
eb78ec6169
🏦 Database Change: convert created utc to datetimez for flags (#633) 2023-07-28 05:41:11 -05:00
justcool393
2d6c844693 fix usernote button not working on morecomments and viewmore
fixes #284
ref #283
2023-07-28 05:17:14 -05:00
justcool393
2f0ed92318 Standards recommend we use HTTP headers for our CSP
Let's do that.
2023-07-28 05:16:51 -05:00
justcool393
614d94652c increase length limit for comments from 10k to 50k unfiltered or 500k filtered 2023-07-28 05:16:08 -05:00
justcool393
6e28a4e30c fix signup scripts not being inserted into page 2023-07-28 05:14:56 -05:00
justcool393
a5e658ea42 fix deep comment reply hang
fixes #594
2023-07-28 05:14:27 -05:00
justcool393
4a348b9558 use unobfuscated font files instead of their obfuscated counterparts
not sure why this was ever done in rdrama's codebase, but it was for some reason.
2023-07-28 05:08:56 -05:00
justcool393
8883e06f31 remove some completely unused images 2023-07-28 05:07:48 -05:00
justcool393
0e8856ee46
combine postToast variants (#648) 2023-07-28 05:05:47 -05:00
justcool393
46714fd520
rename truecoins -> truescore (#544) 2023-07-28 04:56:49 -05:00
Viet Than
64880c87fa
🏦 Database Change: convert created utc to timestamp for commentvotes (#616) 2023-07-28 04:50:11 -05:00
justcool393
48d7f4077d using optional chaining seems to break older browsers
https://caniuse.com/mdn-javascript_operators_optional_chaining

it seems to be less supported on mobile devices then I'd expect so
here's a justification for it i guess

reported here: https://www.themotte.org/post/563/meta-a-whole-host-of-minor/122837
2023-07-27 11:22:44 -05:00
justcool393
c6d3cbdba9
user private profile restrictions (#652) 2023-07-27 06:07:04 -05:00
justcool393
56cfed43f9 fix toast z index by... removing the explicit z-index 2023-07-27 06:00:55 -05:00
justcool393
b4b3e03dc7 there was a typo introduced when the new statemod system was introduced. we fix that. 2023-07-24 07:35:24 -05:00
justcool393
a3180fad2a
Make commenting the default (#646) 2023-07-24 06:07:17 -05:00
Ben Rog-Wilhelm
fb530268bf Mute the approve/remove button colors for less visual distraction. 2023-07-22 23:18:09 -05:00
justcool393
a5a344f084
fix duplicate ~new~ indicators being sent (#642)
we also make the JS we're generating about 7% the size it was before.
2023-07-22 19:52:09 -05:00
justcool393
2541737833
remove extra divs (it seems we never needed them in the first place?) (#627) 2023-07-22 19:50:39 -05:00
justcool393
7e68277eb6
Don't show users post content from users they've blocked (#639) 2023-07-22 19:47:44 -05:00
sovejero
4ff52b5ac0 fix header dropdown menu sidescroll 2023-07-22 19:46:13 -05:00
justcool393
672745ee6c
combine 5 different post/comment filter state adjustment routes (#637) 2023-07-22 19:34:08 -05:00
Viet Than
2edaec6933
🏦 Database Change: convert commentflag's created_utc to created_timestampz (#615) 2023-07-20 23:48:19 -05:00
TLSM
c519a1a292 fix: filtered posts on frontpage listing
Desired behavior for new posts when FilterNewPosts setting is enabled
is that people with admin_level >= 2 and post authors should see their
post on the frontpage, while all other unprivileged users shouldn't.

The logic for this is already in `files.helpers.listing` but it was
overridden by a second filter condition which required `state_mod =
VISIBLE`.

`(state_mod = VISIBLE | author_id = v.id) & (state_mod = VISIBLE)`
simplifies in an unfortunate way. The latter condition was also not
conditional on admin_level. Simply removing it fixes the listing
for both post authors and privileged users.
2023-07-20 21:41:29 -05:00