--- loncom/interface/slotrequest.pm 2009/03/27 11:39:07 1.92 +++ loncom/interface/slotrequest.pm 2009/08/05 16:12:53 1.101 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Handler for requesting to have slots added to a students record # -# $Id: slotrequest.pm,v 1.92 2009/03/27 11:39:07 bisitz Exp $ +# $Id: slotrequest.pm,v 1.101 2009/08/05 16:12:53 bisitz Exp $ # # Copyright Michigan State University Board of Trustees # @@ -707,7 +707,8 @@ $lt{'or'} STUFF if (!$inhibit_return_link) { - $r->print(&mt('or').'

').&return_link($r); + $r->print(&mt('or').'

'); + &return_link($r); } else { $r->print('

'); } @@ -1351,9 +1352,13 @@ LOGLINK my $remove_all=&remove_link($slot,'remove all').'
'; - if ($ids ne '') { undef($delete); } - if ($slots{$slot}{'type'} ne 'schedulable_student' - || $ids eq '') { + if ($ids eq '') { + undef($remove_all); + } else { + undef($delete); + } + if ($slots{$slot}{'type'} ne 'schedulable_student') { + undef($showlog); undef($remove_all); } @@ -1595,9 +1600,9 @@ sub show_map_row { $output .= ''; } if ($type eq 'page') { - $output .= ' '."\n"; + $output .= ' '."\n"; } else { - $output .= ' '."\n"; + $output .= ' '."\n"; } $output .= $title.' '."\n"; unshift (@{$maprows},$output); @@ -1618,7 +1623,7 @@ sub show_reservations { my %log=&Apache::lonnet::dump('nohist_'.$cdom.'_'.$cnum.'_slotlog',$udom,$uname); if ($env{'form.origin'} eq 'aboutme') { $r->print('
'. - &mt('History of student-schedulable slots for: [_1]', + &mt('History of student-reservable slots for: [_1]', &Apache::loncommon::plainname($env{'form.uname'},$env{'form.udom'}, 'firstname')).'
'); } @@ -1731,7 +1736,7 @@ ENDSCRIPT } } else { $r->print('' - .&mt('There are no transactions to display') + .&mt('There are no transactions to display.') .'' ); } @@ -1748,6 +1753,26 @@ ENDSCRIPT sub show_reservations_log { my ($r) = @_; + my $badslot; + if ($env{'form.slotname'} eq '') { + $r->print('
'.&mt('No slot name provided').'
'); + $badslot = 1; + } else { + my %slot=&Apache::lonnet::get_slot($env{'form.slotname'}); + if (keys(%slot) == 0) { + $r->print('
'.&mt('Invalid slot name: [_1]',$env{'form.slotname'}).'
'); + $badslot = 1; + } elsif ($slot{type} ne 'schedulable_student') { + my $description = &get_description($env{'form.slotname'},\%slot); + $r->print('
'.&mt('Reservation history unavailable for non-student-reservable slot: [_1].',$description).'
'); + $badslot = 1; + } + } + if ($badslot) { + $r->print('

'. + &mt('Return to slot list').'

'); + return; + } my $formname = 'reservationslog'; my $cdom = $env{'course.'.$env{'request.course.id'}.'.domain'}; my $cnum = $env{'course.'.$env{'request.course.id'}.'.num'}; @@ -1810,8 +1835,8 @@ sub show_reservations_log { my %slot=&Apache::lonnet::get_slot($env{'form.slotname'}); my $description = $slot{'description'}; - $r->print('
'. - &mt('Reservation changes for slot: [_1]',$description).'
'); + $r->print(''. + &mt('Reservation changes for student-reservable slot: [_1]',$description).'
'); $r->print(&display_filter($formname,$cdom,$cnum,\%curr,$version,\@allsymbs)); my $showntablehdr = 0; @@ -1908,11 +1933,13 @@ function chgPage(caller) { ENDSCRIPT } } else { - $r->print(&mt('There are no records to display')); + $r->print(&mt('There are no records to display.')); } $r->print(''. ''. - ''); + ''. + '

'. + &mt('Return to slot list').'

'); return; } @@ -1964,7 +1991,7 @@ sub display_filter { my ($formname,$cdom,$cnum,$curr,$version,$allsymbs) = @_; my $nolink = 1; my (%titles,%maptitles); - my $output = '
'. + my $output = '
'. ''.&mt('Changes/page:').'
'. &Apache::lonmeta::selectbox('show',$curr->{'show'},undef, (&mt('all'),5,10,20,50,100,1000,10000)). @@ -2025,36 +2052,41 @@ sub display_filter { } $output .= '
  
'. - ''. - &mt('[_1]Note:[_2] Only changes made from servers running LON-CAPA 2.8.99.0 or later are displayed.'); + '

'. + &mt('Only changes made from servers running LON-CAPA [_1] or later are displayed.' + ,'2.6.99.0'); if ($version) { - $output .= ' '.&mt('This server is version [_3].','','',$version); + $output .= ' '.&mt('This LON-CAPA server is version [_1]',$version); } - $output .= '



'; + $output .= '



'; return $output; } sub upload_start { my ($r)=@_; - $r->print(&Apache::grades::checkforfile_js()); - my $result.=''."\n"; - $result.='
'."\n"; - $result.=' '. - &mt('Specify a file containing the slot definitions.'). - '
'."\n"; - my $upfile_select=&Apache::loncommon::upfile_select_html(); - my $ignore=&mt('Ignore First Line'); - $result.=< - -$upfile_select -
- - -ENDUPFORM - $result.='
'."\n"; - $result.='
'."\n"; - $r->print($result); + $r->print( + &Apache::grades::checkforfile_js() + .'

'.&mt('Specify a file containing the slot definitions.').'

' + .'
' + .'' + .&Apache::lonhtmlcommon::start_pick_box() + .&Apache::lonhtmlcommon::row_title(&mt('File')) + .&Apache::loncommon::upfile_select_html() + .&Apache::lonhtmlcommon::row_closure() + .&Apache::lonhtmlcommon::row_title( + '') + .'' + .&Apache::lonhtmlcommon::row_closure(1) + .&Apache::lonhtmlcommon::end_pick_box() + .'

' + .'' + .'

' + .'
' + ); } sub csvuploadmap_header { @@ -2076,8 +2108,8 @@ sub csvuploadmap_header { Total number of records found in file: $distotal
Enter as many fields as you can. The system will inform you and bring you back to this page if the data selected is insufficient to create the slots.
- - + + @@ -2101,7 +2133,7 @@ sub csvuploadmap_footer { -
+
ENDPICK }