Diff for /loncom/interface/slotrequest.pm between versions 1.125.2.6 and 1.125.2.7

version 1.125.2.6, 2018/09/14 21:06:22 version 1.125.2.7, 2019/06/22 19:18:28
Line 729  sub release_reservation { Line 729  sub release_reservation {
     }      }
     my $new_param = join(':',@new_slots);      my $new_param = join(':',@new_slots);
   
       # Get value of useslots parameter in effect for this user.
       # If value is map or map_map, then the parm level is 2 (i.e.,
       # non-recursive enclosing map/folder level for specific user)
       # and the symb for this reservation in slot_reservations.db
       # will be the symb of the map itself.
   
       my $use_slots = &Apache::lonnet::EXT("resource.0.useslots",
                                            $symb,$udom,$uname);
       &Apache::lonxml::debug("use_slots is  $use_slots<br />");
   
       if (&Apache::lonnet::error($use_slots)) {
           return (0,'error: Unable to determine current status');
       }
   
       my $parm_level = 1;
       my $parm_symb = $passed_resource->symb();
       if ($use_slots eq 'map' || $use_slots eq 'map_map') {
           $parm_level = 2;
           unless ($passed_resource->is_map()) {
               my ($map) = &Apache::lonnet::decode_symb($parm_symb);
               $parm_symb = &Apache::lonnet::symbread($map);
           }
       }
   
     my ($cnum,$cdom)=&get_course();      my ($cnum,$cdom)=&get_course();
   
     # get slot reservations, check if user has one, if so remove reservation      # get slot reservations, check if user has one for the
       # correct symb, and if so, remove the reservation
     my %consumed=&Apache::lonnet::dump('slot_reservations',$cdom,$cnum,      my %consumed=&Apache::lonnet::dump('slot_reservations',$cdom,$cnum,
        "^$slot_name\0");         "^$slot_name\0");
     foreach my $entry (keys(%consumed)) {      foreach my $entry (keys(%consumed)) {
  if ( $consumed{$entry}->{'name'} eq ($uname.':'.$udom) ) {          if (($consumed{$entry}->{'name'} eq $uname.':'.$udom) &&
               ($consumed{$entry}->{'symb'} eq $parm_symb)) {
     &Apache::lonnet::del('slot_reservations',[$entry],      &Apache::lonnet::del('slot_reservations',[$entry],
  $cdom,$cnum);   $cdom,$cnum);
             my %storehash = (              my %storehash = (
Line 751  sub release_reservation { Line 777  sub release_reservation {
  }   }
     }      }
   
     my $use_slots = &Apache::lonnet::EXT("resource.0.useslots",  
  $symb,$udom,$uname);  
     &Apache::lonxml::debug("use_slots is  $use_slots<br />");  
   
     if (&Apache::lonnet::error($use_slots)) {   
  return (0,'error: Unable to determine current status');  
     }  
   
     my $parm_level = 1;  
     if ($use_slots eq 'map' || $use_slots eq 'map_map') {  
  $parm_level = 2;  
     }  
     # store new parameter string      # store new parameter string
     my $result=&Apache::lonparmset::storeparm_by_symb($symb,      my $result=&Apache::lonparmset::storeparm_by_symb($symb,
       '0_availablestudent',        '0_availablestudent',

Removed from v.1.125.2.6  
changed lines
  Added in v.1.125.2.7


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>