--- loncom/interface/slotrequest.pm 2005/06/04 07:44:48 1.3 +++ loncom/interface/slotrequest.pm 2005/06/04 08:17:06 1.4 @@ -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.3 2005/06/04 07:44:48 albertel Exp $ +# $Id: slotrequest.pm,v 1.4 2005/06/04 08:17:06 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -105,6 +105,35 @@ sub space_available { return 0; } +sub check_for_reservation { + my ($symb)=@_; + my $student = &Apache::lonnet::EXT("resource.0.availablestudent", $symb, + $env{'user.domain'}, $env{'user.name'}); + + my $course = &Apache::lonnet::EXT("resource.0.available", $symb, + $env{'user.domain'}, $env{'user.name'}); + my @slots = (split(/:/,$student), split(/:/, $course)); + + &Apache::lonxml::debug(" slot list is ".join(':',@slots)); + + my ($cnum,$cdom)=&get_course(); + my %slots=&Apache::lonnet::get('slots', [@slots], $cdom, $cnum); + + foreach my $slot_name (@slots) { + next if (!defined($slots{$slot_name}) || + !ref($slots{$slot_name})); + &Apache::lonxml::debug(time." $slot_name ". + $slots{$slot_name}->{'starttime'}." -- ". + $slots{$slot_name}->{'startreserve'}); + if ($slots{$slot_name}->{'starttime'} > time && + $slots{$slot_name}->{'startreserve'} < time) { + # between start of reservation times and start of slot + return($slot_name, $slots{$slot_name}); + } + } + return (undef,undef); +} + # FIXME - depends on the parameter for the resource to be correct # tho prevent multiple reservations @@ -257,7 +286,7 @@ sub get_description { my ($slot_name,$slot)=@_; my $description=$slot->{'description'}; if (!defined($description)) { - $description=&mt('[_1] From [_2] to [_3]',$slot, + $description=&mt('[_1] From [_2] to [_3]',$slot_name, &Apache::lonlocal::locallocaltime($slot->{'starttime'}), &Apache::lonlocal::locallocaltime($slot->{'endtime'})); }