antoniop in OpenACS

Converge styling of chat in a single css file for both xowiki and chat packages

This might fork in the future, but there is no need atm

    • -221
    • +0
    /openacs-4/packages/chat/www/resources/chat.css
Switch to a non-nsv approach to determine the right chat class

    • -3
    • +4
    /openacs-4/packages/xowiki/www/chat.tcl
Unclutter the code by putting mode detection in a separate proc

    • -41
    • +47
    /openacs-4/packages/xowiki/tcl/chat-procs.tcl
Add leftover file

    • -0
    • +47
    /openacs-4/packages/xowiki/www/chat.tcl
Chat reform:

- reduce code duplication by determining the proper chat class dynamically and storing it in an nsv

- move static content in the resources path. Serving them is now independent from the mounted xowiki path

- get rid of the ajax url path

    • -48
    • +0
    /openacs-4/packages/chat/www/ajax/chat.tcl
    • -17
    • +22
    /openacs-4/packages/xowiki/tcl/chat-procs.tcl
    • -40
    • +0
    /openacs-4/packages/xowiki/www/ajax/chat.js
    • -42
    • +0
    /openacs-4/packages/xowiki/www/ajax/chat.tcl
    • -0
    • +205
    /openacs-4/packages/xowiki/www/resources/chat-common.js
    • -0
    • +40
    /openacs-4/packages/xowiki/www/resources/chat.js
Allow to make other (non .adp) kinds of resources "theme aware" and use this to provide a theme mapping to the /resources/ URL pattern, then use this new capability to allow the override of css in the chat implementations

Give xowiki chat also some kind of nice skin and centralize css retrieval

TODO: something smarter can be done in order to retrieve the proper css, based e.g. on theme, chat skin (to be implemented) etc. To be discussed is some way to resolve resources based on the theme.

    • -0
    • +202
    /openacs-4/packages/xowiki/www/resources/chat.css
New chat_room includelet, behaving as the existing chat one, but plugged with extra chat package's feature (transcript management...)

To avoid package_id to be overridden, we force it always to the one of the current chat

Move chat machinery from xotcl-core to xowiki

Rationale: this feature makes little sense without the front-end xowiki provides and makes chat implementation harder to understand, as components are scattered in different packages.

    • -3
    • +350
    /openacs-4/packages/xowiki/tcl/chat-procs.tcl
Add package_id to the parameters for the already-available chat includelet

Improve error handling idioms and handle additional error cases where the client has just disconnected

Try to trap additional disconnection-related errors

Put the puts operation in the try catch as well

Specify the timeout value on the wait command as well and avoid unneeded conversion

Fix typo in comment

Use finer grained error handling to intercept disconnection from client

Replace deprecated proc template::util::leadingPad with ad_pad

Treat failure to flush the channel as just a warning, because this usually just means client (e.g. browser in a chat) closed the connection

Tolerate wrong locales from browsers by assuming our default one

Fix installer by uniforming columns returned by the two query variants

Create a full subsite instead of just a node, or the context bar will ignore it, then consider localization in the test

Consider localization when testing the context bar

Fix list expression

Use the new utility to refresh the chat whenever one lands here from the browser history

Add new utility to trigger a browser refresh when we reach a page by the browser's history

Useful e.g. for those pages implementing some server push interaction, where browser might have 'missed out' events while on another page

When transcripting a message, use the provided user_id when available

This fixes auto logout messages being written down as from unregistered visitor in the transcript

Specialize the way chat::Chat class retrieves the package_id: use the context_id of the chat room (if this is a valid chat room)

This will allow to embed a chat::Chat instance in a xowiki page pinting to an existing chat room and let it use the chat package specific features to e.g. keep transcripts of a conversation

    • -1
    • +2
    /openacs-4/packages/chat/tcl/chat-procs.tcl
Fade out obsolete code

    • -4
    • +5
    /openacs-4/packages/chat/tcl/chat-init.tcl
    • -219
    • +220
    /openacs-4/packages/chat/tcl/chat-procs.tcl
Quote the backslash as well...

Italian message keys for cookie-consent package