version 1.250, 2006/06/12 18:45:35
|
version 1.252, 2006/06/20 05:10:00
|
Line 244 sub check_slot_access {
|
Line 244 sub check_slot_access {
|
# does it pass normal muster |
# does it pass normal muster |
my ($status,$datemsg)=&check_access($id); |
my ($status,$datemsg)=&check_access($id); |
|
|
my $useslots = &Apache::lonnet::EXT("resource.$id.useslots"); |
my $useslots = &Apache::lonnet::EXT("resource.0.useslots"); |
if ($useslots ne 'resource' && $useslots ne 'map') { |
if ($useslots ne 'resource' && $useslots ne 'map' |
|
&& $useslots ne 'map_map') { |
return ($status,$datemsg); |
return ($status,$datemsg); |
} |
} |
|
|
Line 268 sub check_slot_access {
|
Line 269 sub check_slot_access {
|
} |
} |
|
|
my @slots= |
my @slots= |
(split(':',&Apache::lonnet::EXT("resource.$id.availablestudent")), |
(split(':',&Apache::lonnet::EXT("resource.0.availablestudent")), |
split(':',&Apache::lonnet::EXT("resource.$id.available"))); |
split(':',&Apache::lonnet::EXT("resource.0.available"))); |
|
|
# if (!@slots) { |
# if (!@slots) { |
# return ($status,$datemsg); |
# return ($status,$datemsg); |
Line 309 sub check_slot_access {
|
Line 310 sub check_slot_access {
|
$checkedin = |
$checkedin = |
$Apache::lonhomework::history{"resource.$version.0.checkedin"}; |
$Apache::lonhomework::history{"resource.$version.0.checkedin"}; |
} elsif ($type eq 'problem') { |
} elsif ($type eq 'problem') { |
$got_grade = 1; |
$got_grade = 1; |
$checkedin = $Apache::lonhomework::history{"resource.0.checkedin"}; |
$checkedin = $Apache::lonhomework::history{"resource.0.checkedin"}; |
|
$is_correct = |
|
($Apache::lonhomework::history{"resource.0.solved"} =~/^correct_/); |
} |
} |
|
|
&Apache::lonxml::debug(" slot is $slotstatus checkedin ($checkedin) got_grade ($got_grade) is_correct ($is_correct)"); |
&Apache::lonxml::debug(" slot is $slotstatus checkedin ($checkedin) got_grade ($got_grade) is_correct ($is_correct)"); |
Line 323 sub check_slot_access {
|
Line 326 sub check_slot_access {
|
return ('WAITING_FOR_GRADE'); |
return ('WAITING_FOR_GRADE'); |
} |
} |
|
|
|
# no slot is currently open, and has been checked in for this version |
|
# previous slot is therefore CLOSED, so therefore the problem is |
|
if (!defined($slot_name) |
|
&& $checkedin |
|
&& $type eq 'problem') { |
|
return ('CLOSED',$datemsg); |
|
} |
|
|
if ($slotstatus eq 'NOT_IN_A_SLOT' |
if ($slotstatus eq 'NOT_IN_A_SLOT' |
&& $checkedin ) { |
&& $checkedin ) { |
|
|