Diff for /loncom/interface/slotrequest.pm between versions 1.125.2.3.4.1 and 1.125.2.4

version 1.125.2.3.4.1, 2019/06/24 03:23:36 version 1.125.2.4, 2018/06/27 14:26: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 for the      # get slot reservations, check if user has one, if so remove reservation
     # 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 770  sub release_reservation { Line 744  sub release_reservation {
                                action  => 'release',                                 action  => 'release',
                                context => $env{'form.context'},                                 context => $env{'form.context'},
                         );                          );
             &Apache::lonnet::write_log('course','slotreservationslog',              &Apache::lonnet::write_log('slotreservationslog',\%storehash,
                                        \%storehash,1,$uname,$udom,$cnum,$cdom);                                         1,$uname,$udom,$cnum,$cdom);
             &Apache::lonnet::write_log('course',$cdom.'_'.$cnum.'_slotlog',              &Apache::lonnet::write_log($cdom.'_'.$cnum.'_slotlog',\%storehash,
                                        \%storehash,1,$uname,$udom,$uname,$udom);                                         1,$uname,$udom,$uname,$udom);
  }   }
     }      }
   
       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.3.4.1  
changed lines
  Added in v.1.125.2.4


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