Commit graph

21 commits

Author SHA1 Message Date
gingervitis
8a74af202d
Update chat message visibility for moderation (#524)
* update message viz in db

* create admin endpoint to update message visibility

* convert UpdateMessageVisibility api to take in an array of IDs to change visibility on instead

* Support requesting filtered or unfiltered chat messages

* Handle UPDATE chat events on front and backend for toggling messages

* Return entire message with UPDATE events

* Remove the UPDATE message type

* Revert "Remove the UPDATE message type"

This reverts commit 3a83df3d492f7ecf2bab65e845aa2b0365d3a7f6.

* update -> visibility update

* completely remove messages when they turn hidden on VISIBILITY-UPDATEs, and insert them if they turn visible

* Explicitly set visibility

* Fix multi-id sql updates

* increate scroll buffer a bit so chat scrolls when new large messages come in

* Add automated test around chat moderation

* Add new chat admin APIs to api spec

* Commit updated API documentation

Co-authored-by: Gabe Kangas <gabek@real-ity.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-12-29 13:35:33 -08:00
gingervitis
51f344f8e0
misc issue fixes (#496)
* rename social-icons to prevent adblockers from blocking scripts, fix for #491

* hide viewer count when stream is off, fixes #428

* show a notice in document title of num messages if window is blurred, #426

* display indicator when stream has gone onlnie or offline when window is blurred
2020-12-22 17:43:35 -08:00
gingervitis
0062896b7d
chat fixes and optimizations (#431)
* - format messages on didMount instead of didUpdate. will also prevent bad setSTate loops when message is blank;
- convert message.js to functional comp
- prevent extra rerenders in messages and chat with shouldComponentUpdate checks

* revert chat test

* more concise returns;
2020-12-06 21:01:52 -08:00
Ginger Wong
5fe36f37bd fix for #411 2020-12-03 22:43:31 -08:00
gingervitis
f8d94c2dc2
jump to bottom of list when the DOM observes that a new message node has been added (#369) 2020-11-17 16:59:27 -08:00
Jannik Volkland
146e6d342c Remove avatars from frontend 2020-10-14 13:33:55 +02:00
Gabe Kangas
d7c3991b59
Render and sanitize chat messages server-side. (#237)
* Render and sanitize chat messages server-side. Closes #235

* Render content.md server-side and return it in the client config

* Remove showdown from web project

* Update api spec

* Move example user content file
2020-10-13 16:45:52 -07:00
Gabe Kangas
27a4c8c895
Move all remote dependencies to be local (#220)
* Experiment with javascript bundling

* Experiment with snowpack. Making progress

* Success!  Uses local js modules and assets and no cdns

* Missing local css
2020-10-04 18:43:31 -07:00
Ginger Wong
01f956d043 detect portrait mode on mobile so it doesnt go into two col layout when keyboard is up, (#178) 2020-09-22 17:09:55 -07:00
Ginger Wong
58570be302 disable chat when websocket disconnects, enable it when it connects 2020-09-22 01:38:43 -07:00
Gabe Kangas
5af0afa2a0 Disable chat input when websocket disconnects. Closes #174 2020-09-22 01:22:49 -07:00
gingervitis
661eedc03a
chat fixes v3 or 5 or 123 (#168)
* only consider short-heights when not smallscreen; hide status bar when small screen, but leave shadow;

* fix max char counting bugs with paste, yet be still be able to use modifier keys even when max chars reached

* rmeove 'chat' button; move into textarea

* use image for emoji picker for sizing consitency

* cleanup unused things

* - totally unecessary emoji picker style improvements
- totally necessary doctype added to emoji picker so it shows up more stable-y on mobile views

* more stable layout positioning for chat panel without hacky margins, so that the bottom of the message list will always be on top of the form input, and not behind it at any point.

* hide header on touch screens when screns are small and screen height is short (possibly when keyboard is up), so that there's more visibliity to see messages. this only works on chrome, not ios safari right now, due to the position: fixed of things.

* move char counting to keyup instead

* address message text horiz overflow (#157)

* dont jumpToBottom if user has scrolled about 200px from the bottom (#101)

* scroll to bottom on resize too

* cleanup

* revert test bool

* typo

* re-readjust short-wide case again

* - add focus to input field after emoji is selected, put cursor at end
- instead of smooth scrolling to bottom, just jump there.
2020-09-21 20:11:09 -07:00
Gabe Kangas
6a3f634ef5
Misc web updates (#147)
* Try and clarify max viewer count string

* Shrink title font size on small screens to fit username

* Hide stream info on small screens to buy some space

* Hide emoji button on small screens until we can fix it. For #140

* Make jumping to bottom be a part of the render pass to fix race condition. For #140

* Remove About in info view. We can add it back. Just playing with that since it was missing a space anyway

* address some own mr comments

Co-authored-by: Ginger Wong <omqmail@gmail.com>
2020-09-13 22:02:04 -07:00
Gabe Kangas
0dcd92e9cd Fix chat not coming back after server comes back. Closes #136 2020-09-12 18:46:30 -07:00
Ginger Wong
43e88ee81d fix youtube embed sizing and weird zindexing; fix single col video sizing inconsistency across other browsers 2020-08-27 12:25:46 -07:00
Ginger Wong
b399fbba22 address MR comments 2020-08-26 00:51:40 -07:00
Ginger Wong
6457015406 cleanup 2020-08-24 12:34:36 -07:00
Ginger Wong
2a02b75e42 fix responsive styles 2020-08-24 03:30:42 -07:00
Ginger Wong
0b1f9db4ed update references to owncast site; enable scrolltobottom on new messages 2020-08-23 22:21:42 -07:00
Ginger Wong
940b6df86b use only unpkg/preact + htm consistently for all components 2020-08-23 21:41:02 -07:00
Ginger Wong
4b28ed8f25 reorganize js files 2020-08-23 19:06:58 -07:00
Renamed from webroot/js/chat/chat.js (Browse further)