--- loncom/homework/grades.pm 2007/10/04 02:00:29 1.443 +++ loncom/homework/grades.pm 2007/10/08 21:05:54 1.445 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # The LON-CAPA Grading handler # -# $Id: grades.pm,v 1.443 2007/10/04 02:00:29 banghart Exp $ +# $Id: grades.pm,v 1.445 2007/10/08 21:05:54 banghart Exp $ # # Copyright Michigan State University Board of Trustees # @@ -6954,7 +6954,9 @@ sub grading_menu { # # Define menu data - + $env{'form.probTitle'} = &Apache::lonnet::gettitle($symb); + my ($table) = &showResourceInfo($symb,$env{'form.probTitle'}); + $request->print($table); my %fields = ('symb'=>&Apache::lonenc::check_encrypt($symb), 'handgrade'=>$hdgrade, 'probTitle'=>$probTitle, @@ -6988,7 +6990,8 @@ sub grading_menu { &mt('')}); $fields{'command'} = 'verify'; $url = &Apache::lonhtmlcommon::build_url('grades/',\%fields); - push (@menu, { url => $url, + push (@menu, { url => "", + jscript => ' onClick="javascript:checkChoice2(document.forms.gradingMenu,\'5\',\'verify\')" ', name => &mt('Verify Receipt'), short_description => &mt('')}); @@ -7008,16 +7011,36 @@ sub grading_menu { # # Create the menu my $Str; - $Str .= '

'.&mt('Please select a grading task').'

'; + # $Str .= '

'.&mt('Please select a grading task').'

'; + $Str .= '
'; + $Str .= ''. + ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n". + ''."\n"; + foreach my $menudata (@menu) { - $Str .='

'. - $menudata->{'name'}."

\n"; + if ($menudata->{'name'} ne &mt('Verify Receipt')) { + $Str .='

{'jscript'}. + ' href="'. + $menudata->{'url'}.'" >'. + $menudata->{'name'}."

\n"; + } else { + $Str .='

{'jscript'}. + ' nohref="nohref" >'. + $menudata->{'name'}."

\n"; + $Str .= ' receipt: '.&Apache::lonnet::recprefix($env{'request.course.id'}). + '-'; + } $Str .= ' '.(' 'x8).$menudata->{'short_description'}. "\n"; } $Str .="\n"; - + $Str .="
\n"; $request->print(< function checkChoice(formname,val,cmdx) { @@ -7038,6 +7061,22 @@ sub grading_menu { } if (val < 7) formname.submit(); } + function checkChoice2(formname,val,cmdx) { + if (val <= 2) { + var cmd = radioSelection(formname.radioChoice); + var cmdsave = cmd; + } else { + cmd = cmdx; + cmdsave = 'submission'; + } + formname.command.value = cmd; + if (val < 5) formname.submit(); + if (val == 5) { + if (!checkReceiptNo(formname,'notOK')) { return false;} + formname.submit(); + } + if (val < 7) formname.submit(); + } function checkReceiptNo(formname,nospace) { var receiptNo = formname.receipt.value; @@ -7768,6 +7807,7 @@ sub handler { $request->send_http_header; return '' if $request->header_only; &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}); + &Apache::lonnet::logthis("receipt is ".$env{'form.receipt'}); my $symb=&get_symb($request,1); my @commands=&Apache::loncommon::get_env_multiple('form.command'); my $command=$commands[0];