• last updated 10 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Follow-up for https://cvs.openacs.org/changelog/OpenACS?cs=oacs-5-10%3Agustafn%3A20230313120323

- make sure the anonymous users nsv is created when the chat is instantiated

- make sure xo::cc is available when the anonymous identifier is generated

- handle in the Chat package, that the uid may not be a user, but an IP address

- adapt other chat skins to the new anonymous user logics

  1. … 3 more files in changeset.
Added support for anonymous users in chat class

Previous version of the chat class required a login for participating

in the chat. The new version also supports a mixed mode, with

authenticated and non-authenticated users can participate. For

unauthenticated users, the disambiguation is performed over the peer

IP address, similar to the xotcl-request-monitor. Instead of the raw

IP address, an artificial username is displayed for such users (like

e.g. userXXX).

For unauthenticated users, some differences apply:

- one cannot provide a link to the private page

- unauthenticated users cannot access the user-portrait

of authenticated users.

The GUI changes are only made on chat-skins/chat-classic.js, not on

the other skins.

  1. … 1 more file in changeset.
Do not add additional style around the chat includelet, regardless if this is a "chat_room" or a "chat"

  1. … 1 more file in changeset.
Fixes and adjustments for the chat-minimal chat skin:

- show the fullscreen button, very useful on devices with little screen real estate

- display on the same line, in respective order, avatar (when enabled), user name and link, timestamp and message

- wrap the message over multiple lines when it would not fit

Improve responsiveness at smaller resolutions for the fullscreen button

Add new chat skin 'minimal'.

Specially designed to be embedded in other pages, it provides a clean look without user list, full screen button, or anything else aside from the avatar, timestamp, user name and message.

  1. … 1 more file in changeset.
file chat-minimal.css was initially added on branch oacs-5-10.

file chat-minimal.js was initially added on branch oacs-5-10.

Centralize logic to retrieve out own user_id, then use it also when rendering the users list

  1. … 1 more file in changeset.
Chat Redesign: clicking in your own name points to '/pvt/home' instead of '/shared/community-member'

Chat Redesign: enable/disable avatar pictures by room, using the new attribute 'avatar_p', instead of by package instance, using the 'ShowAvatar' parameter.

  1. … 18 more files in changeset.
Chat Redesign: move common functions used in the chat skins to 'chat-common.js', and rename the skin javascript files.

  1. … 2 more files in changeset.
file chat-bubbles.js was initially added on branch oacs-5-10.

file chat-classic.js was initially added on branch oacs-5-10.

Improve the situation on browsers such as Firefox, where correct xml is somehow enforced when one does not specify the responseType

One should also find a solution for the persistent subscription, as it is trickier

  1. … 2 more files in changeset.
Chat Redesign:

  1. … 3 more files in changeset.
Chat Redesign: add float clear after user block in user list (also in 'classic' skin)

Chat Redesign: add float clear after user block in user list

Chat Redesign:

+ Add specific container for the chat includelet (xowiki-chat-includelet).

+ Set a sensible default for the 'xowiki-chat-includelet' size.

+ Move the 'my-user-id' hidden element in the chat adp to the chat procs.

+ Rename 'my-user-id' element to 'xowiki-my-user-id'.

+ Get the ChatSkin parameter inside the login proc.

+ Include the skin parameter in the chat includelet.

  1. … 5 more files in changeset.
Chat Redesign:

+ Skin support.

+ New 'ChatSkin' instance parameter, with currently two possible values: 'classic' and 'bubbles'.

+ Skins are located in the new packages/xowiki/www/resources/chat-skins/ directory.

+ New 'bubbles' skin, default for the chat package.

+ Old skin renamed to 'classic', default for the xowiki includelet.

+ New skins can be created by just adding the css and js files in the skins directory, and naming them accordingly. For example, being '$skin' the name of the new skin, the files should be named chat-$skin-common.js and chat-$skin.css.

+ New '-skin' parameter to the Chat login proc, containing the name of the skin (i.e. 'classic' or 'bubbles').

+ Bump version number.

    • -0
    • +270
    ./chat-bubbles-common.js
    • -0
    • +371
    ./chat-bubbles.css
    • -0
    • +211
    ./chat-classic-common.js
    • -0
    • +251
    ./chat-classic.css
  1. … 6 more files in changeset.