stuebinm
84ac81435e
Intended for KontraIAA; requirements were that it should be a simple and non-confusing as possible. I tried both KiwiIRC and thelounge, and found both horrible to package (a fact not helped by the somewhat opaque structure of nixpkgs.nodePackages, which does contain a version of thelounge but will apparently ignore overrides of the src attribute). Instead, this now contains a very hacky version of thelounge, which merely takes the already-built version from nixpkgs and glues some extra css to it which hides potentially confusing fields. Things hidden on the "connect" screen: - the "name" field (since thelounge offers "nick" "name" and "realname" by default, which seems too much for something embedded on a website) - the "I have a password" checkbox Things hidden on the general view: - the button to open the side panel (the panel itself is not hidden, and will appear by itself on wider layouts), so that users will only see that one channel - the "channel options" menu (which includes a "leave channel" option which would effectively break the webchat) Things not addressed: - thelounge has autocompletion for /join /leave, etc. Do we want to disable that as well? - It would probably useful to suppress all the "x joined the channel" messages. Thelounge supports this, but apparently doesn't support setting it as default? Misc: - for now, users will be connected to #thelounge on libera.chat, which appears to be okay with being used as an experimental channel - I allowed prefetching link previews, but only on the server's side (i.e. users' browsers won't fetch content from arbitrary sites) - not yet tested on hainich, but should work (tested in a NixOS container) - currently assumes a "webchat.voc.hacc.space" domain (I think we had a voc domain? but I forgot where it is …)
24 lines
456 B
CSS
24 lines
456 B
CSS
|
|
/* Hides extra fields on connect screen */
|
|
.connect-row:nth-of-type(4) {
|
|
display: none !important;
|
|
}
|
|
|
|
.connect-row:nth-of-type(2) {
|
|
display: none !important;
|
|
}
|
|
|
|
.connect-row:nth-of-type(5) {
|
|
display: none !important;
|
|
}
|
|
|
|
|
|
/* Hides side panel button */
|
|
.header > button:first-child {
|
|
display: none !important;
|
|
}
|
|
|
|
/* Hides channel options button (includes leave option) */
|
|
.header > button:nth-last-child(2) {
|
|
display: none !important;
|
|
}
|