Index: openacs-4/packages/forums/tcl/forums-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/forums/tcl/forums-procs.tcl,v diff -u -r1.17 -r1.18 --- openacs-4/packages/forums/tcl/forums-procs.tcl 28 Apr 2005 13:32:34 -0000 1.17 +++ openacs-4/packages/forums/tcl/forums-procs.tcl 26 May 2005 10:54:45 -0000 1.18 @@ -17,6 +17,7 @@ {-presentation_type flat} {-posting_policy open} {-package_id:required} + -no_callback:boolean } { create a new forum } { @@ -27,7 +28,14 @@ [list presentation_type $presentation_type] \ [list posting_policy $posting_policy] \ [list package_id $package_id]] - return [package_instantiate_object -var_list $var_list forums_forum] + + set forum_id [package_instantiate_object -var_list $var_list forums_forum] + + if {!$no_callback_p} { + callback forum::forum_new -package_id $package_id -forum_id $forum_id + } + + return $forum_id } ad_proc -public forum::edit { @@ -36,12 +44,17 @@ {-charter ""} {-presentation_type flat} {-posting_policy open} + -no_callback:boolean } { edit a forum } { # This is a straight DB update db_dml update_forum {} db_dml update_forum_object {} + + if {!$no_callback_p} { + callback forum::forum_edit -package_id [ad_conn package_id] -forum_id $forum_id + } } ad_proc -public forum::attachments_enabled_p {} { Index: openacs-4/packages/forums/tcl/messages-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/forums/tcl/messages-procs.tcl,v diff -u -r1.31 -r1.32 --- openacs-4/packages/forums/tcl/messages-procs.tcl 26 Mar 2005 20:29:20 -0000 1.31 +++ openacs-4/packages/forums/tcl/messages-procs.tcl 26 May 2005 10:54:45 -0000 1.32 @@ -18,6 +18,7 @@ {-content:required} {-format "text/plain"} {-user_id ""} + -no_callback:boolean } { create a new message } { @@ -46,6 +47,10 @@ if {[info exists message(state)] && [string equal $message(state) approved]} { do_notifications -message_id $message_id } + + if {!$no_callback_p} { + callback forum::message_new -package_id [ad_conn package_id] -message_id $message_id + } } on_error { db_abort_transaction @@ -150,13 +155,18 @@ {-subject:required} {-content:required} {-format:required} + -no_callback:boolean } { Editing a message. There is no versioning here! This means this function is for admins only! } { # do the update db_dml update_message {} db_dml update_message_title {} + + if {!$no_callback_p} { + callback forum::message_edit -package_id [ad_conn package_id] -message_id $message_id + } } ad_proc -public forum::message::set_format { @@ -229,10 +239,15 @@ ad_proc -public forum::message::delete { {-message_id:required} + -no_callback:boolean } { delete a message and obviously all of its descendents } { db_transaction { + if {!$no_callback_p} { + callback forum::message_delete -package_id [ad_conn package_id] -message_id $message_id + } + # Remove the notifications notification::request::delete_all -object_id $message_id