Index: openacs-4/packages/xowf/lib/inclass-exam.wf =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowf/lib/Attic/inclass-exam.wf,v diff -u -r1.1.2.6 -r1.1.2.7 --- openacs-4/packages/xowf/lib/inclass-exam.wf 21 Mar 2020 19:59:09 -0000 1.1.2.6 +++ openacs-4/packages/xowf/lib/inclass-exam.wf 22 Mar 2020 11:18:21 -0000 1.1.2.7 @@ -351,11 +351,23 @@ : 0 }] set examTitle ${:title} set filter_id [[$wf package_id] query_parameter id:integer ""] + set revision_id [[$wf package_id] query_parameter rid:integer ""] + if {$revision_id ne ""} { + set r [::xowiki::FormPage get_instance_from_db -revision_id $revision_id] + if {[[lindex [$items children] 0] item_id] ne [$r item_id]} { + error "invalid revision id '$revision_id' provided" + } + $items destroy + set items [::xo::OrderedComposite new -destroy_on_cleanup] + $items add $r + } + foreach i [$items children] { $i set online-exam-userName [acs_user::get_element -user_id [$i creation_user] -element username] $i set online-exam-fullName [::xo::get_user_name [$i creation_user]] } + $items orderby online-exam-userName foreach i [$items children] { set userName [$i set online-exam-userName] @@ -402,17 +414,11 @@ set time [::xo::db::tcl_date [$i property _last_modified] tz_var] set pretty_date [clock format [clock scan $time] -format "%Y-%m-%d %T"] - set duration [xowf::test_item::answer_manager get_duration $revisions] - set IPs [xowf::test_item::answer_manager get_IPs $revisions] - set submissionState [expr {$state ne "done" ? "- #xowf.not_submitted#" : ""}] append HTML [subst {

$userName · $fullName · $pretty_date

- #xowf.nr_changes#: [llength $revisions]
- #xowf.duration#: [dict get $duration from] - [dict get $duration to] - ([dict get $duration duration]) $submissionState
- IP: $IPs + [xowf::test_item::answer_manager runtime_panel -revision_id $revision_id -filter_id $filter_id $i]
$signatureString $question_form