n9k
829f3f004b
Add licences
2022-03-08 16:41:47 +13:00
n9k
4bab173237
Add Content Security Policy meta tags
2022-03-08 16:13:22 +13:00
n9k
5bd5d7ff6d
Nojs chat form: more accesskeys
2022-03-08 16:13:22 +13:00
n9k
55c16d7214
Nojs chat form: use `:checked` instead of `:target`
...
This works around a bug in mobile Firefox where under certain cirucmstances two
elements inside an iframe both become the iframe's target elment at the same
time, which breaks the CSS logic so instead of exactly one form being displayed,
nothing is displayed.
2022-03-08 16:13:22 +13:00
n9k
f48a27525e
Autofocus chat form textarea
2022-03-08 16:13:22 +13:00
n9k
ade3ca4e9e
Add broadcaster insignia
...
Also surrounded users' name tags in <b> (HTML) tags.
2022-03-08 16:13:21 +13:00
n9k
9ebcf57de5
Nojs uptime counter
2022-03-07 16:36:36 +13:00
n9k
5590fbbdbe
Chat: use breaking space between name and message
2022-03-07 12:56:08 +13:00
n9k
2bb23ab4c4
Rename templates & routes to fit naming scheme
2022-03-07 12:56:08 +13:00
n9k
c103de9849
Add meta viewport tags
2022-03-07 12:56:08 +13:00
n9k
bb3002ffd5
Nojs chat: add fallback meta refresh to redirect url
...
Hacky workaround of weird behaviour in Firefox where on a page whose url has a
fragment/hash/anchor in it, sometimes a urlless meta refresh tag will jump to
the element instead of refreshing the page. Same thing happens if the meta
refresh tag's url component is the same as the page's url.
2022-03-07 12:56:08 +13:00
n9k
46fce9c393
Add nojs 'Reload stream' button
...
The nojs button appears when the stream is online and the user is not watching.
The js button appears when the stream is online and the media element either
(1) is not using the network or (2) fires an error event.
2022-03-07 12:56:08 +13:00
n9k
d4b0594103
Add `?token=...` to every url
2022-03-07 12:56:08 +13:00
n9k
ba90e18e30
Minor changes to the appearance of the users list
...
Made the 'Users in chat' header above the overflow area, so it always stays on
top. Now using `visibility: hidden;` instead of `display: none;` to show/hide
messages/users so that nojs css animations don't reset.
2022-03-07 12:56:08 +13:00
n9k
a970368ee6
Nojs users list: add meta refresh tag & timeout
2022-03-07 12:56:08 +13:00
n9k
84ec253001
Show list of watching/non-watching users with js
2022-03-07 12:56:08 +13:00
n9k
1b26ddb816
Nojs chat: add list of watching/non-watching users
2022-03-07 12:54:35 +13:00
n9k
3583005123
Link to git repos
2022-03-07 12:54:35 +13:00
n9k
3016705783
Keep track of stream viewership (number of viewers)
2022-03-07 12:54:35 +13:00
n9k
da6e0352b8
Beautify nojs chat template, strip jinja whitespace
2022-03-07 12:54:35 +13:00
n9k
8b4d6e8c09
Get stream title from disk
...
By default from `title.txt`. Also replace newlines with spaces when setting the
title in js, for parity with the nojs info iframe.
2022-03-07 12:54:35 +13:00
n9k
8d1f273a99
Show and update stream uptime in js
2022-03-07 12:54:33 +13:00
n9k
672ef10159
Add 3-hexdigit tags for default-name users
2022-02-23 09:21:07 +00:00
n9k
86c4efee6b
Minor non-breaking nojs chat change
...
Moved `data-seq` and `data-token-hash` attributes to `.chat-message` from
`.chat-message__name`.
2022-02-23 15:57:05 +13:00
n9k
93409f8095
Message dates and times in chat
...
Now using `get_message_for_websocket` when sending an individual message.
2022-02-23 15:57:05 +13:00
n9k
cc6ed63764
Segment streaming redux, accurate stream uptime
2022-02-23 15:57:04 +13:00
n9k
0f8676e2f8
Nojs chat form: change default submittable input on Firefox
...
This reorders the elements so the comment submit input comes before the
captcha image input (that reloads the form). If a non-submittable input
is active and you press enter, Firefox chooses the first submittable
input and submits the form as if that input were clicked. Before this,
pressing enter on the captcha answer input would reload the form instead
of submitting the comment.
2022-02-22 16:25:43 +13:00
n9k
b7313eec22
Captchas, require captcha initially, generalize notices to states
2022-02-22 16:25:43 +13:00
n9k
3cc1f633cf
Remove chat's pointless scrollbar when there are no messages
2022-02-22 16:25:43 +13:00
n9k
6109de37ec
Nojs chat: ETag, limit scrollback, timeout notice
...
Limiting scrollback is happening for the js chat too. Also reject long
comments.
2022-02-22 16:25:41 +13:00
n9k
568b1a78db
Make user's default name the placeholder in the nojs chat form
2022-02-18 21:28:44 +13:00
n9k
d848d1532e
Reflect appearance changes with js
2022-02-18 18:17:01 +13:00
n9k
1e6563c4a2
Some more project structure
2022-02-18 14:32:34 +13:00
n9k
43e1a33088
Nojs appearance form, tripcodes, colours
2022-02-18 11:56:51 +13:00
n9k
090981860c
Add css rules for hiding chat
2022-02-17 13:30:09 +13:00
n9k
801f663959
Limit info height to max for viewport in mobile view
...
Remove padding around non-tripcode tripcode in the nojs chat form
2022-02-17 13:30:09 +13:00
n9k
0d583c8617
Add color input to nojs form
2022-02-17 13:30:09 +13:00
n9k
e77862f4ff
Nojs chat, store all user names/colors in js, forget about inactive users
...
Project structure evolving a bit
2022-02-17 13:30:05 +13:00
n9k
797b7dffe1
Remove colliding `accesskey`s
2022-02-15 23:19:11 +13:00
n9k
694c6a4995
Nojs comment submission, notify for rejected comments
...
Fix with-user wrapper (wasn't collecting users)
2022-02-15 23:11:53 +13:00
n9k
885c10b5de
Initial noscript markup for chat form & stream info
...
Use with-user decorator on routes (instead of with-token)
2022-02-14 23:16:09 +13:00
n9k
edba60e3e1
Embed token in markup, fix authorization
2022-02-13 17:46:28 +13:00
n9k
71586420b6
Project structure, chat markup/style, websockets
2022-02-13 17:00:10 +13:00