version 1.35, 2002/10/14 19:06:21
|
version 1.44, 2003/02/05 01:39:32
|
Line 218 sub DownloadCourseInformation {
|
Line 218 sub DownloadCourseInformation {
|
$courseID.'.db', |
$courseID.'.db', |
$Apache::lonnet::perlvar{'lonUsersDir'}); |
$Apache::lonnet::perlvar{'lonUsersDir'}); |
|
|
if($lastDownloadTime >= $modifiedTime && $modifiedTime >= 0) { |
if($lastDownloadTime ne 'Not downloaded' && |
|
$lastDownloadTime >= $modifiedTime && $modifiedTime >= 0) { |
# Data is not gathered so return UpToDate as true. This |
# Data is not gathered so return UpToDate as true. This |
# will be interpreted in ProcessClasslist |
# will be interpreted in ProcessClasslist |
$courseData{$namedata.':lastDownloadTime'}=time; |
$courseData{$namedata.':lastDownloadTime'}=time; |
Line 310 sub ProcessTopResourceMap {
|
Line 311 sub ProcessTopResourceMap {
|
} |
} |
|
|
my $oldkeys; |
my $oldkeys; |
|
delete $cache->{'OptionResponses'}; |
if(defined($cache->{'ResourceKeys'})) { |
if(defined($cache->{'ResourceKeys'})) { |
$oldkeys = $cache->{'ResourceKeys'}; |
$oldkeys = $cache->{'ResourceKeys'}; |
foreach (split(':::', $cache->{'ResourceKeys'})) { |
foreach (split(':::', $cache->{'ResourceKeys'})) { |
Line 487 sub ProcessTopResourceMap {
|
Line 489 sub ProcessTopResourceMap {
|
} |
} |
my @titleLength=split(//,$cache->{$currentSequence. |
my @titleLength=split(//,$cache->{$currentSequence. |
':title'}); |
':title'}); |
# $extra is 3 for problems correct and 3 for space |
# $extra is 5 for problems correct and 3 for space |
# between problems correct and problem output |
# between problems correct and problem output |
my $extra = 6; |
my $extra = 8; |
if(($totalProblems + $extra) > (scalar @titleLength)) { |
if(($totalProblems + $extra) > (scalar @titleLength)) { |
$cache->{$currentSequence.':columnWidth'}= |
$cache->{$currentSequence.':columnWidth'}= |
$totalProblems + $extra; |
$totalProblems + $extra; |
Line 518 sub ProcessTopResourceMap {
|
Line 520 sub ProcessTopResourceMap {
|
# big problem, need to handle. Next is probably wrong |
# big problem, need to handle. Next is probably wrong |
my $errorMessage = 'Big problem in '; |
my $errorMessage = 'Big problem in '; |
$errorMessage .= 'loncoursedata::ProcessTopLevelMap.'; |
$errorMessage .= 'loncoursedata::ProcessTopLevelMap.'; |
$errorMessage .= ' bighash to_$currentResourceID not defined!'; |
$errorMessage .= " bighash to_$currentResourceID not defined!"; |
&Apache::lonnet::logthis($errorMessage); |
&Apache::lonnet::logthis($errorMessage); |
last; |
if (!defined($currentResourceID)) {last;} |
} |
} |
my @nextResources=(); |
my @nextResources=(); |
foreach (split(/\,/,$hash{'to_'.$currentResourceID})) { |
foreach (split(/\,/,$hash{'to_'.$currentResourceID})) { |
Line 1179 sub DownloadStudentCourseData {
|
Line 1181 sub DownloadStudentCourseData {
|
my $WhatIWant; |
my $WhatIWant; |
$WhatIWant = '(^version:|'; |
$WhatIWant = '(^version:|'; |
$WhatIWant .= '^\d+:.+?:(resource\.\d+\.'; |
$WhatIWant .= '^\d+:.+?:(resource\.\d+\.'; |
$WhatIWant .= '(solved|tries|previous|awarded|(\d+\.submission))\s*$'; |
$WhatIWant .= '(solved|tries|previous|awarded|(\d+\.submission))\s*$';#' |
$WhatIWant .= '|timestamp)'; |
$WhatIWant .= '|timestamp)'; |
$WhatIWant .= ')'; |
$WhatIWant .= ')'; |
# $WhatIWant = '.'; |
# $WhatIWant = '.'; |
Line 1429 sub get_classlist {
|
Line 1431 sub get_classlist {
|
($end,$start,$id,$section,$fullname) = @Values; |
($end,$start,$id,$section,$fullname) = @Values; |
} else { # We have to get the data ourselves |
} else { # We have to get the data ourselves |
($end,$start) = @Values; |
($end,$start) = @Values; |
$section = &Apache::lonnet::usection($sdom,$sname,$cid); |
$section = &Apache::lonnet::getsection($sdom,$sname,$cid); |
my %info=&Apache::lonnet::get('environment', |
my %info=&Apache::lonnet::get('environment', |
['firstname','middlename', |
['firstname','middlename', |
'lastname','generation','id'], |
'lastname','generation','id'], |
Line 1438 sub get_classlist {
|
Line 1440 sub get_classlist {
|
if ($tmp =~/^(con_lost|error|no_such_host)/i) { |
if ($tmp =~/^(con_lost|error|no_such_host)/i) { |
$fullname = 'not available'; |
$fullname = 'not available'; |
$id = 'not available'; |
$id = 'not available'; |
|
&Apache::lonnet::logthis('unable to retrieve environment '. |
|
'for '.$sname.':'.$sdom); |
} else { |
} else { |
$fullname = &ProcessFullName(@info{qw/lastname generation |
$fullname = &ProcessFullName(@info{qw/lastname generation |
firstname middlename/}); |
firstname middlename/}); |
$id = $info{'id'}; |
$id = $info{'id'}; |
} |
} |
# At this point, if we have the data (check for 'not available's |
# Update the classlist with this students information |
# we could put it back into the classlist.db file. |
if ($fullname ne 'not available') { |
# We have not decided to do that yet. |
my $enrolldata = join(':',$end,$start,$id,$section,$fullname); |
|
my $reply=&Apache::lonnet::cput('classlist', |
|
{$student => $enrolldata}, |
|
$cdom,$cnum); |
|
if ($reply !~ /^(ok|delayed)/) { |
|
&Apache::lonnet::logthis('Unable to update classlist for '. |
|
'student '.$sname.':'.$sdom. |
|
' error:'.$reply); |
|
} |
|
} |
} |
} |
my $status='Expired'; |
my $status='Expired'; |
if(((!$end) || $now < $end) && ((!$start) || ($now > $start))) { |
if(((!$end) || $now < $end) && ((!$start) || ($now > $start))) { |
Line 1467 sub get_classlist {
|
Line 1480 sub get_classlist {
|
1; |
1; |
__END__ |
__END__ |
|
|
|
|