Index: openacs-4/contrib/packages/simulation/lib/messages.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/simulation/lib/Attic/messages.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/contrib/packages/simulation/lib/messages.tcl 16 Dec 2003 14:16:28 -0000 1.2 +++ openacs-4/contrib/packages/simulation/lib/messages.tcl 19 Dec 2003 14:52:21 -0000 1.3 @@ -40,7 +40,7 @@ # TODO: make case_name be a combo of simulation name and case # db_multirow -extend { message_url } messages select_messages " - select sm.message_id, + select distinct sm.message_id, sm.title as subject, sm.case_id as case_name, creation_date as date, @@ -59,4 +59,4 @@ and wcrmp.case_id = sm.case_id " { set message_url [export_vars -base "[apm_package_url_from_id $package_id]simplay/message" { message_id }] -} \ No newline at end of file +} Index: openacs-4/contrib/packages/simulation/tcl/apm-callback-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/simulation/tcl/Attic/apm-callback-procs.tcl,v diff -u -r1.8 -r1.9 --- openacs-4/contrib/packages/simulation/tcl/apm-callback-procs.tcl 28 Nov 2003 16:55:52 -0000 1.8 +++ openacs-4/contrib/packages/simulation/tcl/apm-callback-procs.tcl 19 Dec 2003 14:52:21 -0000 1.9 @@ -29,7 +29,7 @@ -parent_id 0 \ -package_id $package_id \ -context_id $package_id \ - -content_types { sim_character sim_prop sim_location sim_stylesheet image }] + -content_types { sim_character sim_prop sim_location sim_stylesheet image sim_message }] application_group::new \ -group_name "Simulation Test Class" \ Index: openacs-4/contrib/packages/simulation/www/simplay/control-bar.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/simulation/www/simplay/Attic/control-bar.tcl,v diff -u -r1.6 -r1.7 --- openacs-4/contrib/packages/simulation/www/simplay/control-bar.tcl 19 Dec 2003 14:35:16 -0000 1.6 +++ openacs-4/contrib/packages/simulation/www/simplay/control-bar.tcl 19 Dec 2003 14:52:21 -0000 1.7 @@ -24,7 +24,7 @@ and wcrmp.role_id = sm.to_role_id and wcrmp.case_id = sm.case_id "] -set messages_url ${section_uri}messages +set messages_url [export_vars -base ${section_uri}messages { case_id }] # TODO: decide whether to replace direct sql with this API loop: Index: openacs-4/contrib/packages/simulation/www/simplay/task-detail.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/simulation/www/simplay/Attic/task-detail.tcl,v diff -u -r1.5 -r1.6 --- openacs-4/contrib/packages/simulation/www/simplay/task-detail.tcl 19 Dec 2003 14:35:16 -0000 1.5 +++ openacs-4/contrib/packages/simulation/www/simplay/task-detail.tcl 19 Dec 2003 14:52:21 -0000 1.6 @@ -75,13 +75,46 @@ } } -on_submit { + set body_text [template::util::richtext::get_property "contents" $body] + set body_mime_type [template::util::richtext::get_property "format" $body] - workflow::case::action::execute \ - -case_id $case_id \ - -action_id $action_id \ - -comment [template::util::richtext::get_property $body "content"] \ - -comment_mime_type [template::util::richtext::get_property $body "mime_type"] + db_transaction { + workflow::case::action::execute \ + -case_id $case_id \ + -action_id $action_id \ + -comment $body_text \ + -comment_mime_type $body_mime_type + + # Send message + + set to_role_id $action(recipient) + set from_role_id $action(assigned_role_id) + + set parent_id [bcms::folder::get_id_by_package_id -parent_id 0] + + set item_id [db_nextval "acs_object_id_seq"] + + set item_id [bcms::item::create_item \ + -item_id $item_id \ + -item_name "message_$item_id" \ + -parent_id $parent_id \ + -content_type "sim_message"] + + set attributes [list \ + [list from_role_id $from_role_id] \ + [list to_role_id $to_role_id] \ + [list case_id $case_id]] + + set revision_id [bcms::revision::add_revision \ + -item_id $item_id \ + -title $subject \ + -content_type "sim_message" \ + -mime_type $body_mime_type \ + -content $body_text \ + -additional_properties $attributes] + } + ad_returnredirect [export_vars -base tasks { case_id }] ad_script_abort } Index: openacs-4/packages/simulation/lib/messages.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/simulation/lib/messages.tcl,v diff -u -r1.2 -r1.3 --- openacs-4/packages/simulation/lib/messages.tcl 16 Dec 2003 14:16:28 -0000 1.2 +++ openacs-4/packages/simulation/lib/messages.tcl 19 Dec 2003 14:52:21 -0000 1.3 @@ -40,7 +40,7 @@ # TODO: make case_name be a combo of simulation name and case # db_multirow -extend { message_url } messages select_messages " - select sm.message_id, + select distinct sm.message_id, sm.title as subject, sm.case_id as case_name, creation_date as date, @@ -59,4 +59,4 @@ and wcrmp.case_id = sm.case_id " { set message_url [export_vars -base "[apm_package_url_from_id $package_id]simplay/message" { message_id }] -} \ No newline at end of file +} Index: openacs-4/packages/simulation/tcl/apm-callback-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/simulation/tcl/apm-callback-procs.tcl,v diff -u -r1.8 -r1.9 --- openacs-4/packages/simulation/tcl/apm-callback-procs.tcl 28 Nov 2003 16:55:52 -0000 1.8 +++ openacs-4/packages/simulation/tcl/apm-callback-procs.tcl 19 Dec 2003 14:52:21 -0000 1.9 @@ -29,7 +29,7 @@ -parent_id 0 \ -package_id $package_id \ -context_id $package_id \ - -content_types { sim_character sim_prop sim_location sim_stylesheet image }] + -content_types { sim_character sim_prop sim_location sim_stylesheet image sim_message }] application_group::new \ -group_name "Simulation Test Class" \ Index: openacs-4/packages/simulation/www/simplay/control-bar.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/simulation/www/simplay/control-bar.tcl,v diff -u -r1.6 -r1.7 --- openacs-4/packages/simulation/www/simplay/control-bar.tcl 19 Dec 2003 14:35:16 -0000 1.6 +++ openacs-4/packages/simulation/www/simplay/control-bar.tcl 19 Dec 2003 14:52:21 -0000 1.7 @@ -24,7 +24,7 @@ and wcrmp.role_id = sm.to_role_id and wcrmp.case_id = sm.case_id "] -set messages_url ${section_uri}messages +set messages_url [export_vars -base ${section_uri}messages { case_id }] # TODO: decide whether to replace direct sql with this API loop: Index: openacs-4/packages/simulation/www/simplay/task-detail.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/simulation/www/simplay/task-detail.tcl,v diff -u -r1.5 -r1.6 --- openacs-4/packages/simulation/www/simplay/task-detail.tcl 19 Dec 2003 14:35:16 -0000 1.5 +++ openacs-4/packages/simulation/www/simplay/task-detail.tcl 19 Dec 2003 14:52:21 -0000 1.6 @@ -75,13 +75,46 @@ } } -on_submit { + set body_text [template::util::richtext::get_property "contents" $body] + set body_mime_type [template::util::richtext::get_property "format" $body] - workflow::case::action::execute \ - -case_id $case_id \ - -action_id $action_id \ - -comment [template::util::richtext::get_property $body "content"] \ - -comment_mime_type [template::util::richtext::get_property $body "mime_type"] + db_transaction { + workflow::case::action::execute \ + -case_id $case_id \ + -action_id $action_id \ + -comment $body_text \ + -comment_mime_type $body_mime_type + + # Send message + + set to_role_id $action(recipient) + set from_role_id $action(assigned_role_id) + + set parent_id [bcms::folder::get_id_by_package_id -parent_id 0] + + set item_id [db_nextval "acs_object_id_seq"] + + set item_id [bcms::item::create_item \ + -item_id $item_id \ + -item_name "message_$item_id" \ + -parent_id $parent_id \ + -content_type "sim_message"] + + set attributes [list \ + [list from_role_id $from_role_id] \ + [list to_role_id $to_role_id] \ + [list case_id $case_id]] + + set revision_id [bcms::revision::add_revision \ + -item_id $item_id \ + -title $subject \ + -content_type "sim_message" \ + -mime_type $body_mime_type \ + -content $body_text \ + -additional_properties $attributes] + } + ad_returnredirect [export_vars -base tasks { case_id }] ad_script_abort }