n9k
5a647f2fb7
Allowedness (WIP)
2022-07-03 08:53:02 +00:00
n9k
2c51e99f66
v1.3.6
2022-07-03 08:52:05 +00:00
n9k
2a31d433b9
Merge branch 'dev'
2022-07-03 08:51:38 +00:00
n9k
283c630b82
Optionally force captcha every n messages
...
By default every 40 messages. 0 means never force captcha in this way.
2022-07-03 08:50:35 +00:00
n9k
63e656f65b
v1.3.5
2022-06-29 05:00:38 +00:00
n9k
ad02c7a6d8
Merge branch 'dev'
2022-06-29 05:00:04 +00:00
n9k
fc613737e0
Store version string
2022-06-29 04:58:30 +00:00
n9k
2a15002e7b
Minor: remove module-global `Compress` singleton
2022-06-29 04:57:41 +00:00
n9k
059504d0ad
v1.3.4
2022-06-29 04:32:43 +00:00
n9k
322dc9b361
Merge branch 'dev'
2022-06-29 04:32:35 +00:00
n9k
e10f6793b6
Rename errors.py -> error.py
2022-06-29 04:30:27 +00:00
n9k
492078f6ce
Record users' most recent HTTP headers
2022-06-29 04:30:27 +00:00
n9k
1472ce40ad
Store eyes headers as tuple instead of dict
...
This preserves duplicate keys.
2022-06-29 04:30:24 +00:00
n9k
8d4fe45c74
Control socket: correct `chat help` usage
2022-06-29 02:58:26 +00:00
n9k
179f4390c0
config.toml: change default flood.video.expire_after
2022-06-29 02:50:32 +00:00
n9k
b63bd3096d
JS: set `ws = null;` before creating new websocket
2022-06-29 02:36:37 +00:00
n9k
19b926a3e5
Deverify absent users
2022-06-29 02:35:24 +00:00
n9k
d91b49fb29
Forgot meta viewport in new templates
2022-06-29 02:25:22 +00:00
n9k
4034b6a79e
HACKING.md: use `socat -u` in examples
2022-06-29 02:20:29 +00:00
n9k
dd94bc7233
Minor whitespace
2022-06-29 02:20:29 +00:00
n9k
728181c415
Error pages: minor css change
2022-06-29 02:20:29 +00:00
n9k
084e91f285
v1.3.3
2022-06-25 08:36:05 +00:00
n9k
0dd53569df
Merge commit 'eb25b6d'
2022-06-25 08:35:32 +00:00
n9k
eb25b6d8a8
Nojs users list: fix isignia css
2022-06-25 08:35:05 +00:00
n9k
a2ef88aff0
v1.3.2
2022-06-25 07:46:03 +00:00
n9k
b09c396d1c
Merge branch 'dev'
2022-06-25 07:45:31 +00:00
n9k
b0cae89fad
Error pages: adjust for iframes
2022-06-25 07:45:07 +00:00
n9k
082fbf76d4
Error pages: make target="_top" for <a> elements
2022-06-25 07:45:07 +00:00
n9k
5a5585ff0d
Minor: chain exceptions in renew_eyes
2022-06-25 05:09:10 +00:00
n9k
4a8d8966aa
Websocket: reuse timestamp in handle_inbound_pong
2022-06-25 05:09:07 +00:00
n9k
1ad67fd9cf
Basically nothing
2022-06-25 04:00:57 +00:00
n9k
54b34ce503
Typo: update last.seen when no access captcha
2022-06-25 03:41:11 +00:00
n9k
2344500d8f
Control socket: typo in documentation
2022-06-25 03:34:27 +00:00
n9k
45965fc1db
Forgot some licence headers
2022-06-24 03:31:01 +00:00
n9k
abf7574ea9
v1.3.1
2022-06-23 03:48:13 +00:00
n9k
c6117a6f36
Merge branch 'dev'
2022-06-23 03:47:46 +00:00
n9k
2a16f6a835
Debug: print colorized tag/token_hash/token
2022-06-23 03:36:37 +00:00
n9k
3bb2a81c5a
Bypass initial chat captcha if solved access captcha
2022-06-23 02:53:41 +00:00
n9k
45224e0779
Never gonna give broadcaster a captcha
2022-06-23 02:36:44 +00:00
n9k
77e0183c15
v1.3.0
2022-06-22 08:58:40 +00:00
n9k
4992317ec9
Merge branch 'dev'
2022-06-22 08:58:12 +00:00
n9k
76af3afd05
README.me: mention `access.captcha` config option
2022-06-22 08:58:02 +00:00
n9k
c3237890ad
Rule out edge case where MAX_CAPTCHAS is 0
2022-06-22 08:41:46 +00:00
n9k
95a940a14f
Limit number of stored failures
...
Failures are messages shown on the access captcha screen when the
captcha answer was not accepted for whatever reason.
2022-06-22 08:35:41 +00:00
n9k
6046598ed8
Fix deletion of old messages exceeding threshold
2022-06-22 08:34:16 +00:00
n9k
4a76fb023e
Access captcha: special case for websocket
...
There doesn't seem to be a way to catch a 403 Forbidden error opening a
websocket with JavaScript, so this commit changes the behaviour to this:
open the websocket normally, send one "kick" message, close the
websocket.
2022-06-22 08:11:12 +00:00
n9k
0548065b1d
Error pages: custom descriptions
2022-06-22 08:11:12 +00:00
n9k
35ce606d64
Custom error pages
2022-06-22 08:11:12 +00:00
n9k
9143acafd1
Access captcha
2022-06-22 08:11:12 +00:00
n9k
4c5faf7dba
Use 303 See Other for {POST|GET}->GET redirects
2022-06-22 04:54:02 +00:00