version 1.228, 2007/02/23 17:14:20
|
version 1.231, 2007/04/07 00:12:43
|
Line 38 use Apache::lonlocal;
|
Line 38 use Apache::lonlocal;
|
use Apache::lonxml; |
use Apache::lonxml; |
use Apache::slotrequest(); |
use Apache::slotrequest(); |
use Time::HiRes qw( gettimeofday tv_interval ); |
use Time::HiRes qw( gettimeofday tv_interval ); |
use lib '/home/httpd/lib/perl/'; |
|
use LONCAPA; |
use LONCAPA; |
|
|
|
|
Line 488 sub webgrade_standard_info {
|
Line 487 sub webgrade_standard_info {
|
'stop' => 'Quit Grading', |
'stop' => 'Quit Grading', |
'fail' => 'Fail Rest', |
'fail' => 'Fail Rest', |
'cancel' => 'Cancel', |
'cancel' => 'Cancel', |
|
'submit' => 'Submit Grades', |
); |
); |
%lt=&Apache::lonlocal::texthash(%lt); |
%lt=&Apache::lonlocal::texthash(%lt); |
|
|
Line 495 sub webgrade_standard_info {
|
Line 495 sub webgrade_standard_info {
|
<div class="LC_GRADING_maincontrols"> |
<div class="LC_GRADING_maincontrols"> |
INFO |
INFO |
|
|
if (&grade_mode() eq 'regrade') { |
if ($env{'request.state'} eq 'construct') { |
$result.=<<INFO; |
$result.=<<INFO; |
|
<input type="submit" name="next" value="$lt{'submit'}" /> |
|
INFO |
|
} else { |
|
if (&grade_mode() eq 'regrade' && $env{'request.state'} ne 'construct') { |
|
$result.=<<INFO; |
<input type="submit" name="cancel" value="$lt{'cancel'}" /> |
<input type="submit" name="cancel" value="$lt{'cancel'}" /> |
INFO |
INFO |
} |
} |
|
|
$result.=<<INFO; |
$result.=<<INFO; |
<input type="submit" name="next" value="$lt{'done'}" /> |
<input type="submit" name="next" value="$lt{'done'}" /> |
<input type="submit" name="stop" value="$lt{'stop'}" /> |
<input type="submit" name="stop" value="$lt{'stop'}" /> |
|
INFO |
|
} |
|
$result.=<<INFO; |
<input type="button" name="fail" value="$lt{'fail'}" |
<input type="button" name="fail" value="$lt{'fail'}" |
onclick="javascript:onFailRest()" /> |
onclick="javascript:onFailRest()" /> |
</div> |
</div> |
$file_list |
$file_list |
INFO |
INFO |
return $result; |
return $result; |
|
|
} |
} |
|
|
sub done_screen { |
sub done_screen { |
my ($version) = @_; |
my ($version) = @_; |
my $title=&Apache::lonnet::gettitle(); |
my $title=&Apache::lonnet::gettitle($env{'request.uri'}); |
my @files=split(',',$Apache::lonhomework::history{'resource.'.$version.'.0.bridgetask.portfiles'}); |
my @files=split(',',$Apache::lonhomework::history{'resource.'.$version.'.0.bridgetask.portfiles'}); |
my (undef,undef,$domain,$user)= &Apache::lonnet::whichuser(); |
my (undef,undef,$domain,$user)= &Apache::lonnet::whichuser(); |
my $files = '<ul>'; |
my $files = '<ul>'; |
Line 620 sub start_Task {
|
Line 629 sub start_Task {
|
} |
} |
} |
} |
} |
} |
if ($target eq 'web' && $env{'request.state'} eq 'construct') { |
if ($target =~/(web|webgrade)/ && $env{'request.state'} eq 'construct') { |
$form_tag_start.=&Apache::structuretags::problem_web_to_edit_header($env{'form.rndseed'}); |
$form_tag_start.=&Apache::structuretags::problem_web_to_edit_header($env{'form.rndseed'}); |
} |
} |
if ($target eq 'web' |
if ($target eq 'web' |
Line 724 sub start_Task {
|
Line 733 sub start_Task {
|
if ($todo) { |
if ($todo) { |
&setup_env_for_other_user($todo,$safeeval); |
&setup_env_for_other_user($todo,$safeeval); |
my ($symb,$uname,$udom)=&decode_queue_key($todo); |
my ($symb,$uname,$udom)=&decode_queue_key($todo); |
$result.="\n".'<table><tr><td>Found '. |
if ($env{'request.state'} eq 'construct') { |
&Apache::lonnet::gettitle($symb).' for '.$uname.' at '.$udom.'</td></tr></table>'; |
$symb = $env{'request.uri'}; |
|
} |
|
$result.="\n".'<p>'. |
|
&mt('Grading [_1] for [_2] at [_3]', |
|
&Apache::lonnet::gettitle($symb),$uname,$udom).'</p>'; |
$form_tag_start.= |
$form_tag_start.= |
'<input type="hidden" name="gradingkey" value="'. |
'<input type="hidden" name="gradingkey" value="'. |
&escape($todo).'" />'; |
&escape($todo).'" />'; |
Line 800 sub start_Task {
|
Line 813 sub start_Task {
|
} |
} |
} |
} |
if ($webgrade eq 'yes') { $result.=&webgrade_standard_info(); } |
if ($webgrade eq 'yes') { $result.=&webgrade_standard_info(); } |
|
} elsif ($target eq 'webgrade' |
|
&& $env{'request.state'} eq 'construct') { |
|
$result.=$form_tag_start; |
|
$result.='<input type="hidden" name="webgrade" value="'. |
|
$webgrade.'" />'; |
|
$result.=&webgrade_standard_info(); |
} |
} |
if ($target eq 'webgrade') { |
if ($target eq 'webgrade') { |
$result.="\n".'<div id="LC_GRADING_criterialist">'; |
$result.="\n".'<div id="LC_GRADING_criterialist">'; |
Line 847 sub get_key_todo {
|
Line 866 sub get_key_todo {
|
my ($target)=@_; |
my ($target)=@_; |
my $todo; |
my $todo; |
|
|
|
if ($env{'request.state'} eq 'construct') { |
|
my ($symb,$cid,$udom,$uname) = &Apache::lonnet::whichuser(); |
|
my $gradingkey=&encode_queue_key($symb,$udom,$uname); |
|
return ($gradingkey); |
|
} |
|
|
if (defined($env{'form.reviewasubmission'})) { |
if (defined($env{'form.reviewasubmission'})) { |
&Apache::lonxml::debug("review a submission...."); |
&Apache::lonxml::debug("review a submission...."); |
$env{'form.queue'}='reviewqueue'; |
$env{'form.queue'}='reviewqueue'; |
Line 1057 DONEBUTTON
|
Line 1082 DONEBUTTON
|
if (&show_task($status,$previous) && |
if (&show_task($status,$previous) && |
$Apache::lonhomework::history{"resource.$version.0.status"} =~ /^(pass|fail)$/) { |
$Apache::lonhomework::history{"resource.$version.0.status"} =~ /^(pass|fail)$/) { |
my $bt_status=$Apache::lonhomework::history{"resource.$version.0.status"}; |
my $bt_status=$Apache::lonhomework::history{"resource.$version.0.status"}; |
my $title=&Apache::lonnet::gettitle(); |
my $title=&Apache::lonnet::gettitle($env{'request.uri'}); |
|
|
my $start_time; |
my $start_time; |
|
|
my $slot_name= |
my $slot_name= |
Line 3015 sub proctor_validation_screen {
|
Line 3039 sub proctor_validation_screen {
|
my ($slot) = @_; |
my ($slot) = @_; |
my (undef,undef,$domain,$user) = &Apache::lonnet::whichuser(); |
my (undef,undef,$domain,$user) = &Apache::lonnet::whichuser(); |
my $url=&Apache::lonnet::studentphoto($domain,$user,'jpg'); |
my $url=&Apache::lonnet::studentphoto($domain,$user,'jpg'); |
|
if ($url ne '/adm/lonKaputt/lonlogo_broken.gif') { |
|
$url = "<tr><td colspan=\"2\"><img src=\"$url\" /></td></tr>"; |
|
} else { |
|
undef($url); |
|
} |
|
|
my $name=&Apache::loncommon::plainname($user,$domain); |
my $name=&Apache::loncommon::plainname($user,$domain); |
|
|
my $msg; |
my $msg; |
if ($env{'form.proctorpassword'}) { |
if ($env{'form.proctorpassword'}) { |
$msg='<p><font color="red">'.&mt("Failed to authenticate the proctor.") |
$msg.='<p><span class="LC_warning">' |
.'</font></p>'; |
.&mt("Failed to authenticate the proctor.") |
|
.'</span></p>'; |
} |
} |
|
|
|
my $valid; |
|
my @possible_proctors=split(",",$slot->{'proctor'}); |
|
foreach my $proctor (@possible_proctors) { |
|
if ($proctor =~ /$LONCAPA::username_re:$LONCAPA::domain_re/) { |
|
$valid = 1; |
|
last; |
|
} |
|
} |
|
if (!$valid) { |
|
$msg.='<p><span class="LC_error">' |
|
.&mt("No valid poctors are defined.") |
|
.'</span></p>'; |
|
} |
|
|
if (!$env{'form.proctordomain'}) { $env{'form.proctordomain'}=$domain; } |
if (!$env{'form.proctordomain'}) { $env{'form.proctordomain'}=$domain; } |
|
my $uri = &Apache::lonenc::check_encrypt($env{'request.uri'}); |
|
$uri = &HTML::Entities::encode($uri,'<>&"'); |
my $result= (<<ENDCHECKOUT); |
my $result= (<<ENDCHECKOUT); |
<h2>Proctor Validation</h2> |
<h2>Proctor Validation</h2> |
<p>Your room's proctor needs to validate your access to this resource.</p> |
<p>Your room's proctor needs to validate your access to this resource.</p> |
$msg |
$msg |
<form name="checkout" method="post" action="$env{'request.uri'}"> |
<form name="checkout" method="post" action="$uri"> |
<input type="hidden" name="validate" value="yes" /> |
<input type="hidden" name="validate" value="yes" /> |
<input type="hidden" name="submitted" value="yes" /> |
<input type="hidden" name="submitted" value="yes" /> |
<table> |
<table> |
Line 3043 sub proctor_validation_screen {
|
Line 3091 sub proctor_validation_screen {
|
<tr><td>Name:</td><td>$name</td></tr> |
<tr><td>Name:</td><td>$name</td></tr> |
<tr><td>Student ID:</td><td>$env{'environment.id'}</td></tr> |
<tr><td>Student ID:</td><td>$env{'environment.id'}</td></tr> |
<tr><td>Usename</td><td>$user:$domain</td></tr> |
<tr><td>Usename</td><td>$user:$domain</td></tr> |
<tr><td colspan="2"><img src="$url" /></td></tr> |
$url |
</table> |
</table> |
</tr></td> |
</tr></td> |
</table> |
</table> |