--- loncom/homework/bridgetask.pm 2005/05/10 16:44:35 1.21 +++ loncom/homework/bridgetask.pm 2005/05/20 18:07:29 1.27 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: bridgetask.pm,v 1.21 2005/05/10 16:44:35 albertel Exp $ +# $Id: bridgetask.pm,v 1.27 2005/05/20 18:07:29 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -59,7 +59,7 @@ sub initialize_bridgetask { } sub proctor_check_auth { - my ($slot)=@_; + my ($slot_name,$slot)=@_; my $user=$env{'form.proctorname'}; my $domain=$env{'form.proctordomain'}; @@ -69,8 +69,13 @@ sub proctor_check_auth { if ($puser eq $user && $pdom eq $domain) { my $authhost=&Apache::lonnet::authenticate($puser,$env{'form.proctorpassword'},$pdom); if ($authhost ne 'no_host') { - $Apache::lonhomework::results{'resource.checkedin'}= + my $version= + $Apache::lonhomework::results{'resource.version'}= + ++$Apache::lonhomework::history{'resource.version'}; + $Apache::lonhomework::results{"resource.$version.checkedin"}= $user.'@'.$domain; + $Apache::lonhomework::results{"resource.$version.checkedin.slot"}= + $slot_name; return 1; } } @@ -78,8 +83,25 @@ sub proctor_check_auth { return 0; } +sub get_version { + if ($env{'form.previousversion'} && + defined($Apache::lonhomework::history{'resource.'.$env{'form.previousversion'}.'.status'})) { + return $env{'form.previousversion'}; + } + return $Apache::lonhomework::history{'resource.version'}; +} + sub add_previous_version_button { + my ($status)=@_; my $result; + if ($Apache::lonhomework::history{'resource.version'} eq '0') { + return ''; + } + my $version=&get_version(); + if ($version ne $Apache::lonhomework::history{'resource.version'}) { + return ''; + } + $result.=&mt(' Show a previously done version: [_1]',''); @@ -94,6 +116,13 @@ sub add_grading_button { return $result; } +sub add_request_another_attempt_button { + my $result; + $result.=' '; + return $result; +} + sub start_Task { my ($target,$token,$tagstack,$parstack,$parser,$safeeval)=@_; @@ -109,7 +138,6 @@ sub start_Task { &Apache::structuretags::page_start($target,$token,$tagstack,$parstack,$parser,$safeeval); if ($target eq 'web') { - $body_tag_start.=&add_previous_version_button(); if ($Apache::lonhomework::modifygrades) { $body_tag_start.='