--- loncom/interface/slotrequest.pm 2006/06/16 19:49:00 1.64
+++ loncom/interface/slotrequest.pm 2006/10/17 15:11:26 1.69
@@ -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.64 2006/06/16 19:49:00 albertel Exp $
+# $Id: slotrequest.pm,v 1.69 2006/10/17 15:11:26 albertel Exp $
#
# Copyright Michigan State University Board of Trustees
#
@@ -77,7 +77,7 @@ sub end_page {
=cut
sub get_course {
- (undef,my $courseid)=&Apache::lonxml::whichuser();
+ (undef,my $courseid)=&Apache::lonnet::whichuser();
my $cdom=$env{'course.'.$courseid.'.domain'};
my $cnum=$env{'course.'.$courseid.'.num'};
return ($cnum,$cdom);
@@ -90,7 +90,7 @@ sub get_reservation_ids {
my %consumed=&Apache::lonnet::dump('slot_reservations',$cdom,$cnum,
"^$slot_name\0");
- if (&network_error(%consumed)) {
+ if (&Apache::lonnet::error(%consumed)) {
return 'error: Unable to determine current status';
}
my ($tmp)=%consumed;
@@ -127,8 +127,9 @@ sub check_for_reservation {
my ($cnum,$cdom)=&get_course();
my %slots=&Apache::lonnet::get('slots', [@slots], $cdom, $cnum);
- if (&network_error($student) || &network_error($course) ||
- &network_error(%slots)) {
+ if (&Apache::lonnet::error($student)
+ || &Apache::lonnet::error($course)
+ || &Apache::lonnet::error(%slots)) {
return 'error: Unable to determine current status';
}
my @got;
@@ -175,7 +176,8 @@ sub get_consumed_uniqueperiods {
my $course = &Apache::lonnet::EXT("resource.0.available",
$symb, $env{'user.domain'},
$env{'user.name'});
- if (&network_error($student) || &network_error($course)) {
+ if (&Apache::lonnet::error($student)
+ || &Apache::lonnet::error($course)) {
return 'error: Unable to determine current status';
}
foreach my $slot (split(/:/,$student), split(/:/, $course)) {
@@ -186,7 +188,7 @@ sub get_consumed_uniqueperiods {
if (!ref($slots)) {
my ($cnum,$cdom)=&get_course();
my %slots=&Apache::lonnet::get('slots', [keys(%used_slots)], $cdom, $cnum);
- if (&network_error(%slots)) {
+ if (&Apache::lonnet::error(%slots)) {
return 'error: Unable to determine current status';
}
$slots = \%slots;
@@ -212,7 +214,7 @@ sub check_for_conflict {
if (!ref($consumed_uniqueperiods)) {
$consumed_uniqueperiods = &get_consumed_uniqueperiods($slots);
- if (&network_error(%$consumed_uniqueperiods)) {
+ if (&Apache::lonnet::error(%$consumed_uniqueperiods)) {
return 'error: Unable to determine current status';
}
}
@@ -230,14 +232,6 @@ sub check_for_conflict {
}
-sub network_error {
- my ($result) = @_;
- if ($result =~ /^(con_lost|no_such_host|error: [^2])/) {
- return 1;
- }
- return 0;
-}
-
sub make_reservation {
my ($slot_name,$slot,$symb)=@_;
@@ -250,13 +244,14 @@ sub make_reservation {
my $use_slots = &Apache::lonnet::EXT("resource.0.useslots");
&Apache::lonxml::debug("use_slots is $use_slots
");
- if (&network_error($value) || &network_error($use_slots)) {
+ if (&Apache::lonnet::error($value)
+ || &Apache::lonnet::error($use_slots)) {
return 'error: Unable to determine current status';
}
my $parm_symb = $symb;
my $parm_level = 1;
- if ($use_slots eq 'map') {
+ if ($use_slots eq 'map' || $use_slots eq 'map_map') {
my ($map) = &Apache::lonnet::decode_symb($symb);
$parm_symb = &Apache::lonnet::symbread($map);
$parm_level = 2;
@@ -266,7 +261,7 @@ sub make_reservation {
if ($other_slot eq $slot_name) {
my %consumed=&Apache::lonnet::dump('slot_reservations', $cdom,
$cnum, "^$slot_name\0");
- if (&network_error($value)) {
+ if (&Apache::lonnet::error($value)) {
return 'error: Unable to determine current status';
}
my $me=$env{'user.name'}.':'.$env{'user.domain'};
@@ -283,7 +278,7 @@ sub make_reservation {
if (!defined($max)) { $max=99999; }
my (@ids)=&get_reservation_ids($slot_name);
- if (&network_error(@ids)) {
+ if (&Apache::lonnet::error(@ids)) {
return 'error: Unable to determine current status';
}
my $last=0;
@@ -338,7 +333,7 @@ sub remove_registration {
my ($cnum,$cdom)=&get_course();
my %consumed=&Apache::lonnet::dump('slot_reservations',$cdom,$cnum,
"^$slot_name\0");
- if (&network_error(%consumed)) {
+ if (&Apache::lonnet::error(%consumed)) {
$r->print("
".&mt('A network error has occured.').'
'); return; } @@ -490,12 +485,12 @@ sub release_reservation { my $use_slots = &Apache::lonnet::EXT("resource.0.useslots"); &Apache::lonxml::debug("use_slots is $use_slots