Index: openacs-4/packages/chat/chat.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/chat.info,v
diff -u -N -r1.22.2.1 -r1.22.2.2
--- openacs-4/packages/chat/chat.info 14 Feb 2019 16:15:01 -0000 1.22.2.1
+++ openacs-4/packages/chat/chat.info 26 Feb 2019 18:06:43 -0000 1.22.2.2
@@ -9,7 +9,7 @@
f
t
-
+
Peter Alberer
Server based chat with an html and ajax client.
2019-01-18
@@ -18,7 +18,7 @@
Adapted by Tekne 2006/03/01 to replace JAVA server with AJAX; make use of generalized chat class from xotcl-core.
0
-
+
@@ -28,7 +28,6 @@
-
Index: openacs-4/packages/chat/catalog/chat.en_US.ISO-8859-1.xml
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/catalog/chat.en_US.ISO-8859-1.xml,v
diff -u -N -r1.9 -r1.9.2.1
--- openacs-4/packages/chat/catalog/chat.en_US.ISO-8859-1.xml 25 Jun 2018 14:46:38 -0000 1.9
+++ openacs-4/packages/chat/catalog/chat.en_US.ISO-8859-1.xml 26 Feb 2019 18:06:43 -0000 1.9.2.1
@@ -112,6 +112,8 @@
rooms
Send/Refresh
Sending message...
+ Display user avatars
+ Show avatars (user profile pictures) in the chat.
There are no rooms available
to
Transcript
Index: openacs-4/packages/chat/catalog/chat.es_ES.ISO-8859-1.xml
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/catalog/chat.es_ES.ISO-8859-1.xml,v
diff -u -N -r1.8 -r1.8.2.1
--- openacs-4/packages/chat/catalog/chat.es_ES.ISO-8859-1.xml 7 Aug 2017 23:48:05 -0000 1.8
+++ openacs-4/packages/chat/catalog/chat.es_ES.ISO-8859-1.xml 26 Feb 2019 18:06:43 -0000 1.8.2.1
@@ -111,6 +111,8 @@
salas
Enviar/Actualizar
Enviando mensaje...
+ Mostrar avatars
+ Mostrar avatars (im�genes de perfil de usuario) en el chat.
No hay salas disponibles
a
Transcripci�n
Index: openacs-4/packages/chat/sql/oracle/chat-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/sql/oracle/chat-create.sql,v
diff -u -N -r1.5 -r1.5.2.1
--- openacs-4/packages/chat/sql/oracle/chat-create.sql 7 Aug 2017 23:48:07 -0000 1.5
+++ openacs-4/packages/chat/sql/oracle/chat-create.sql 26 Feb 2019 18:06:43 -0000 1.5.2.1
@@ -33,6 +33,8 @@
acs_privilege.create_privilege('chat_read', 'View chat message');
acs_privilege.create_privilege('chat_write', 'Write chat message');
+ acs_privilege.create_privilege('chat_avatar_allow', 'Enable/disable user avatars in a chat room');
+
-- Set of privileges for regular chat user.
acs_privilege.create_privilege('chat_user', 'Regular chat user');
acs_privilege.add_child('chat_user', 'chat_read');
@@ -60,6 +62,7 @@
acs_privilege.add_child('chat_room_admin', 'chat_moderator_grant');
acs_privilege.add_child('chat_room_admin', 'chat_moderator_revoke');
acs_privilege.add_child('chat_room_admin', 'chat_moderator');
+ acs_privilege.add_child('chat_room_admin', 'chat_avatar_allow');
-- Site wite admin also administrator of the chat room.
acs_privilege.add_child('admin', 'chat_room_admin');
@@ -120,6 +123,14 @@
pretty_plural => 'Archived',
datatype => 'boolean'
);
+
+ attr_id := acs_attribute.create_attribute (
+ object_type => 'chat_room',
+ attribute_name => 'avatar_p',
+ pretty_name => 'Avatar',
+ pretty_plural => 'Avatars',
+ datatype => 'boolean'
+ );
end;
/
show errors;
@@ -155,7 +166,11 @@
logout_messages_p char(1) default 't'
constraint chat_rooms_logout_messages_ck
- check (logout_messages_p in ('t', 'f'))
+ check (logout_messages_p in ('t', 'f')),
+
+ avatar_p char(1) default 't'
+ constraint chat_rooms_avatar_p_ck
+ check (avatar_p in ('t', 'f'))
);
declare
@@ -254,6 +269,7 @@
auto_transcript_p in chat_rooms.auto_transcript_p%TYPE default 'f',
login_messages_p in chat_rooms.login_messages_p%TYPE default 't',
logout_messages_p in chat_rooms.logout_messages_p%TYPE default 't',
+ avatar_p in chat_rooms.avatar_p%TYPE default 't',
context_id in acs_objects.context_id%TYPE default null,
creation_date in acs_objects.creation_date%TYPE default sysdate,
creation_user in acs_objects.creation_user%TYPE default null,
@@ -273,7 +289,8 @@
active_p in chat_rooms.active_p%TYPE,
archive_p in chat_rooms.archive_p%TYPE,
auto_flush_p in chat_rooms.auto_flush_p%TYPE,
- auto_transcript_p in chat_rooms.auto_transcript_p%TYPE
+ auto_transcript_p in chat_rooms.auto_transcript_p%TYPE,
+ avatar_p in chat_rooms.avatar_p%TYPE default 't'
);
function name (
@@ -352,6 +369,7 @@
auto_transcript_p in chat_rooms.auto_transcript_p%TYPE default 'f',
login_messages_p in chat_rooms.login_messages_p%TYPE default 't',
logout_messages_p in chat_rooms.logout_messages_p%TYPE default 't',
+ avatar_p in chat_rooms.avatar_p%TYPE default 't',
context_id in acs_objects.context_id%TYPE default null,
creation_date in acs_objects.creation_date%TYPE default sysdate,
creation_user in acs_objects.creation_user%TYPE default null,
@@ -379,7 +397,8 @@
auto_flush_p,
auto_transcript_p,
login_messages_p,
- logout_messages_p)
+ logout_messages_p,
+ avatar_p)
values (
v_room_id,
chat_room.new.pretty_name,
@@ -390,7 +409,8 @@
chat_room.new.auto_flush_p,
chat_room.new.auto_transcript_p,
chat_room.new.login_messages_p,
- chat_room.new.logout_messages_p);
+ chat_room.new.logout_messages_p,
+ chat_room.new.avatar_p);
return v_room_id;
end new;
@@ -420,7 +440,8 @@
active_p in chat_rooms.active_p%TYPE,
archive_p in chat_rooms.archive_p%TYPE,
auto_flush_p in chat_rooms.auto_flush_p%TYPE,
- auto_transcript_p in chat_rooms.auto_transcript_p%TYPE
+ auto_transcript_p in chat_rooms.auto_transcript_p%TYPE,
+ avatar_p in chat_rooms.avatar_p%TYPE default 't'
)
is
begin
@@ -431,7 +452,8 @@
active_p = chat_room.edit.active_p,
archive_p = chat_room.edit.archive_p,
auto_flush_p = chat_room.edit.auto_flush_p,
- auto_transcript_p = chat_room.edit.auto_transcript_p
+ auto_transcript_p = chat_room.edit.auto_transcript_p,
+ avatar_p = chat_room.edit.avatar_p
where
room_id = chat_room.edit.room_id;
end edit;
@@ -591,13 +613,3 @@
end chat_transcript;
/
show errors
-
-
-
-
-
-
-
-
-
-
Index: openacs-4/packages/chat/sql/oracle/chat-drop.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/sql/oracle/chat-drop.sql,v
diff -u -N -r1.3 -r1.3.8.1
--- openacs-4/packages/chat/sql/oracle/chat-drop.sql 19 Nov 2007 01:14:15 -0000 1.3
+++ openacs-4/packages/chat/sql/oracle/chat-drop.sql 26 Feb 2019 18:06:43 -0000 1.3.8.1
@@ -53,6 +53,7 @@
acs_privilege.remove_child('chat_room_admin', 'chat_moderator_grant');
acs_privilege.remove_child('chat_room_admin', 'chat_moderator_revoke');
acs_privilege.remove_child('chat_room_admin', 'chat_moderator');
+ acs_privilege.remove_child('chat_room_admin', 'chat_avatar_allow');
acs_privilege.remove_child('admin', 'chat_room_admin');
@@ -77,6 +78,7 @@
acs_privilege.drop_privilege('chat_room_admin');
acs_privilege.drop_privilege('chat_moderator');
acs_privilege.drop_privilege('chat_user');
+ acs_privilege.drop_privilege('chat_avatar_allow');
end;
/
show errors
Index: openacs-4/packages/chat/sql/oracle/upgrade/upgrade-5.0.1d5-5.0.1d6.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/sql/oracle/upgrade/Attic/upgrade-5.0.1d5-5.0.1d6.sql,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/chat/sql/oracle/upgrade/upgrade-5.0.1d5-5.0.1d6.sql 26 Feb 2019 18:06:43 -0000 1.1.2.1
@@ -0,0 +1,26 @@
+---
+--- Upgrade script from 5.0.1d5 to 5.0.1d6
+---
+--- Allow control over the avatar display in chat rooms
+---
+--- @author Hector Romojaro (hector.romojaro@gmail.com)
+--- @creation-date 26/02/2019
+--- @cvs-id $Id: upgrade-5.0.1d5-5.0.1d6.sql,v 1.1.2.1 2019/02/26 18:06:43 hectorr Exp $
+---
+
+begin;
+
+ alter table chat_rooms add column avatar_p char(1) default 't' constraint chat_rooms_avatar_p_ck check (avatar_p in ('t', 'f'));
+
+ acs_privilege.create_privilege('chat_avatar_allow', 'Enable/disable user avatars in a chat room');
+ acs_privilege.add_child('chat_room_admin', 'chat_avatar_allow');
+
+ acs_attribute.create_attribute (
+ object_type => 'chat_room',
+ attribute_name => 'avatar_p',
+ pretty_name => 'Avatar',
+ pretty_plural => 'Avatars',
+ datatype => 'boolean'
+ );
+
+end;
Index: openacs-4/packages/chat/sql/postgresql/chat-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/sql/postgresql/chat-create.sql,v
diff -u -N -r1.10 -r1.10.2.1
--- openacs-4/packages/chat/sql/postgresql/chat-create.sql 12 Jul 2018 12:43:09 -0000 1.10
+++ openacs-4/packages/chat/sql/postgresql/chat-create.sql 26 Feb 2019 18:06:43 -0000 1.10.2.1
@@ -32,6 +32,8 @@
select acs_privilege__create_privilege('chat_read', 'View chat message', null);
select acs_privilege__create_privilege('chat_write', 'Write chat message', null);
+select acs_privilege__create_privilege('chat_avatar_allow', 'Enable/disable user avatars in a chat room', null);
+
-- Set of privileges for regular chat user.
select acs_privilege__create_privilege('chat_user', 'Regular chat user', null);
select acs_privilege__add_child('chat_user', 'chat_read');
@@ -59,6 +61,7 @@
select acs_privilege__add_child('chat_room_admin', 'chat_moderator_grant');
select acs_privilege__add_child('chat_room_admin', 'chat_moderator_revoke');
select acs_privilege__add_child('chat_room_admin', 'chat_moderator');
+select acs_privilege__add_child('chat_room_admin', 'chat_avatar_allow');
-- Site wite admin also administrator of the chat room.
select acs_privilege__add_child('admin', 'chat_room_admin');
@@ -72,19 +75,18 @@
PERFORM
acs_object_type__create_type(
- ''chat_room'', -- object_type
- ''Chat Room'', -- pretty_name
- ''Chat Rooms'', -- pretty_plural
- ''acs_object'', -- supertype
- ''chat_rooms'', -- table_name
- ''room_id'', -- id_column
- null, -- package_name
- ''f'', -- abstract_p
- null, -- type_extension_table
- null -- name_method
+ ''chat_room'', -- object_type
+ ''Chat Room'', -- pretty_name
+ ''Chat Rooms'', -- pretty_plural
+ ''acs_object'', -- supertype
+ ''chat_rooms'', -- table_name
+ ''room_id'', -- id_column
+ null, -- package_name
+ ''f'', -- abstract_p
+ null, -- type_extension_table
+ null -- name_method
);
-
attr_id := acs_attribute__create_attribute (
''chat_room'', -- object_type
''pretty_name'', -- attribute_name
@@ -101,8 +103,6 @@
''f'' -- static_p (default)
);
-
-
attr_id := acs_attribute__create_attribute (
''chat_room'', -- object_type
''description'', -- attribute_name
@@ -119,7 +119,6 @@
''f'' -- static_p (default)
);
-
attr_id := acs_attribute__create_attribute (
''chat_room'', -- object_type
''moderated_p'', -- attribute_name
@@ -136,7 +135,6 @@
''f'' -- static_p (default)
);
-
attr_id := acs_attribute__create_attribute (
''chat_room'', -- object_type
''active_p'', -- attribute_name
@@ -153,7 +151,6 @@
''f'' -- static_p (default)
);
-
attr_id := acs_attribute__create_attribute (
''chat_room'', -- object_type
''archive_p'', -- attribute_name
@@ -170,8 +167,23 @@
''f'' -- static_p (default)
);
+ attr_id := acs_attribute__create_attribute (
+ ''chat_room'', -- object_type
+ ''avatar_p'', -- attribute_name
+ ''boolean'', -- datatype
+ ''Avatar'', -- pretty_name
+ ''Avatars'', -- pretty_plural
+ null, -- table_name (default)
+ null, -- column_name (default)
+ ''t'', -- default_value (default)
+ 1, -- min_n_values (default)
+ 1, -- max_n_values (default)
+ null, -- sort_order (default)
+ ''type_specific'', -- storage (default)
+ ''f'' -- static_p (default)
+ );
- return 0;
+ return 0;
end;'
@@ -213,7 +225,9 @@
-- set how much in the past users will see when entering a chat in
-- seconds this is needed to specify, for example, that users will
-- see only the previous 10 minutes of the conversation
- messages_time_window integer default 600
+ messages_time_window integer default 600,
+ -- if set, display user avatars in the chat room
+ avatar_p boolean default 't'
);
@@ -237,7 +251,6 @@
null -- name_method
);
-
attr_id := acs_attribute__create_attribute (
''chat_transcript'', -- object_type
''pretty_name'', -- attribute_name
@@ -254,7 +267,6 @@
''f'' -- static_p (default)
);
-
attr_id := acs_attribute__create_attribute (
''chat_transcript'', -- object_type
''description'', -- attribute_name
@@ -271,7 +283,6 @@
''f'' -- static_p (default)
);
-
attr_id := acs_attribute__create_attribute (
''chat_transcript'', -- object_type
''contents'', -- attribute_name
@@ -288,10 +299,8 @@
''f'' -- static_p (default)
);
+ return 0;
-
- return 0;
-
end;'
language 'plpgsql';
Index: openacs-4/packages/chat/sql/postgresql/chat-drop.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/sql/postgresql/chat-drop.sql,v
diff -u -N -r1.5 -r1.5.2.1
--- openacs-4/packages/chat/sql/postgresql/chat-drop.sql 7 Aug 2017 23:48:07 -0000 1.5
+++ openacs-4/packages/chat/sql/postgresql/chat-drop.sql 26 Feb 2019 18:06:43 -0000 1.5.2.1
@@ -91,6 +91,7 @@
PERFORM acs_privilege__remove_child('chat_room_admin', 'chat_moderator_grant');
PERFORM acs_privilege__remove_child('chat_room_admin', 'chat_moderator_revoke');
PERFORM acs_privilege__remove_child('chat_room_admin', 'chat_moderator');
+ PERFORM acs_privilege__remove_child('chat_room_admin', 'chat_avatar_allow');
-- remove Site wite admin also administrator of the chat room
PERFORM acs_privilege__remove_child('admin', 'chat_room_admin');
@@ -118,6 +119,7 @@
PERFORM acs_privilege__drop_privilege('chat_room_admin');
PERFORM acs_privilege__drop_privilege('chat_moderator');
PERFORM acs_privilege__drop_privilege('chat_user');
+ PERFORM acs_privilege__drop_privilege('chat_avatar_allow');
return 0;
Index: openacs-4/packages/chat/sql/postgresql/upgrade/upgrade-5.0.1d5-5.0.1d6.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/sql/postgresql/upgrade/Attic/upgrade-5.0.1d5-5.0.1d6.sql,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/chat/sql/postgresql/upgrade/upgrade-5.0.1d5-5.0.1d6.sql 26 Feb 2019 18:06:43 -0000 1.1.2.1
@@ -0,0 +1,19 @@
+---
+--- Upgrade script from 5.0.1d5 to 5.0.1d6
+---
+--- Allow control over the avatar display in chat rooms
+---
+--- @author Hector Romojaro (hector.romojaro@gmail.com)
+--- @creation-date 26/02/2019
+--- @cvs-id $Id: upgrade-5.0.1d5-5.0.1d6.sql,v 1.1.2.1 2019/02/26 18:06:43 hectorr Exp $
+---
+
+begin;
+
+ alter table chat_rooms add column avatar_p boolean default 't';
+
+ select acs_privilege__create_privilege('chat_avatar_allow', 'Enable/disable user avatars in a chat room', null);
+ select acs_privilege__add_child('chat_room_admin', 'chat_avatar_allow');
+ select acs_attribute__create_attribute('chat_room','avatar_p','boolean','Avatar','Avatars',null,null,'t',1,1,null,'type_specific','f');
+
+end;
Index: openacs-4/packages/chat/tcl/chat-ajax-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/tcl/chat-ajax-procs.tcl,v
diff -u -N -r1.23.2.1 -r1.23.2.2
--- openacs-4/packages/chat/tcl/chat-ajax-procs.tcl 14 Feb 2019 16:15:01 -0000 1.23.2.1
+++ openacs-4/packages/chat/tcl/chat-ajax-procs.tcl 26 Feb 2019 18:06:43 -0000 1.23.2.2
@@ -43,16 +43,15 @@
chat_room_get -room_id $chat_id -array c
set package_id $c(context_id)
set chat_skin [parameter::get -package_id $package_id -parameter ChatSkin]
- set chat_avatar_p [parameter::get -package_id $package_id -parameter ShowAvatarP]
- next -chat_id $chat_id \
- -skin $chat_skin \
- -show_avatar $chat_avatar_p \
- -package_id $package_id \
- -mode $mode \
- -path $path \
- -logout_messages_p $c(logout_messages_p) \
- -login_messages_p $c(login_messages_p) \
- -timewindow $c(messages_time_window)
+ next -chat_id $chat_id \
+ -skin $chat_skin \
+ -package_id $package_id \
+ -mode $mode \
+ -path $path \
+ -logout_messages_p $c(logout_messages_p) \
+ -login_messages_p $c(login_messages_p) \
+ -timewindow $c(messages_time_window) \
+ -avatar_p $c(avatar_p)
}
}
Index: openacs-4/packages/chat/tcl/chat-procs-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/tcl/chat-procs-oracle.xql,v
diff -u -N -r1.3 -r1.3.2.1
--- openacs-4/packages/chat/tcl/chat-procs-oracle.xql 7 Aug 2017 23:48:07 -0000 1.3
+++ openacs-4/packages/chat/tcl/chat-procs-oracle.xql 26 Feb 2019 18:06:43 -0000 1.3.2.1
@@ -17,6 +17,7 @@
archive_p => :archive_p,
context_id => :context_id,
creation_user => :creation_user,
+ avatar_p => :avatar_p,
creation_ip => :creation_ip
);
end;
@@ -35,6 +36,7 @@
acs_permission.grant_permission(:room_id, :creation_user, 'chat_room_view');
acs_permission.grant_permission(:room_id, :creation_user, 'chat_room_delete');
acs_permission.grant_permission(:room_id, :creation_user, 'chat_transcript_create');
+ acs_permission.grant_permission(:room_id, :creation_user, 'chat_avatar_allow');
end if;
end;
@@ -117,7 +119,8 @@
auto_flush_p => :auto_flush_p,
auto_transcript_p => :auto_transcript_p,
login_messages_p => :login_messages_p,
- logout_messages_p => :logout_messages_p
+ logout_messages_p => :logout_messages_p,
+ avatar_p => :avatar_p
);
end;
Index: openacs-4/packages/chat/tcl/chat-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/tcl/chat-procs.tcl,v
diff -u -N -r1.24.2.1 -r1.24.2.2
--- openacs-4/packages/chat/tcl/chat-procs.tcl 14 Feb 2019 16:15:01 -0000 1.24.2.1
+++ openacs-4/packages/chat/tcl/chat-procs.tcl 26 Feb 2019 18:06:43 -0000 1.24.2.2
@@ -287,6 +287,7 @@
{-context_id ""}
{-creation_user ""}
{-creation_ip ""}
+ {-avatar_p t}
pretty_name
} {
Create new chat room. Return room_id if successful else raise error.
@@ -361,6 +362,7 @@
login_messages_p
logout_messages_p
messages_time_window
+ avatar_p
} {
Edit information on chat room. All information require.
} {
Index: openacs-4/packages/chat/tcl/chat-procs.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/tcl/chat-procs.xql,v
diff -u -N -r1.5 -r1.5.2.1
--- openacs-4/packages/chat/tcl/chat-procs.xql 7 Aug 2017 23:48:07 -0000 1.5
+++ openacs-4/packages/chat/tcl/chat-procs.xql 26 Feb 2019 18:06:43 -0000 1.5.2.1
@@ -14,7 +14,8 @@
auto_transcript_p,
login_messages_p,
logout_messages_p,
- messages_time_window
+ messages_time_window,
+ avatar_p
) values (
:room_id,
:pretty_name,
@@ -26,7 +27,8 @@
:auto_transcript_p,
:login_messages_p,
:logout_messages_p,
- :messages_time_window
+ :messages_time_window,
+ :avatar_p
)
@@ -43,7 +45,8 @@
auto_transcript_p = :auto_transcript_p,
login_messages_p = :login_messages_p,
logout_messages_p = :logout_messages_p,
- messages_time_window = :messages_time_window
+ messages_time_window = :messages_time_window,
+ avatar_p = :avatar_p
where room_id = :room_id
Index: openacs-4/packages/chat/www/room-edit.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/room-edit.tcl,v
diff -u -N -r1.15.2.1 -r1.15.2.2
--- openacs-4/packages/chat/www/room-edit.tcl 14 Feb 2019 16:15:01 -0000 1.15.2.1
+++ openacs-4/packages/chat/www/room-edit.tcl 26 Feb 2019 18:06:43 -0000 1.15.2.2
@@ -72,7 +72,12 @@
{help_text "[_ chat.MessagesTimeWindowHelp]"}
{value "$four_hours"}
}
-
+ {avatar_p:boolean(radio)
+ {label "#chat.ShowAvatar#" }
+ {options {{"#acs-kernel.common_Yes#" t} {"#acs-kernel.common_no#" f}}}
+ {value "t"}
+ {help_text "[_ chat.ShowAvatarHelp]"}
+ }
} -new_data {
if {[catch {
set room_id [chat_room_new \
@@ -85,6 +90,7 @@
-login_messages_p $login_messages_p \
-logout_messages_p $logout_messages_p \
-messages_time_window $messages_time_window \
+ -avatar_p $avatar_p \
-context_id [ad_conn package_id] \
-creation_user [ad_conn user_id] \
-creation_ip [ad_conn peeraddr] $pretty_name]
@@ -118,6 +124,7 @@
set login_messages_p $r(login_messages_p)
set logout_messages_p $r(logout_messages_p)
set messages_time_window $r(messages_time_window)
+ set avatar_p $r(avatar_p)
} errmsg]} {
ad_return_complaint 1 "[_ chat.Room_not_found]."
ad_script_abort
@@ -135,7 +142,8 @@
$auto_transcript_p \
$login_messages_p \
$logout_messages_p \
- $messages_time_window
+ $messages_time_window \
+ $avatar_p
} errmsg]} {
ad_return_complaint 1 "[_ chat.Could_not_update_room]: $errmsg"
ad_script_abort
Index: openacs-4/packages/chat/www/room.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/room.adp,v
diff -u -N -r1.11.2.1 -r1.11.2.2
--- openacs-4/packages/chat/www/room.adp 14 Feb 2019 16:15:01 -0000 1.11.2.1
+++ openacs-4/packages/chat/www/room.adp 26 Feb 2019 18:06:43 -0000 1.11.2.2
@@ -52,6 +52,10 @@
#chat.message_count# |
@message_count@ |
+
+ #chat.ShowAvatar# |
+ @avatar_p@ |
+
#chat.Edit#
Index: openacs-4/packages/chat/www/room.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/room.tcl,v
diff -u -N -r1.11.2.1 -r1.11.2.2
--- openacs-4/packages/chat/www/room.tcl 14 Feb 2019 16:15:01 -0000 1.11.2.1
+++ openacs-4/packages/chat/www/room.tcl 26 Feb 2019 18:06:43 -0000 1.11.2.2
@@ -25,6 +25,7 @@
transcript_create_p:onevalue
transcript_edit_p:onevalue
transcript_view_p:onevalue
+ avatar_p:onevalue
moderators:multirow
users_allow:multirow
users_ban:multirow
@@ -36,16 +37,17 @@
###
# Get all available permission of this user on this room.
###
-set room_view_p [permission::permission_p -object_id $room_id -privilege chat_room_view]
-set room_edit_p [permission::permission_p -object_id $room_id -privilege chat_room_edit]
-set room_delete_p [permission::permission_p -object_id $room_id -privilege chat_room_delete]
-set user_ban_p [permission::permission_p -object_id $room_id -privilege chat_user_ban]
-set user_unban_p [permission::permission_p -object_id $room_id -privilege chat_user_unban]
-set user_grant_p [permission::permission_p -object_id $room_id -privilege chat_user_grant]
-set user_revoke_p [permission::permission_p -object_id $room_id -privilege chat_user_revoke]
-set moderator_grant_p [permission::permission_p -object_id $room_id -privilege chat_moderator_grant]
-set moderator_revoke_p [permission::permission_p -object_id $room_id -privilege chat_moderator_revoke]
+set room_view_p [permission::permission_p -object_id $room_id -privilege chat_room_view]
+set room_edit_p [permission::permission_p -object_id $room_id -privilege chat_room_edit]
+set room_delete_p [permission::permission_p -object_id $room_id -privilege chat_room_delete]
+set user_ban_p [permission::permission_p -object_id $room_id -privilege chat_user_ban]
+set user_unban_p [permission::permission_p -object_id $room_id -privilege chat_user_unban]
+set user_grant_p [permission::permission_p -object_id $room_id -privilege chat_user_grant]
+set user_revoke_p [permission::permission_p -object_id $room_id -privilege chat_user_revoke]
+set moderator_grant_p [permission::permission_p -object_id $room_id -privilege chat_moderator_grant]
+set moderator_revoke_p [permission::permission_p -object_id $room_id -privilege chat_moderator_revoke]
set transcript_create_p [permission::permission_p -object_id $room_id -privilege chat_transcript_create]
+set avatar_allow_p [permission::permission_p -object_id $room_id -privilege chat_avatar_allow]
###
# Get room basic information.
@@ -61,6 +63,7 @@
set login_messages_p $r(login_messages_p)
set logout_messages_p $r(logout_messages_p)
set messages_time_window $r(messages_time_window)
+set avatar_p $r(avatar_p)
# prettify flags
foreach property {
@@ -71,6 +74,7 @@
auto_transcript_p
login_messages_p
logout_messages_p
+ avatar_p
} {
set $property [expr {[set $property] eq "t" ? [_ acs-kernel.common_yes] : [_ acs-kernel.common_no] }]
}
Index: openacs-4/packages/xowiki/tcl/chat-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/chat-procs.tcl,v
diff -u -N -r1.54.2.3 -r1.54.2.4
--- openacs-4/packages/xowiki/tcl/chat-procs.tcl 25 Feb 2019 15:48:45 -0000 1.54.2.3
+++ openacs-4/packages/xowiki/tcl/chat-procs.tcl 26 Feb 2019 18:06:43 -0000 1.54.2.4
@@ -19,6 +19,7 @@
{sweepinterval 60}
{login_messages_p t}
{logout_messages_p t}
+ {avatar_p t}
{conf {}}
{message_relay {bgdelivery connchan none}}
}
@@ -433,10 +434,10 @@
::xo::ChatClass instproc login {
-chat_id
{-skin "classic"}
- {-show_avatar_p "true"}
{-package_id ""}
{-mode ""}
{-path ""}
+ -avatar_p
-login_messages_p
-logout_messages_p
-timewindow
@@ -512,11 +513,19 @@
# Should we add a full screen link to the chat?
set fs_link_p true
+ # Should we display avatars? (JavaScript can only take 'true' or 'false' as boolean values)
+ if {$avatar_p} {
+ set show_avatar true
+ } else {
+ set show_avatar false
+ }
+
# small JavaScript library to obtain a portable ajax request object
template::head::add_javascript -src urn:ad:js:get-http-object -order 10
template::head::add_javascript -script "const linkRegex = \"${link_regex}\";" -order 19
- template::head::add_javascript -src /resources/xowiki/chat-common.js -order 20
- template::head::add_javascript -src /resources/xowiki/chat-skins/chat-$skin.js -order 21
+ template::head::add_javascript -script "const show_avatar = $show_avatar;" -order 20
+ template::head::add_javascript -src /resources/xowiki/chat-common.js -order 21
+ template::head::add_javascript -src /resources/xowiki/chat-skins/chat-$skin.js -order 22
template::head::add_javascript -src $jspath -order 30
set send_url ${base_url}&m=add_msg&msg=
@@ -590,12 +599,6 @@
}]
}
- if {$show_avatar_p} {
- append html {
-
- }
- }
-
append html [subst {