--- loncom/interface/slotrequest.pm 2019/06/28 19:46:03 1.141 +++ loncom/interface/slotrequest.pm 2021/01/18 21:46:09 1.143 @@ -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.141 2019/06/28 19:46:03 raeburn Exp $ +# $Id: slotrequest.pm,v 1.143 2021/01/18 21:46:09 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -56,10 +56,13 @@ sub fail { } sub start_page { - my ($r,$title,$brcrum,$js)=@_; + my ($r,$title,$brcrum,$bread_crumbs_component,$js)=@_; my $args; if (ref($brcrum) eq 'ARRAY') { $args = {bread_crumbs => $brcrum}; + if ($bread_crumbs_component) { + $args->{bread_crumbs_component} = $bread_crumbs_component; + } } if (($env{'form.requestattempt'}) || ($env{'form.command'} eq 'manageresv')) { my %loaditems = ( @@ -769,7 +772,7 @@ sub release_slot { my ($result,$msg) = &release_reservation($slot_name,$uname,$udom,$symb,$mgr); if (!$result) { - $r->print('

'.&mt($msg).'

'); + $r->print('

'.&mt($msg).'

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

$msg

"); } @@ -941,7 +944,7 @@ sub release_reservation { } else { if (keys(%to_delete)) { $msg = &mt('Reservation release partially complete for [_1]',$description); - } else { + } else { $msg = &mt('No entries found for this user to release for [_1].',$description); } return (0,$msg); @@ -995,7 +998,7 @@ sub release_reservation { # # If release is *not* because of a reservation change, i.e., this is a "drop" - # by a student, or a removal for a single student by an instructor then + # by a student, or a removal for a single student by an instructor then # only remove one entry from slot_reservations.db, where both the user # and the symb match the current context. If useslots was set to map or # map_map, then the symb to match in slot_reservations.db is the symb of @@ -1006,7 +1009,7 @@ sub release_reservation { if ($parm_level == 2) { $symb_to_check = $map_symb; } else { - $symb_to_check = $parm_symb; + $symb_to_check = $parm_symb; } foreach my $entry (keys(%consumed)) { if ( $consumed{$entry}->{'name'} eq ($uname.':'.$udom) ) { @@ -1024,16 +1027,16 @@ sub release_reservation { $cnum,$udom,$uname,$context) =~ /^error/) { if ($mgr eq 'F') { $msg = &mt('Reservation release partially complete for: [_1]',"$uname:$udom").'
'. - &mt('Update of availablestudent parameter for [_1] was not completed.',"$uname:$udom"); + &mt('Update of availablestudent parameter for [_1] was not completed.',"$uname:$udom"); } else { $msg = &mt('Release partially complete for: [_1]',$description); } return (0,$msg); } else { if ($mgr eq 'F') { - $msg = &mt('Released Reservation for user: [_1]',"$uname:$udom"); + $msg = &mt('Released Reservation for user: [_1]',"$uname:$udom"); } else { - $msg = ''.&mt('Released reservation: [_1]',$description).'

'; + $msg = ''.&mt('Released reservation: [_1]',$description).'

'; my $person = &Apache::loncommon::plainname($env{'user.name'},$env{'user.domain'}); my $subject = &mt('Reservation change: [_1]',$description); my $msgbody = &mt('Reservation released by [_1] for [_2].',$person,$description); @@ -1119,7 +1122,7 @@ sub delete_slot { if ($ret eq 'ok') { $r->print('

'.&mt('Slot [_1] marked as deleted.',''.$slot_name.'').'

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

'.&mt('An error occurred when attempting to delete slot: [_1]',''.$slot_name.'')." ($ret)

"); + $r->print('

'.&mt('An error occurred when attempting to delete slot: [_1]',''.$slot_name.'')." ($ret)

"); } } else { if (%consumed) { @@ -1151,9 +1154,9 @@ sub get_slot { my $slot_name=&check_for_conflict($symb,$env{'form.slotname'},\%slot); if ($slot_name =~ /^error: (.*)/) { - $r->print('

' + $r->print('

' .&mt('An error occurred while attempting to make a reservation. ([_1])',$1) - .'

'); + .'

'); &return_link($r); return 0; } @@ -1206,9 +1209,9 @@ STUFF if (defined($reserved)) { my $retvalue = 0; if ($slot_name =~ /^error: (.*)/) { - $r->print('

' + $r->print('

' .&mt('An error occurred while attempting to make a reservation. ([_1])',$1) - .'

'); + .'

'); } elsif ($reserved > -1) { $r->print('

'.&mt('Successfully signed up: [_1]',$description).'

'); $retvalue = 1; @@ -1663,10 +1666,6 @@ sub show_table { } my $available; if ($mgr eq 'F') { - # FIXME: This line should be deleted once Slots uses breadcrumbs - $r->print('
'.&Apache::loncommon::help_open_topic( - 'Slot About', &mt('Help on slots'))); - $r->print('
'); $r->print('
@@ -1676,7 +1675,7 @@ sub show_table { $r->print('
'); - $r->print(&Apache::loncommon::help_open_topic('Slot AddInterface')); + $r->print(&Apache::loncommon::help_open_topic('Slot About')); $r->print('
'); } @@ -3300,6 +3299,9 @@ sub csv_upload_assign { 'secret','symb') { if ($entries{$fields{$key}}) { $slot{$key}=$entries{$fields{$key}}; + if ($key eq 'maxspace') { + $slot{$key} =~ s/\D+//g; + } } } if ($entries{$fields{'iptied'}} =~ /^\s*(yes|1)\s*$/i) { @@ -3407,7 +3409,7 @@ sub handler { &Apache::loncommon::get_unprocessed_cgi($ENV{'QUERY_STRING'}); my %crumb_titles = &slot_command_titles(); - my $brcrum; + my ($brcrum,$bread_crumbs_component); my $vgr=&Apache::lonnet::allowed('vgr',$env{'request.course.id'}); my $mgr=&Apache::lonnet::allowed('mgr',$env{'request.course.id'}); @@ -3443,8 +3445,10 @@ sub handler { } elsif ($vgr eq 'F') { if ($env{'form.command'} =~ /^(slotlog|showslots|uploadstart|csvuploadmap|csvuploadassign|delete|release|remove_registration)$/) { $brcrum =[{href=>"/adm/slotrequest?command=showslots", - text=>$crumb_titles{'showslots'}}]; + text=>$crumb_titles{'showslots'}, + help=>'Slot_Use'}]; $title = 'Managing Slots'; + $bread_crumbs_component = 'Slots'; unless ($env{'form.command'} eq 'showslots') { if (ref($brcrum) eq 'ARRAY') { push(@{$brcrum},{href=>"/adm/slotrequest?command=$env{'form.command'}",text=>$crumb_titles{$env{'form.command'}}}); @@ -3472,7 +3476,7 @@ sub handler { if (($env{'form.requestattempt'}) || ($env{'form.command'} eq 'manageresv')) { $js = &reservation_js(\%slots,$consumed_uniqueperiods,$available,$got_slots,$symb); } - &start_page($r,$title,$brcrum,$js); + &start_page($r,$title,$brcrum,$bread_crumbs_component,$js); if ($env{'form.command'} eq 'manageresv') { $allavailable = $available;