Actions
Active
@@ -13,6 +13,11 @@
Are you sure you want to revoke chat user privilege of
Are you sure you want to revoke moderator privilege of
Are you sure you want to unban
+ Automatically flush messages at midnight
+ Automatically flush the messages in the database at midnight. This is only used if the rooms is archived.
+ Automatically created transcript
+ Auto Transcript
+ Automatically create a transcript of the messages after flushing.
Ban
Ban chat read/write privilege for
Ban user
@@ -76,6 +81,7 @@
Name
No information available
No active
+ Refresh
remove
Revoke
revoke
Index: openacs-4/packages/chat/lib/current-messages.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/lib/current-messages.tcl,v
diff -u -N -r1.1.2.1 -r1.1.2.2
--- openacs-4/packages/chat/lib/current-messages.tcl 30 Mar 2006 09:15:12 -0000 1.1.2.1
+++ openacs-4/packages/chat/lib/current-messages.tcl 7 Apr 2006 16:59:51 -0000 1.1.2.2
@@ -7,5 +7,9 @@
}
db_multirow -extend { person_name } messages select_msg_itens $sql {
- set person_name [chat_user_name $creation_user]
+ if { $creation_user eq 0 } {
+ set person_name "Nobody"
+ } else {
+ set person_name [chat_user_name $creation_user]
+ }
}
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.1 -r1.1.2.1
--- openacs-4/packages/chat/sql/postgresql/chat-create.sql 14 Mar 2006 12:16:09 -0000 1.1
+++ openacs-4/packages/chat/sql/postgresql/chat-create.sql 7 Apr 2006 16:59:52 -0000 1.1.2.1
@@ -201,13 +201,13 @@
check (active_p in ('t','f')),
-- if set then log all chat messages in this room.
archive_p boolean
- default 'f'
+ default 't'
constraint chat_rooms_archive_p_ck
- check (archive_p in ('t', 'f'))
-
-
-
-
+ check (archive_p in ('t', 'f')),
+ -- flush the rooms messages every night at 00:05
+ auto_flush_p boolean default 't',
+ -- automatically create a transcript after flushing the room
+ auto_transcript_p boolean default 'f'
);
@@ -343,7 +343,7 @@
---------------------------------
-create function chat_room__new (integer, varchar, varchar, boolean, boolean, boolean, integer, timestamptz, integer, varchar, varchar)
+create or replace function chat_room__new (integer, varchar, varchar, boolean, boolean, boolean, boolean, boolean, integer, timestamptz, integer, varchar, varchar)
returns integer as '
declare
p_room_id alias for $1;
@@ -352,11 +352,13 @@
p_moderated_p alias for $4;
p_active_p alias for $5;
p_archive_p alias for $6;
- p_context_id alias for $7;
- p_creation_date alias for $8;
- p_creation_user alias for $9;
- p_creation_ip alias for $10;
- p_object_type alias for $11;
+ p_auto_flush_p alias for $7;
+ p_auto_transcript_p alias for $8;
+ p_context_id alias for $9;
+ p_creation_date alias for $10;
+ p_creation_user alias for $11;
+ p_creation_ip alias for $12;
+ p_object_type alias for $13;
v_room_id chat_rooms.room_id%TYPE;
begin
v_room_id := acs_object__new (
@@ -369,9 +371,9 @@
);
insert into chat_rooms
- (room_id, pretty_name, description, moderated_p, active_p, archive_p)
+ (room_id, pretty_name, description, moderated_p, active_p, archive_p, auto_flush_p, auto_transcript_p)
values
- (v_room_id, p_pretty_name, p_description, p_moderated_p, p_active_p, p_archive_p);
+ (v_room_id, p_pretty_name, p_description, p_moderated_p, p_active_p, p_archive_p, p_auto_flush_p, p_auto_transcript_p);
return v_room_id;
@@ -507,7 +509,8 @@
end;' language 'plpgsql';
----------------------------
-create function chat_room__edit (integer, varchar, varchar, boolean, boolean, boolean)
+
+create or replace function chat_room__edit (integer, varchar, varchar, boolean, boolean, boolean, boolean, boolean)
returns integer as '
declare
p_room_id alias for $1;
@@ -516,14 +519,18 @@
p_moderated_p alias for $4;
p_active_p alias for $5;
p_archive_p alias for $6;
+ p_auto_flush_p alias for $7;
+ p_auto_transcript_p alias for $8;
begin
update chat_rooms set
pretty_name = p_pretty_name,
description = p_description,
moderated_p = p_moderated_p,
active_p = p_active_p,
- archive_p = p_archive_p
+ archive_p = p_archive_p,
+ auto_flush_p = p_auto_flush_p,
+ auto_transcript_p = p_auto_transcript_p
where
room_id = p_room_id;
return 0;
Index: openacs-4/packages/chat/sql/postgresql/upgrade/upgrade-5.0d4-5.0d5.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/sql/postgresql/upgrade/upgrade-5.0d4-5.0d5.sql,v
diff -u -N
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ openacs-4/packages/chat/sql/postgresql/upgrade/upgrade-5.0d4-5.0d5.sql 7 Apr 2006 16:59:52 -0000 1.1.2.1
@@ -0,0 +1,67 @@
+
+alter table chat_rooms add column auto_flush_p boolean default 't';
+alter table chat_rooms add column auto_transcript_p boolean default 'f';
+update chat_rooms set auto_flush_p = 't', auto_transcript_p = 'f';
+
+create or replace function chat_room__edit (integer, varchar, varchar, boolean, boolean, boolean, boolean, boolean)
+returns integer as '
+declare
+ p_room_id alias for $1;
+ p_pretty_name alias for $2;
+ p_description alias for $3;
+ p_moderated_p alias for $4;
+ p_active_p alias for $5;
+ p_archive_p alias for $6;
+ p_auto_flush_p alias for $7;
+ p_auto_transcript_p alias for $8;
+begin
+
+ update chat_rooms set
+ pretty_name = p_pretty_name,
+ description = p_description,
+ moderated_p = p_moderated_p,
+ active_p = p_active_p,
+ archive_p = p_archive_p,
+ auto_flush_p = p_auto_flush_p,
+ auto_transcript_p = p_auto_transcript_p
+ where
+ room_id = p_room_id;
+ return 0;
+end;' language 'plpgsql';
+
+create or replace function chat_room__new (integer, varchar, varchar, boolean, boolean, boolean, boolean, boolean, integer, timestamptz, integer, varchar, varchar)
+returns integer as '
+declare
+ p_room_id alias for $1;
+ p_pretty_name alias for $2;
+ p_description alias for $3;
+ p_moderated_p alias for $4;
+ p_active_p alias for $5;
+ p_archive_p alias for $6;
+ p_auto_flush_p alias for $7;
+ p_auto_transcript_p alias for $8;
+ p_context_id alias for $9;
+ p_creation_date alias for $10;
+ p_creation_user alias for $11;
+ p_creation_ip alias for $12;
+ p_object_type alias for $13;
+ v_room_id chat_rooms.room_id%TYPE;
+begin
+ v_room_id := acs_object__new (
+ null,
+ ''chat_room'',
+ now(),
+ p_creation_user,
+ p_creation_ip,
+ p_context_id
+ );
+
+ insert into chat_rooms
+ (room_id, pretty_name, description, moderated_p, active_p, archive_p, auto_flush_p, auto_transcript_p)
+ values
+ (v_room_id, p_pretty_name, p_description, p_moderated_p, p_active_p, p_archive_p, p_auto_flush_p, p_auto_transcript_p);
+
+return v_room_id;
+
+end;' language 'plpgsql';
+
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.1.2.3 -r1.1.2.4
--- openacs-4/packages/chat/tcl/chat-ajax-procs.tcl 31 Mar 2006 15:42:52 -0000 1.1.2.3
+++ openacs-4/packages/chat/tcl/chat-ajax-procs.tcl 7 Apr 2006 16:59:52 -0000 1.1.2.4
@@ -34,13 +34,13 @@
// register an update function to refresh the data sources every 5 seconds
var updateInterval = setInterval(updateDataConnections,5000);
-
Index: openacs-4/packages/chat/tcl/chat-init.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/tcl/chat-init.tcl,v
diff -u -N -r1.1.1.1 -r1.1.1.1.14.1
--- openacs-4/packages/chat/tcl/chat-init.tcl 20 Apr 2001 20:51:08 -0000 1.1.1.1
+++ openacs-4/packages/chat/tcl/chat-init.tcl 7 Apr 2006 16:59:52 -0000 1.1.1.1.14.1
@@ -11,71 +11,5 @@
nsv_set chat server_started 0
+ad_schedule_proc -thread t -schedule_proc ns_schedule_daily [list 0 5] chat_flush_rooms
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Index: openacs-4/packages/chat/tcl/chat-procs-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/tcl/chat-procs-postgresql.xql,v
diff -u -N -r1.1 -r1.1.2.1
--- openacs-4/packages/chat/tcl/chat-procs-postgresql.xql 14 Mar 2006 12:16:09 -0000 1.1
+++ openacs-4/packages/chat/tcl/chat-procs-postgresql.xql 7 Apr 2006 16:59:52 -0000 1.1.2.1
@@ -10,6 +10,8 @@
:moderated_p,
:active_p,
:archive_p,
+ :auto_flush_p,
+ :auto_transcript_p,
:context_id,
now(),
:creation_user,
@@ -122,7 +124,9 @@
:description,
:moderated_p,
:active_p,
- :archive_p
+ :archive_p,
+ :auto_flush_p,
+ :auto_transcript_p
);
return 0;
end;
@@ -217,7 +221,23 @@
+
+
+ select room_id
+ from chat_rooms
+ where archive_p = 't' and auto_flush_p = 't'
+
+
+
+
+ select msg, creation_user, to_char(creation_date, 'DD.MM.YYYY hh24:mi:ss') as creation_date
+ from chat_msgs
+ where room_id = :room_id
+ and msg is not null
+ order by creation_date
+
+
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.5.2.1 -r1.5.2.2
--- openacs-4/packages/chat/tcl/chat-procs.tcl 30 Mar 2006 09:15:12 -0000 1.5.2.1
+++ openacs-4/packages/chat/tcl/chat-procs.tcl 7 Apr 2006 16:59:52 -0000 1.5.2.2
@@ -133,6 +133,8 @@
{-moderated_p f}
{-active_p t}
{-archive_p f}
+ {-auto_flush_p t}
+ {-auto_transcript_p f}
{-context_id ""}
{-creation_user ""}
{-creation_ip ""}
@@ -158,6 +160,8 @@
moderated_p
active_p
archive_p
+ auto_flush_p
+ auto_transcript_p
} {
Edit information on chat room. All information require.
} {
@@ -328,10 +332,24 @@
set status "pending"
}
- if [catch {chat_post_message_to_db -creation_user $user_id $room_id $message} errmsg] {
- ns_log error "chat_post_message_to_db: error: $errmsg"
- }
+ # do not write messages to the database if the room should not be archived
+ chat_room_get -room_id $room_id -array room_info
+ if { $room_info(archive_p) eq "f" } { return }
+ set default_client [parameter::get -parameter "DefaultClient" -default "ajax"]
+
+ if {$default_client eq "java"} {
+ set chat_msg "[chat_user_name $user_id]$user_id$room_id$message$status"
+ # Add message to queue. Notify thread responsible for
+ # broadcast message to applets.
+
+ nsv_set chat html_message $chat_msg
+ ns_mutex unlock [nsv_get chat new_message]
+ } else {
+ if [catch {chat_post_message_to_db -creation_user $user_id $room_id $message} errmsg] {
+ ns_log error "chat_post_message_to_db: error: $errmsg"
+ }
+ }
}
@@ -443,4 +461,50 @@
db_exec_plsql edit_transcript {}
}
+ad_proc -public chat_room_get {
+ {-room_id {}}
+ {-array:required}
+} {
+ Get all the information about a chat room into an array
+} {
+ upvar $array row
+ array set row [util_memoize [list chat_room_get_not_cached $room_id]]
+}
+ad_proc -private chat_room_get_not_cached {
+ room_id
+} {
+ db_1row select_user_info {select * from chat_rooms where room_id = :room_id} -column_array row
+ return [array get row]
+}
+
+ad_proc -private chat_flush_rooms {} {Flush the messages in all of the chat rooms} {
+ # ns_log Notice "YY Starting chat_flush_rooms operation"
+ set room_ids [db_list get_rooms *SQL*]
+ foreach room_id $room_ids {
+ chat_room_flush $room_id
+ }
+}
+
+ad_proc -private chat_room_flush { room_id } {Flush the messages a single chat room} {
+ # ns_log Notice "YY flushing room $room_id"
+ db_transaction {
+ array set room_info [chat_room_get_not_cached $room_id]
+ set contents ""
+ # do we have to create a transcript for the room
+ if { $room_info(auto_transcript_p) eq "t" } {
+ # build a list of all messages
+ db_foreach get_archives_messages {} {
+ append contents "\[$creation_date\] [chat_user_name $creation_user]: $msg
\n"
+ }
+ if { $contents ne "" } {
+ chat_transcript_new \
+ -description "#chat.automatically_created_transcript#" \
+ "#chat.transcript_of_date# [clock format [clock seconds] -format "%d.%m.%Y"]" $contents $room_id
+ }
+ }
+ # clear all the messages in the room
+ chat_room_message_delete $room_id
+ }
+}
+
Index: openacs-4/packages/chat/www/chat.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/chat.tcl,v
diff -u -N -r1.5.2.2 -r1.5.2.3
--- openacs-4/packages/chat/www/chat.tcl 31 Mar 2006 15:42:53 -0000 1.5.2.2
+++ openacs-4/packages/chat/www/chat.tcl 7 Apr 2006 16:59:52 -0000 1.5.2.3
@@ -72,6 +72,16 @@
"ajax" {
set template_use "ajax-chat-script"
}
+ "java" {
+ set template_use "java-chat"
+
+ # Get config paramater for applet.
+ set width [ad_parameter AppletWidth "" 500]
+ set height [ad_parameter AppletHeight "" 400]
+
+ set host [ad_parameter ServerHost "" [ns_config "ns/server/[ns_info server]/module/nssock" Hostname]]
+ set port [ad_parameter ServerPort "" 8200]
+ }
}
ad_return_template $template_use
Index: openacs-4/packages/chat/www/html-chat.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/Attic/html-chat.tcl,v
diff -u -N -r1.1.2.1 -r1.1.2.2
--- openacs-4/packages/chat/www/html-chat.tcl 30 Mar 2006 09:15:12 -0000 1.1.2.1
+++ openacs-4/packages/chat/www/html-chat.tcl 7 Apr 2006 16:59:52 -0000 1.1.2.2
@@ -32,13 +32,13 @@
-no_data "[_ chat.no_messages]" \
-page_flush_p 1 \
-elements {
- creation_date { label "[_ chat.date]" }
+ creation_date_pretty { label "[_ chat.date]" }
person_name { label "[_ acs-kernel.User]" }
msg { label "[_ chat.msg]" }
}
db_multirow -extend { person_name } chat_msg_query select_msg_itens {
- select to_char(creation_date, 'DD.MM.YYYY hh24:mi:ss') as creation_date, creation_user, msg
+ select to_char(creation_date, 'DD.MM.YYYY hh24:mi:ss') as creation_date_pretty, creation_user, msg
from chat_msgs
where room_id = :room_id
order by creation_date desc
Index: openacs-4/packages/chat/www/index.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/index.tcl,v
diff -u -N -r1.3.2.2 -r1.3.2.3
--- openacs-4/packages/chat/www/index.tcl 31 Mar 2006 15:42:53 -0000 1.3.2.2
+++ openacs-4/packages/chat/www/index.tcl 7 Apr 2006 16:59:52 -0000 1.3.2.3
@@ -72,13 +72,15 @@
}
pretty_name {
label "Name"
+ html { width 400px }
display_template {
@rooms.pretty_name@
@rooms.pretty_name@
+ @rooms.description@
}
}
active_users {
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.4.2.1 -r1.4.2.2
--- openacs-4/packages/chat/www/room-edit.tcl 30 Mar 2006 09:15:12 -0000 1.4.2.1
+++ openacs-4/packages/chat/www/room-edit.tcl 7 Apr 2006 16:59:52 -0000 1.4.2.2
@@ -21,9 +21,6 @@
{moderated_p:boolean(hidden)
{value "f"}
}
- {archive_p:boolean(hidden)
- {value "t"}
- }
{pretty_name:text(text)
{label "#chat.Room_name#" }
}
@@ -36,11 +33,30 @@
{options {{Ja t} {Nein f}}}
{value "t"}
}
+ {archive_p:boolean(radio)
+ {label "#chat.Archive#" }
+ {options {{Ja t} {Nein f}}}
+ {value "t"}
+ }
+ {auto_flush_p:boolean(radio)
+ {label "#chat.AutoFlush#" }
+ {options {{Ja t} {Nein f}}}
+ {value "t"}
+ {help_text "[_ chat.AutoFlushHelp]"}
+ }
+ {auto_transcript_p:boolean(radio)
+ {label "#chat.AutoTranscript#" }
+ {options {{Ja t} {Nein f}}}
+ {value "f"}
+ {help_text "[_ chat.AutoTranscriptHelp]"}
+ }
} -new_data {
if {[catch {set room_id [chat_room_new -moderated_p $moderated_p \
-description $description \
-active_p $active_p \
-archive_p $archive_p \
+ -auto_flush_p $auto_flush_p \
+ -auto_transcript_p $auto_transcript_p \
-context_id [ad_conn package_id] \
-creation_user [ad_conn user_id] \
-creation_ip [ad_conn peeraddr] $pretty_name]} errmsg]} {
@@ -60,17 +76,18 @@
}
} -edit_request {
if {[catch {db_1row room_info {
- select pretty_name, description, moderated_p, archive_p, active_p
+ select pretty_name, description, moderated_p, archive_p, active_p, auto_flush_p, auto_transcript_p
from chat_rooms
where room_id = :room_id}} errmsg]} {
ad_return_complaint 1 "[_ chat.Room_not_found]."
break
}
} -edit_data {
- if {[catch {chat_room_edit $room_id $pretty_name $description $moderated_p $active_p $archive_p} errmsg]} {
+ if {[catch {chat_room_edit $room_id $pretty_name $description $moderated_p $active_p $archive_p $auto_flush_p $auto_transcript_p} errmsg]} {
ad_return_complaint 1 "[_ chat.Could_not_update_room]: $errmsg"
break
}
+ util_memoize_flush [list chat_room_get_not_cached $room_id]
} -after_submit {
ad_returnredirect "room?room_id=$room_id"
ad_script_abort
Index: openacs-4/packages/chat/www/room-enter.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/room-enter.tcl,v
diff -u -N -r1.3.2.1 -r1.3.2.2
--- openacs-4/packages/chat/www/room-enter.tcl 30 Mar 2006 09:15:12 -0000 1.3.2.1
+++ openacs-4/packages/chat/www/room-enter.tcl 7 Apr 2006 16:59:52 -0000 1.3.2.2
@@ -24,10 +24,13 @@
ad_script_abort
}
+set default_client [parameter::get -parameter "DefaultClient" -default "ajax"]
+
+if {$default_client eq "java"} {
+ chat_start_server
+}
+
switch $client {
- "java" {
- chat_start_server
- }
"html" - "ajax" - "html-chat-script" {
ns_log Notice "YY room-enter: has_entered_the room"
chat_message_post $room_id $user_id "[_ chat.has_entered_the_room]." "1"
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.5.2.1 -r1.5.2.2
--- openacs-4/packages/chat/www/room.adp 30 Mar 2006 09:15:12 -0000 1.5.2.1
+++ openacs-4/packages/chat/www/room.adp 7 Apr 2006 16:59:52 -0000 1.5.2.2
@@ -25,6 +25,18 @@
@active_p@ |
+ #chat.Archive# |
+ @archive_p@ |
+
+
+ #chat.AutoFlush# |
+ @auto_flush_p@ |
+
+
+ #chat.AutoTranscript# |
+ @auto_transcript_p@ |
+
+
#chat.message_count# |
@message_count@ |
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.3.2.1 -r1.3.2.2
--- openacs-4/packages/chat/www/room.tcl 30 Mar 2006 09:15:12 -0000 1.3.2.1
+++ openacs-4/packages/chat/www/room.tcl 7 Apr 2006 16:59:52 -0000 1.3.2.2
@@ -51,7 +51,7 @@
# Get room basic information.
###
db_1row room_info {
- select pretty_name, description, moderated_p, active_p, archive_p
+ select pretty_name, description, moderated_p, active_p, archive_p, auto_flush_p, auto_transcript_p
from chat_rooms
where room_id = :room_id
}
Index: openacs-4/packages/chat/www/ajax/chat.js
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/ajax/Attic/chat.js,v
diff -u -N -r1.1.2.3 -r1.1.2.4
--- openacs-4/packages/chat/www/ajax/chat.js 31 Mar 2006 16:09:56 -0000 1.1.2.3
+++ openacs-4/packages/chat/www/ajax/chat.js 7 Apr 2006 16:59:52 -0000 1.1.2.4
@@ -95,16 +95,16 @@
if (body[0].childNodes[i].nodeType == 3 ) {
// if this is a textnode, skip it
continue;
- }
+ }
var attribute = body[0].childNodes[i].getAttribute('id');
switch (attribute) {
case "messages":
var messagesNode = body[0].childNodes[i];
- if (messagesNode.hasChildNodes()) {
- var messagesDoc = frames['ichat'].document;
- var messagesDiv = frames['ichat'].document.getElementById('messages');
- messagesReceiver(messagesNode,messagesDoc,messagesDiv);
- }
+ if (messagesNode.hasChildNodes()) {
+ var messagesDoc = frames['ichat'].document;
+ var messagesDiv = frames['ichat'].document.getElementById('messages');
+ messagesReceiver(messagesNode,messagesDoc,messagesDiv);
+ }
break;
case "users":
var usersNode = body[0].childNodes[i].childNodes[0];
@@ -123,7 +123,7 @@
if (node.childNodes[i].nodeType == 3 ){
// if this is a textnode, skip it
continue;
- }
+ }
tr = doc.createElement('tr');
e = node.childNodes[i].getElementsByTagName('TD');
@@ -238,3 +238,13 @@
inactivityTimeout = null;
}
+function startProc() {
+ document.getElementById('chatMsg').focus();
+ var messagesDiv = frames['ichat'].document.getElementById('messages');
+ if (messagesDiv) {
+ frames['ichat'].window.scrollTo(0,messagesDiv.offsetHeight);
+ }
+}
+
+window.onload = startProc;
+
Index: openacs-4/packages/chat/www/ajax/chat.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/chat/www/ajax/Attic/chat.tcl,v
diff -u -N -r1.1.2.3 -r1.1.2.4
--- openacs-4/packages/chat/www/ajax/chat.tcl 31 Mar 2006 16:09:56 -0000 1.1.2.3
+++ openacs-4/packages/chat/www/ajax/chat.tcl 7 Apr 2006 16:59:52 -0000 1.1.2.4
@@ -8,7 +8,7 @@
m
id
s
- {msg ""}
+ {msg:optional,allhtml ""}
}
set message_output ""
@@ -24,14 +24,15 @@
}
# do not insert empty messages, if they managed to get here
if { $msg ne "" } {
- set message_output [c1 $m $msg]
- set user_id [ad_conn user_id]
- chat_message_post $id $user_id $msg f
+ set message_output [c1 add_msg $msg]
+ if { [c1 current_message_valid] } {
+ chat_message_post $id [c1 euid] [c1 emsg] f
+ }
}
}
login - get_new - get_all {
set message_output [c1 $m]
- }
+ }
get_updates {
set message_output [c1 get_new]
set user_output [c1 get_users]
@@ -69,4 +70,4 @@