--- loncom/homework/bridgetask.pm 2006/02/09 23:02:51 1.106 +++ loncom/homework/bridgetask.pm 2006/02/21 18:36:30 1.113 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # definition of tags that give a structure to a document # -# $Id: bridgetask.pm,v 1.106 2006/02/09 23:02:51 albertel Exp $ +# $Id: bridgetask.pm,v 1.113 2006/02/21 18:36:30 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -193,7 +193,7 @@ sub add_grading_button { $result.='<td>'.' <input type="submit" name="reviewagrading" value="'. &mt("Select an entry from the grading queue:").'" /> '; - $result.= &mt("[_1] entries, [_2] ready, [_3] being graded",$entries,$ready,$locks);' </td></tr>'."\n"; + $result.= &mt("[_1] entries, [_2] ready, [_3] being graded",$entries,$ready,$locks).' </td></tr>'."\n"; ($entries,$ready,$locks)=&get_queue_counts('reviewqueue'); $result.='<tr><td>'. @@ -375,13 +375,13 @@ sub webgrade_standard_info { my ($version)=&get_version(); my (undef,undef,$udom,$uname) = &Apache::lonxml::whichuser(); my $file_url = '/uploaded/'.$udom.'/'.$uname.'/portfolio/'; - my $file_list="<ul>\n"; + my $file_list="<ul class=\"handininfo\">\n"; foreach my $partial_file (split(',',$Apache::lonhomework::history{"resource.$version.0.bridgetask.portfiles"})) { my $file=$file_url.$partial_file; $file=~s|/+|/|g; &Apache::lonnet::allowuploaded('/adm/bridgetask',$file); $file_list.='<li><nobr><a href="'.$file.'?rawmode=1" target="lonGRDs"><img src="'. - &Apache::loncommon::icon($file).'" border=0"> '.$file. + &Apache::loncommon::icon($file).'" border="0"> '.$file. '</a></nobr></li>'."\n"; } $file_list.="</ul>\n"; @@ -391,11 +391,11 @@ sub webgrade_standard_info { ); my $result=<<INFO; -<div class="handininfo"> - <input type="submit" name="next" value="$lt{'done'}" /> - <input type="submit" name="stop" value="$lt{'stop'}" /> + <div class="maincontrols"> + <input type="submit" name="next" value="$lt{'done'}" /> + <input type="submit" name="stop" value="$lt{'stop'}" /> + </div> $file_list -</div> INFO return $result; } @@ -426,12 +426,21 @@ sub start_Task { $body_tag_start.=$uri.'">'.&add_grading_button()."</form>"; my $symb=&Apache::lonnet::symbread(); if (&Apache::lonnet::allowed('mgq',$env{'request.course.id'})) { - $body_tag_start.='<form method="POST" action="/adm/slotrequest">'. + $body_tag_start.='<form method="POST" name="slotrequest" action="/adm/slotrequest">'. '<input type="hidden" name="symb" value="'.$symb.'" />'. '<input type="hidden" name="command" value="showslots" />'. '<input type="submit" name="requestattempt" value="'. &mt('Show Slot list').'" />'. '</form>'; + my $target_id = + &Apache::lonstathelpers::make_target_id({symb => $symb, + part => '0'}); + $body_tag_start.='<form method="POST" name="gradingstatus" action="/adm/statistics">'. + '<input type="hidden" name="problemchoice" value="'.$target_id.'" />'. + '<input type="hidden" name="reportSelected" value="grading_analysis" />'. + '<input type="submit" name="grading" value="'. + &mt('Show Grading Status').'" />'. + '</form>'; } } } @@ -519,7 +528,7 @@ DONESCREEN $target eq 'webgrade') { my $webgrade='yes'; if ($target eq 'webgrade') { - $result.=$head_tag_start.$body_tag_start; + $result.=$head_tag_start.'</head>'.$body_tag_start; #$result.='<br />Review'.&show_queue('reviewqueue'); #$result.='<br />Grade'.&show_queue('gradingqueue'); } @@ -541,13 +550,9 @@ DONESCREEN $Apache::bridgetask::queue_key=$todo; &Apache::structuretags::initialize_storage(); &Apache::lonhomework::showhash(%Apache::lonhomework::history); - if ($target eq 'webgrade') { - #$result.='<br />After -'.&show_queue($env{'form.queue'}); - $result.="\n".'<table width="100%" style="width:100%" border="1">'; - if ($status_code eq 'selected') { - $form_tag_start.= - '<input type="hidden" name="queuemode" value="selected" />'; - } + if ($target eq 'webgrade' && $status_code eq 'selected') { + $form_tag_start.= + '<input type="hidden" name="queuemode" value="selected" />'; } } else { if ($target eq 'webgrade') { @@ -601,6 +606,9 @@ DONESCREEN } if ($webgrade eq 'yes') { $result.=&webgrade_standard_info(); } } + if ($target eq 'webgrade') { + $result.="\n".'<div id="criterialist">'; + } } elsif ($target eq 'edit') { $result.=$head_tag_start."</head>".$body_tag_start.$form_tag_start. &Apache::structuretags::problem_edit_header(); @@ -979,7 +987,7 @@ DONEBUTTON &Apache::structuretags::finalize_storage(); } } elsif ($target eq 'webgrade') { - $result.="</table>\n<hr />"; + $result.="</div>\n<hr />"; #$result.='<input type="submit" name="next" value="'. # &mt('Save & Next').'" /> '; #$result.='<input type="submit" name="end" value="'. @@ -1762,28 +1770,29 @@ sub get_instance { foreach my $id (@{$dimension{$instance.'.criterias'}}) { my $link='criteria_'.$instance.'_'.$id; my $status=$Apache::lonhomework::history{"resource.$version.0.$dim.$instance.$id.status"}; - $result.='<tr><td width="100%" valign="top">'. - '<a name="'.$link.'" />'. - '<a name="next_'.$last_link.'" />'. - '<br /><textarea enabled="false" style="width:100%" rows="8" width="25" wrap="hard">'; + $result.='<div class="criteria" id="'.$link.'">'."\n". + '<a name="'.$link.'" />'."\n". + '<a name="next_'.$last_link.'" />'."\n". + '<div class="criteriatext">'."\n"; @Apache::scripttag::parser_env = @_; $result.=&Apache::scripttag::xmlparse($dimension{$instance.'.criteria.'.$id}); - $result.='</textarea>'. + $result.='</div>'."\n". #$dimension{$instance.'.criteria.'.$id}. - '</td>'. - '<td><nobr>Additional Comment for Student</nobr> <br />'. - '<textarea style="width:100%" rows="8" width="25" wrap="hard" name="HWVAL_comment_'.$link.'">'.&HTML::Entities::encode($Apache::lonhomework::history{"resource.$version.0.$dim.$instance.$id.comment"}).'</textarea>'. - '</td>'. - '<td>'. - '<nobr><label><input type="radio" name="HWVAL_'.$link.'" value="ungraded" '.($status eq 'ungraded' || !$status ? 'checked="checked"':'').' />'.&mt('Ungraded').'</label></nobr><br />'. - '<label><input type="radio" name="HWVAL_'.$link.'" value="pass" '.($status eq 'pass' ? 'checked="checked"':'').' />'.&mt('Pass').'</label><br />'. - '<label><input type="radio" name="HWVAL_'.$link.'" value="fail" '.($status eq 'fail' ? 'checked="checked"':'').' />'.&mt('Fail').'</label><br />'. - '<label><input type="radio" name="HWVAL_'.$link.'" value="review" '.($status eq 'review' ? 'checked="checked"':'').' />'.&mt('Review').'</label><br />'. - '</td>'. - '<td>'. - '<a href="#'.$last_link.'">Prev</a><br />'. - '<a href="#next_'.$link.'">Next</a><br /><br /><br />'. - '</td></tr>'; + '<div class="grade">'."\n". + '<label class="ungraded"><input type="radio" name="HWVAL_'.$link.'" value="ungraded" '.($status eq 'ungraded' || !$status ? 'checked="checked"':'').' />'.&mt('Ungraded').'</label>'."\n". + '<label class="fail"><input type="radio" name="HWVAL_'.$link.'" value="fail" '.($status eq 'fail' ? 'checked="checked"':'').' />'.&mt('Fail').'</label>'."\n". + '<label class="pass"><input type="radio" name="HWVAL_'.$link.'" value="pass" '.($status eq 'pass' ? 'checked="checked"':'').' />'.&mt('Pass').'</label>'."\n". + '<label class="review"><input type="radio" name="HWVAL_'.$link.'" value="review" '.($status eq 'review' ? 'checked="checked"':'').' />'.&mt('Review').'</label>'."\n". + '</div>'."\n". + '<label class="comment">'.&mt('Additional Comment for Student')."\n". + '<textarea class="comment_area" name="HWVAL_comment_'.$link.'">'.&HTML::Entities::encode($Apache::lonhomework::history{"resource.$version.0.$dim.$instance.$id.comment"}).'</textarea>'."\n". + '</label>'."\n". + '<ul class="navbuttons">'."\n". + '<li><a href="#'.$last_link.'">Prev</a></li>'."\n". + '<li><a href="#next_'.$link.'">Next</a></li>'."\n". + '</ul>'."\n". + '</div>'."\n"; + $result.=&grading_history($version,$dim,$instance,$id); $last_link=$link; } } elsif ($target eq 'grade' && $env{'form.webgrade'}) { @@ -1832,6 +1841,38 @@ sub get_instance { } } +sub grading_history { + my ($version,$dim,$instance,$criteria) = @_; + if (!&Apache::lonnet::allowed('mgq',$env{'request.course.id'})) { + return ''; + } + my ($result,$grader); + my $scope="resource.$version.0.$dim.$instance.$criteria"; + foreach my $t (1..$Apache::lonhomework::history{'version'}) { + if (exists($Apache::lonhomework::history{$t.':resource.0.regrader'})) { + my ($gname,$gdom) = + split('@',$Apache::lonhomework::history{$t.':resource.0.regrader'}); + my $fullname = &Apache::loncommon::plainname($gname,$gdom); + $grader = &Apache::loncommon::aboutmewrapper($fullname, + $gname,$gdom); + } + my $entry; + if (exists($Apache::lonhomework::history{"$t:$scope.status"})) { + $entry.="<tt>".$Apache::lonhomework::history{"$t:$scope.status"}.'</tt>'; + } + if (exists($Apache::lonhomework::history{"$t:$scope.comment"})) { + $entry.=' comment: "'.$Apache::lonhomework::history{"$t:$scope.comment"}.'"'; + } + if ($entry) { + $result.= "<li>$grader : $entry </li>"; + } + } + if ($result) { + return '<ul class="pastgrading">'.$result.'</ul>'; + } + return ''; +} + sub start_IntroParagraph { my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; my $result;