Index: openacs-4/packages/forums/forums.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/forums/forums.info,v
diff -u -r1.13.2.2 -r1.13.2.3
--- openacs-4/packages/forums/forums.info 22 Nov 2002 18:38:25 -0000 1.13.2.2
+++ openacs-4/packages/forums/forums.info 26 Nov 2002 02:38:08 -0000 1.13.2.3
@@ -35,6 +35,7 @@
+
@@ -49,11 +50,12 @@
+
-
-
+
+
@@ -78,8 +80,6 @@
-
-
@@ -109,6 +109,8 @@
+
+
@@ -118,9 +120,9 @@
-
-
+
+
Index: openacs-4/packages/forums/sql/oracle/forums-messages-package-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/forums/sql/oracle/forums-messages-package-create.sql,v
diff -u -r1.3.2.1 -r1.3.2.2
--- openacs-4/packages/forums/sql/oracle/forums-messages-package-create.sql 22 Nov 2002 18:38:27 -0000 1.3.2.1
+++ openacs-4/packages/forums/sql/oracle/forums-messages-package-create.sql 26 Nov 2002 02:38:11 -0000 1.3.2.2
@@ -80,9 +80,11 @@
) return forums_messages.message_id%TYPE
is
v_message_id acs_objects.object_id%TYPE;
+ v_sortkey forums_messages.tree_sortkey%TYPE;
v_forum_policy forums_forums.posting_policy%TYPE;
v_state forums_messages.state%TYPE;
begin
+
v_message_id := acs_object.new(
object_id => message_id,
object_type => object_type,
@@ -113,14 +115,20 @@
values
(v_message_id, forum_id, subject, content, html_p, user_id, posting_date, parent_id, v_state);
+ -- DRB: Can't use root_message_id() here because it triggers a "mutating table" error
+ select tree_sortkey into v_sortkey
+ from forums_messages
+ where message_id = v_message_id;
+
update forums_forums
set last_post = posting_date
where forum_id = forums_message.new.forum_id;
update forums_messages
set last_child_post = posting_date
- where message_id = forums_message.root_message_id(v_message_id);
+ where forum_id = forums_message.new.forum_id
+ and tree_sortkey = tree.ancestor_key(v_sortkey, 1);
return v_message_id;
end new;
Index: openacs-4/packages/forums/sql/oracle/upgrade-0.1d-0.2d.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/forums/sql/oracle/Attic/upgrade-0.1d-0.2d.sql,v
diff -u -r1.1.2.1 -r1.1.2.2
--- openacs-4/packages/forums/sql/oracle/upgrade-0.1d-0.2d.sql 22 Nov 2002 18:38:27 -0000 1.1.2.1
+++ openacs-4/packages/forums/sql/oracle/upgrade-0.1d-0.2d.sql 26 Nov 2002 02:38:11 -0000 1.1.2.2
@@ -64,7 +64,6 @@
from forums_forums
where enabled_p = 't';
-
create or replace package body forums_message
as
@@ -86,9 +85,11 @@
) return forums_messages.message_id%TYPE
is
v_message_id acs_objects.object_id%TYPE;
+ v_sortkey forums_messages.tree_sortkey%TYPE;
v_forum_policy forums_forums.posting_policy%TYPE;
v_state forums_messages.state%TYPE;
begin
+
v_message_id := acs_object.new(
object_id => message_id,
object_type => object_type,
@@ -119,14 +120,20 @@
values
(v_message_id, forum_id, subject, content, html_p, user_id, posting_date, parent_id, v_state);
+ -- DRB: Can't use root_message_id() here because it triggers a "mutating table" error
+ select tree_sortkey into v_sortkey
+ from forums_messages
+ where message_id = v_message_id;
+
update forums_forums
set last_post = posting_date
where forum_id = forums_message.new.forum_id;
update forums_messages
set last_child_post = posting_date
- where message_id = forums_message.root_message_id(v_message_id);
+ where forum_id = forums_message.new.forum_id
+ and tree_sortkey = tree.ancestor_key(v_sortkey, 1);
return v_message_id;
end new;
Index: openacs-4/packages/forums/www/message-chunk.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/forums/www/Attic/message-chunk.adp,v
diff -u -r1.11.2.1 -r1.11.2.2
--- openacs-4/packages/forums/www/message-chunk.adp 22 Nov 2002 18:34:25 -0000 1.11.2.1
+++ openacs-4/packages/forums/www/message-chunk.adp 26 Nov 2002 02:38:13 -0000 1.11.2.2
@@ -1,15 +1,16 @@
-
-
-
- @message.subject@
-
-
- @message.subject@
-
-
+
+
+
+ @message.subject@
+
+
+ @message.subject@
+
+
+ |
|
@message.user_name@ |