--- loncom/homework/bridgetask.pm 2005/04/04 18:14:58 1.9 +++ loncom/homework/bridgetask.pm 2005/04/08 19:21:52 1.12 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: bridgetask.pm,v 1.9 2005/04/04 18:14:58 albertel Exp $ +# $Id: bridgetask.pm,v 1.12 2005/04/08 19:21:52 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -56,14 +56,14 @@ sub initialize_bridgetask { sub proctor_check_auth { my ($slot)=@_; - my $user=$ENV{'form.proctorname'}; - my $domain=$ENV{'form.proctordomain'}; + my $user=$env{'form.proctorname'}; + my $domain=$env{'form.proctordomain'}; my @allowed=split(",",$slot->{'proctor'}); foreach my $possible (@allowed) { my ($puser,$pdom)=(split('@',$possible)); if ($puser eq $user && $pdom eq $domain) { - my $authhost=&Apache::lonnet::authenticate($puser,$ENV{'form.proctorpassword'},$pdom); + my $authhost=&Apache::lonnet::authenticate($puser,$env{'form.proctorpassword'},$pdom); if ($authhost ne 'no_host') { $Apache::lonhomework::results{'resource.checkedin'}= $user.'@'.$domain; @@ -152,10 +152,10 @@ sub start_Task { $body_tag_start \n $form_tag_start". ''; # if we are viewing someone else preserve that info - if (defined $ENV{'form.grade_symb'}) { + if (defined $env{'form.grade_symb'}) { foreach my $field ('symb','courseid','domain','username') { $result .= ''."\n"; + '" value="'.$env{"form.grade_$field"}.'" />'."\n"; } } } @@ -173,7 +173,7 @@ sub end_Task { if ($target eq 'grade' || $target eq 'web' || $target eq 'answer' || $target eq 'tex') { if ( - (($target eq 'web') && ($ENV{'request.state'} ne 'construct')) || + (($target eq 'web') && ($env{'request.state'} ne 'construct')) || ($target eq 'answer') || ($target eq 'tex') ) { if ($target eq 'web') { @@ -188,6 +188,12 @@ sub end_Task { } } if ($target eq 'grade') { + my $award='SUBMITTED'; + &Apache::essayresponse::file_submission('0','bridgetask','portfiles',$award); + if ($Apache::lonhomework::results{"resource.0.bridgetask.portfiles"}) { + $Apache::lonhomework::results{"resource.0.tries"}= + 1+$Apache::lonhomework::history{"resource.0.tries"}; + } &Apache::lonhomework::showhash(%Apache::lonhomework::results); &Apache::structuretags::finalize_storage(); } @@ -235,9 +241,8 @@ sub end_Dimension { #to randomly pick one until all have been seen #then start repicking &Apache::response::pushrandomnumber(); - my $num_instances=scalar(@{$dimension{'instances'}}); - my $which=&Math::Random::random_uniform_integer(1,0,$num_instances-1); - my $instance=$dimension{'instances'}->[$which]; + my @order=&Math::Random::random_permutation(@{$dimension{'instances'}}); + my $instance=$order[0]; $result=$dimension{'intro'}.$dimension{$instance.'.text'}; #FIXME: don't show the criteria yet #foreach my $id (@{$dimension{$instance.'.criterias'}}) { @@ -323,10 +328,10 @@ sub proctor_validation_screen { my ($slot) = @_; my (undef,undef,$domain,$user) = &Apache::lonxml::whichuser(); my $url=&Apache::lonnet::studentphoto($domain,$user,'jpg'); - $user=$ENV{'form.proctorname'}; - if ($ENV{'form.proctordomain'}) { $domain=$ENV{'form.proctordomain'}; } + $user=$env{'form.proctorname'}; + if ($env{'form.proctordomain'}) { $domain=$env{'form.proctordomain'}; } my $msg; - if ($ENV{'form.proctorpassword'}) { + if ($env{'form.proctorpassword'}) { $msg='

'.&mt("Failed to authenticate the proctor.") .'

'; } @@ -334,7 +339,7 @@ sub proctor_validation_screen {

Proctor Validation

Your room's proctor needs to validate your access to this resource.

$msg -
+