Index: openacs-4/packages/xotcl-core/xotcl-core.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xotcl-core/xotcl-core.info,v diff -u -r1.106.2.27 -r1.106.2.28 --- openacs-4/packages/xotcl-core/xotcl-core.info 27 Feb 2021 22:29:08 -0000 1.106.2.27 +++ openacs-4/packages/xotcl-core/xotcl-core.info 12 Jun 2021 18:00:33 -0000 1.106.2.28 @@ -10,7 +10,7 @@ t xotcl - + Gustaf Neumann XOTcl library functionality (e.g. thread handling, online documentation, Generic Form and List Classes) 2017-08-06 @@ -42,7 +42,7 @@ BSD-Style 2 - + Index: openacs-4/packages/xotcl-core/tcl/cr-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xotcl-core/tcl/cr-procs.tcl,v diff -u -r1.76.2.50 -r1.76.2.51 --- openacs-4/packages/xotcl-core/tcl/cr-procs.tcl 6 Apr 2021 17:56:15 -0000 1.76.2.50 +++ openacs-4/packages/xotcl-core/tcl/cr-procs.tcl 12 Jun 2021 18:00:34 -0000 1.76.2.51 @@ -878,7 +878,25 @@ set sql "update [$domain table_name] \ set [$slot column_name] = :value \ where [$domain id_column] = $revision_id" - ::xo::dc dml update_attribute_from_slot $sql + ::xo::dc dml update_attribute_from_slot [subst { + update [$domain table_name] + set [$slot column_name] = :value + where [$domain id_column] = :revision_id + }] + # + # Probably we should call here update_last_modified, but for + # that we would need the modifying_user and the modifying IP + # address. + # + # ::xo::db::sql::acs_object update_last_modified \ + # -object_id $revision_id \ + # -modifying_user ${:publish_status} \ + # -modifying_ip ... + + ::xo::dc dml update_attribute_from_slot_last_modified { + update acs_objects set last_modified = now() + where object_id = :revision_id + } } } else { # @@ -958,6 +976,10 @@ where [$domain id_column] = $revision_id" ::xo::dc dml $att $sql } + ::xo::dc dml update_attribute_from_slot_last_modified { + update acs_objects set last_modified = now() + where object_id = :revision_id + } } } Index: openacs-4/packages/xowf/xowf.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowf/xowf.info,v diff -u -r1.12.2.34 -r1.12.2.35 --- openacs-4/packages/xowf/xowf.info 25 May 2021 20:08:20 -0000 1.12.2.34 +++ openacs-4/packages/xowf/xowf.info 12 Jun 2021 18:00:34 -0000 1.12.2.35 @@ -10,17 +10,17 @@ t xowf - + Gustaf Neumann XoWiki Content Flow - an XoWiki based workflow system implementing state-based behavior of wiki pages and forms 2017-08-06 WU Vienna BSD-Style 2 - + - + Index: openacs-4/packages/xowf/tcl/test-item-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowf/tcl/test-item-procs.tcl,v diff -u -r1.7.2.140 -r1.7.2.141 --- openacs-4/packages/xowf/tcl/test-item-procs.tcl 9 Jun 2021 06:38:57 -0000 1.7.2.140 +++ openacs-4/packages/xowf/tcl/test-item-procs.tcl 12 Jun 2021 18:00:34 -0000 1.7.2.141 @@ -1782,11 +1782,11 @@ # Get the duration from a set of revisions and return a dict # containing "from", "fromClock","to", "toClock", and "duration" # - set first [lindex $revision_sets 0] set last [lindex $revision_sets end] set fromClock [clock scan [::xo::db::tcl_date [ns_set get $first creation_date] tz]] - set toClock [clock scan [::xo::db::tcl_date [ns_set get $last creation_date] tz]] + #set toClock0 [clock scan [::xo::db::tcl_date [ns_set get $last creation_date] tz]] + set toClock [clock scan [::xo::db::tcl_date [ns_set get $last last_modified] tz]] dict set r fromClock $fromClock dict set r toClock $toClock dict set r from [clock format $fromClock -format "%H:%M:%S"] @@ -1859,7 +1859,7 @@ set result "" foreach ps $revision_sets { if {$state eq [ns_set get $ps state]} { - set result [ns_set get $ps creation_date] + set result [ns_set get $ps last_modified] } } return $result @@ -1911,7 +1911,7 @@ set from [ns_set get $ps creation_date] set until "" } elseif {$until eq "" && $current_state ne $state && $from ne ""} { - set until [ns_set get $ps creation_date] + set until [ns_set get $ps last_modified] set last_from $from set from "" } @@ -2287,7 +2287,7 @@ } set start_date [ns_set get [lindex $filtered_revisions 0] creation_date] - set end_date [ns_set get [lindex $filtered_revisions end] creation_date] + set end_date [ns_set get [lindex $filtered_revisions end] last_modified] set start_clock [clock scan [::xo::db::tcl_date $start_date tz_var]] set end_clock [clock scan [::xo::db::tcl_date $end_date tz_var]] Index: openacs-4/packages/xowf/tcl/xowf-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowf/tcl/xowf-procs.tcl,v diff -u -r1.28.2.56 -r1.28.2.57 --- openacs-4/packages/xowf/tcl/xowf-procs.tcl 30 May 2021 19:00:00 -0000 1.28.2.56 +++ openacs-4/packages/xowf/tcl/xowf-procs.tcl 12 Jun 2021 18:00:34 -0000 1.28.2.57 @@ -2152,7 +2152,8 @@ set item_id ${:item_id} if {$with_instance_attributes} { set revision_sets [::xo::dc sets -prepare integer wf_revisions { - SELECT revision_id, creation_date, creation_user, creation_ip, state, assignee, instance_attributes + SELECT revision_id, creation_date, last_modified, creation_user, + creation_ip, state, assignee, instance_attributes FROM cr_revisions cr, acs_objects o, xowiki_form_page x, xowiki_page_instance pi WHERE cr.item_id = :item_id AND o.object_id = cr.revision_id @@ -2162,7 +2163,7 @@ }] } else { set revision_sets [::xo::dc sets -prepare integer wf_revisions { - SELECT revision_id, creation_date, creation_user, creation_ip, state, assignee + SELECT revision_id, creation_date, last_modified, creation_user, creation_ip, state, assignee FROM cr_revisions cr, acs_objects o, xowiki_form_page x WHERE cr.item_id = :item_id AND o.object_id = cr.revision_id