
* 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>
24 lines
No EOL
691 B
HTML
24 lines
No EOL
691 B
HTML
{% extends "default.html" %}
|
|
{% block pagetype %}chat{% endblock %}
|
|
|
|
{% block fixedMobileBarJS %}
|
|
<link rel="stylesheet" href="{{'css/chat_done.css' | asset}}">
|
|
{% endblock %}
|
|
|
|
{% block Banner %}{% endblock %}
|
|
{% block mobilenavbar %}{% endblock %}
|
|
|
|
{% block defaultContainer %}
|
|
{% include "component/modal/expanded_image.html" %}
|
|
<div
|
|
id="root"
|
|
data-id="{{v.id}}"
|
|
data-username="{{v.username}}"
|
|
data-admin="{{v.admin_level >= PERMS['CHAT_MODERATION']}}"
|
|
data-sitename="{{SITE_ID}}"
|
|
data-themecolor="{{v.themecolor}}"
|
|
data-avatar="{{v.profile_url}}">
|
|
</div>
|
|
<script>window.global = window</script>
|
|
<script defer src="{{'js/chat_done.js' | asset}}"></script>
|
|
{% endblock %} |