--- loncom/interface/lonpickcode.pm 2005/12/20 18:54:54 1.8 +++ loncom/interface/lonpickcode.pm 2019/01/31 16:08:06 1.17 @@ -1,7 +1,7 @@ # The LearningOnline Network # Pick a CODE from the list of possible CODEs # -# $Id: lonpickcode.pm,v 1.8 2005/12/20 18:54:54 albertel Exp $ +# $Id: lonpickcode.pm,v 1.17 2019/01/31 16:08:06 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -39,7 +39,7 @@ sub get_code_freq { my ($r)=@_; my %codes; my %scantron_config= - &Apache::grades::get_scantron_config($env{'form.scantron_format'}); + &Apache::lonnet::get_scantron_config($env{'form.scantron_format'}); $r->rflush(); my ($scanlines,$scan_data)=&Apache::grades::scantron_getfile(); for (my $i=0;$i<=$scanlines->{'count'};$i++) { @@ -60,13 +60,6 @@ sub handler { &Apache::loncommon::content_type($r,'text/html'); $r->send_http_header; return OK if $r->header_only; - my $html=&Apache::lonxml::xmlbegin(); - $r->print(< - The LearningOnline Network with CAPA - -ENDDOCUMENT &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}, ['curCODE','scantron_selectfile', @@ -75,42 +68,69 @@ ENDDOCUMENT if (!($env{'request.course.id'}) && (&Apache::lonnet::allowed('usc',$env{'request.course.id'}))) { - $r->print('Access not allowed.'); + $r->print(&Apache::loncommon::start_page(). + '

'.&mt('Access not allowed.').'

'. + &Apache::loncommon::end_page()); return OK; } if ($env{'form.command'} eq 'codelist') { &code_list($r); + $r->print(&Apache::grades::show_grading_menu_form($env{'form.symb'}, + $env{'form.url'})); } elsif ($env{'form.command'} eq 'showcodes') { &show_codes($r); } else { &picking_a_code($r); } - $r->print(''); + $r->print(&Apache::loncommon::end_page()); return OK; } sub code_list { - my ($r,$secondview)=@_; - if (!$secondview) { - $r->print(&Apache::loncommon::bodytag("View CODEs")); - $r->print("

".&mt('Select a set of saved CODEs to view.')."

"); - } else { - $r->print("

".&mt('Select another set of saved CODEs to view.')."

"); - } - $r->print("
"); + my ($r,$context)=@_; + # $context = 0 Print page header and enclosing table + # $context = 1 No page header, print enclosing table + # $context = 2 No page header, no enclosing table + my $table_head; + my $extra_css; + if (!$context) { + $r->print(&Apache::loncommon::start_page("View CODEs",undef, + {'no_nav_bar' => 1})); + $table_head = &mt('Select a set of saved CODEs to view.'); + } elsif ($context eq 1) { + $table_head = &mt('Select another set of saved CODEs to view.'); + } elsif ($context eq 2) { + $table_head = &mt('Select a set of saved CODEs to view.'); + $extra_css = 'LC_scantron_action'; + } + $r->print(""); + $r->print(' + '.&Apache::loncommon::start_data_table($extra_css).' + '.&Apache::loncommon::start_data_table_header_row()); + $r->print(''); + $r->print($table_head); + $r->print(''); + $r->print(' + '.&Apache::loncommon::end_data_table_header_row().' + '.&Apache::loncommon::start_data_table_row()); + $r->print(''); + $r->print(" "); $r->print(&Apache::grades::scantron_CODElist()); + $r->print(''); + $r->print(' + '.&Apache::loncommon::end_data_table_row().' + '.&Apache::loncommon::end_data_table()); $r->print(""); $r->print(""); $r->print(""); - $r->print(""); $r->print("
"); - $r->print(&Apache::grades::show_grading_menu_form($env{'form.symb'}, - $env{'form.url'})); + } sub show_codes { my ($r)=@_; - $r->print(&Apache::loncommon::bodytag("View CODEs")); + $r->print(&Apache::loncommon::start_page("View CODEs",undef, + {'no_nav_bar' => 1})); my %codes=&Apache::grades::get_codes(); $r->print("

".$env{'form.scantron_CODElist'}."

"); $r->print('
');
@@ -119,13 +139,18 @@ sub show_codes {
     }
     $r->print('
'); &code_list($r,1); + $r->print(&Apache::grades::show_grading_menu_form($env{'form.symb'}, + $env{'form.url'})); } sub picking_a_code { my ($r)=@_; - $r->print(&Apache::loncommon::bodytag("Selecting a CODE")); - $r->print(< + my $title = 'Selecting a CODE'; + $r->print(&Apache::loncommon::start_page($title,undef, + {'no_nav_bar' => 1})); + $r->print('

'.&mt($title).'

'); + + $r->print(&Apache::lonhtmlcommon::scripttag(" function gochoose(newcode) { opener.document.$env{'form.form'}.scantron_CODE_selectedvalue.value=newcode; var slct=opener.document.$env{'form.form'}.scantron_CODE_resolution; @@ -135,18 +160,27 @@ function gochoose(newcode) { } self.close(); } - -ENDSCRIPT +")); - - $r->print("

The CODE on the paper is ".$env{'form.curCODE'}. - ". Please Select a new one.

\n".'
'); + $r->print( + '

' + .&mt('The CODE on the paper is [_1]. Please select a new one.', + ''.$env{'form.curCODE'}.'') + ."

\n".'' + ); my %codes=&Apache::grades::get_codes(); my %code_freq=&get_code_freq($r); my $num_matches=length($env{'form.curCODE'}); for (my $i=$num_matches;$i>=0;$i--) { - my $to_print="

CODEs with $i matches

"; - $to_print.=''; + my $to_print = + '

'.&mt('CODEs with [_1] matching letters:',$i)."

\n" + .&Apache::loncommon::start_data_table() + .&Apache::loncommon::start_data_table_header_row() + .'' + .'' + .'' + .&Apache::loncommon::end_data_table_header_row(); + my $print; foreach my $code (sort(keys(%codes))) { if (&Apache::grades::num_matches($env{'form.curCODE'},$code) != $i) { next; } @@ -158,15 +192,17 @@ ENDSCRIPT $count=scalar(@{$code_freq{$code}}); $list=' - '.join(', ',@{$code_freq{$code}}); } - $to_print.=''. - ''; - delete($codes{$code}); - } - $to_print.='
CODEexams using this CODE '.&mt('CODE').''.&mt('Bubblesheet Exams using this CODE').'
'. - ''.$code.''.$count. - $list.'
'; - if ($print) { $r->print($to_print); } + $to_print .= + &Apache::loncommon::start_data_table_row() + .'' + .''.$code.'' + .''.$count.$list.'' + .&Apache::loncommon::end_data_table_row(); + delete($codes{$code}); + } + $to_print .= &Apache::loncommon::end_data_table(); + if ($print) { $r->print($to_print); } } $r->print('
'); }