--- loncom/interface/lonnavmaps.pm 2002/09/03 20:46:30 1.47 +++ loncom/interface/lonnavmaps.pm 2002/09/09 17:20:14 1.50 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Navigate Maps Handler # -# $Id: lonnavmaps.pm,v 1.47 2002/09/03 20:46:30 bowersj2 Exp $ +# $Id: lonnavmaps.pm,v 1.50 2002/09/09 17:20:14 www Exp $ # # Copyright Michigan State University Board of Trustees # @@ -195,12 +195,18 @@ sub astatus { my %opendate=(); my %answerdate=(); # need to always check part 0's open/due/answer status - foreach (sort(split(/\,/,&Apache::lonnet::metadata($hash{'src_'.$rid},'keys')))) { + foreach (sort(split(/\,/,&Apache::lonnet::metadata($hash{'src_'.$rid},'allpossiblekeys')))) { if ($_=~/^parameter\_(.*)\_opendate$/) { my $part=$1; $duedate{$part}=&parmval($part.'.duedate',$symb); $opendate{$part}=&parmval($part.'.opendate',$symb); $answerdate{$part}=&parmval($part.'.answerdate',$symb); + if (&parmval($part.'.opendate.type',$symb) eq 'date_interval') { + $opendate{$part}=$duedate{$part}-$opendate{$part}; + } + if (&parmval($part.'.answerdate.type',$symb) eq 'date_interval') { + $answerdate{$part}=$duedate{$part}+$answerdate{$part}; + } } } my $now=time; @@ -464,7 +470,7 @@ sub handler { my $userprefix=$uname.'_'.$udom.'_'; unless ($uhome eq 'no_host') { -# -------------------------------------------------------------- Get coursedata +# ------------------------------------------------- Get coursedata (if present) unless ((time-$courserdatas{$cid.'.last_cache'})<240) { my $reply=&Apache::lonnet::reply('dump:'.$cdom.':'.$cnum. ':resourcedata',$chome); @@ -472,7 +478,8 @@ sub handler { $courserdatas{$cid}=$reply; $courserdatas{$cid.'.last_cache'}=time; } - else + # check to see if network failed + elsif ( $reply=~/no.such.host/i || $reply=~/con.*lost/i ) { $networkFailedFlag = 1; }