--- loncom/interface/lonnavmaps.pm 2002/09/24 20:01:05 1.54 +++ loncom/interface/lonnavmaps.pm 2002/10/07 21:07:47 1.68 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Navigate Maps Handler # -# $Id: lonnavmaps.pm,v 1.54 2002/09/24 20:01:05 bowersj2 Exp $ +# $Id: lonnavmaps.pm,v 1.68 2002/10/07 21:07:47 bowersj2 Exp $ # # Copyright Michigan State University Board of Trustees # @@ -124,32 +124,32 @@ sub parmval { my $courselevelm=$usercourseprefix.'.'.$mapparm; # ---------------------------------------------------------- first, check user - if ($uname) { - if ($useropt{$courselevelr}) { return $useropt{$courselevelr}; } - if ($useropt{$courselevelm}) { return $useropt{$courselevelm}; } - if ($useropt{$courselevel}) { return $useropt{$courselevel}; } + if (defined($uname)) { + if (defined($useropt{$courselevelr})) { return $useropt{$courselevelr}; } + if (defined($useropt{$courselevelm})) { return $useropt{$courselevelm}; } + if (defined($useropt{$courselevel})) { return $useropt{$courselevel}; } } # ------------------------------------------------------- second, check course - if ($csec) { - if ($courseopt{$seclevelr}) { return $courseopt{$seclevelr}; } - if ($courseopt{$seclevelm}) { return $courseopt{$seclevelm}; } - if ($courseopt{$seclevel}) { return $courseopt{$seclevel}; } + if (defined($csec)) { + if (defined($courseopt{$seclevelr})) { return $courseopt{$seclevelr}; } + if (defined($courseopt{$seclevelm})) { return $courseopt{$seclevelm}; } + if (defined($courseopt{$seclevel})) { return $courseopt{$seclevel}; } } - if ($courseopt{$courselevelr}) { return $courseopt{$courselevelr}; } - if ($courseopt{$courselevelm}) { return $courseopt{$courselevelm}; } - if ($courseopt{$courselevel}) { return $courseopt{$courselevel}; } + if (defined($courseopt{$courselevelr})) { return $courseopt{$courselevelr}; } + if (defined($courseopt{$courselevelm})) { return $courseopt{$courselevelm}; } + if (defined($courseopt{$courselevel})) { return $courseopt{$courselevel}; } # ----------------------------------------------------- third, check map parms my $thisparm=$parmhash{$symbparm}; - if ($thisparm) { return $thisparm; } + if (defined($thisparm)) { return $thisparm; } # ----------------------------------------------------- fourth , check default my $default=&Apache::lonnet::metadata($fn,$rwhat.'.default'); - if ($default) { return $default} + if (defined($default)) { return $default} # --------------------------------------------------- fifth , cascade up parts @@ -159,10 +159,10 @@ sub parmval { my ($part,$id)=split(/\_/,$space); if ($id) { my $partgeneral=&parmval($part.".$qualifier",$symb); - if ($partgeneral) { return $partgeneral; } + if (defined($partgeneral)) { return $partgeneral; } } else { my $resourcegeneral=&parmval("0.$qualifier",$symb); - if ($resourcegeneral) { return $resourcegeneral; } + if (defined($resourcegeneral)) { return $resourcegeneral; } } } return ''; @@ -819,14 +819,47 @@ sub new_handle { &Apache::loncommon::no_cache($r); $r->send_http_header; - # Header - $r->print(&Apache::loncommon::bodytag('Navigate Course Map','', - '')); # Initialize the nav map my $navmap = Apache::lonnavmaps::navmap->new( $ENV{"request.course.fn"}.".db", $ENV{"request.course.fn"}."_parms.db", 1); + + if (!defined($navmap)) { + my $requrl = $r->uri; + $ENV{'user.error.msg'} = "$requrl:bre:0:0:Course not initialized"; + return HTTP_NOT_ACCEPTABLE; + } + + # Header + $r->print(&Apache::loncommon::bodytag('Navigate Course Map','', + '')); + $r->print(''); + my $desc=$ENV{'course.'.$ENV{'request.course.id'}.'.description'}; + if (defined($desc)) { $r->print("
');
+ } else {
+ $r->print(' Discussions'.
+ '
New message (click to open)
'); + } + #if (($currenturl=~/^\/res/) && + # ($currenturl!~/^\/res\/adm/)) { + # $r->print('Current Location
'); + #} + + # Check that it's defined + if (!($navmap->courseMapDefined())) { + $r->print('Coursemap undefined.' . + '