--- loncom/interface/lonnavmaps.pm 2003/03/08 20:52:41 1.154 +++ loncom/interface/lonnavmaps.pm 2003/09/03 20:27:08 1.223 @@ -1,8 +1,7 @@ - # The LearningOnline Network with CAPA # Navigate Maps Handler # -# $Id: lonnavmaps.pm,v 1.154 2003/03/08 20:52:41 bowersj2 Exp $ +# $Id: lonnavmaps.pm,v 1.223 2003/09/03 20:27:08 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -48,9 +47,7 @@ use Apache::Constants qw(:common :http); use Apache::loncommon(); use Apache::lonmenu(); use POSIX qw (floor strftime); - -my %navmaphash; -my %parmhash; +use Data::Dumper; # for debugging, not always used # symbolic constants sub SYMB { return 1; } @@ -75,7 +72,8 @@ my %statusIconMap = $resObj->TRIES_LEFT => 'navmap.open.gif', $resObj->INCORRECT => 'navmap.wrong.gif', $resObj->OPEN => 'navmap.open.gif', - $resObj->ATTEMPTED => 'navmap.open.gif' ); + $resObj->ATTEMPTED => 'navmap.ellipsis.gif', + $resObj->ANSWER_SUBMITTED => 'navmap.ellipsis.gif' ); my %iconAltTags = ( 'navmap.correct.gif' => 'Correct', @@ -94,26 +92,14 @@ my %colormap = $resObj->TRIES_LEFT => '', $resObj->INCORRECT => '', $resObj->OPEN => '', - $resObj->NOTHING_SET => '' ); + $resObj->NOTHING_SET => '', + $resObj->ATTEMPTED => '', + $resObj->ANSWER_SUBMITTED => '' + ); # And a special case in the nav map; what to do when the assignment # is not yet done and due in less then 24 hours my $hurryUpColor = "#FF0000"; -sub cleanup { - if (tied(%navmaphash)){ - &Apache::lonnet::logthis('Cleanup navmaps: navmaphash'); - unless (untie(%navmaphash)) { - &Apache::lonnet::logthis('Failed cleanup navmaps: navmaphash'); - } - } - if (tied(%parmhash)){ - &Apache::lonnet::logthis('Cleanup navmaps: parmhash'); - unless (untie(%parmhash)) { - &Apache::lonnet::logthis('Failed cleanup navmaps: parmhash'); - } - } -} - sub handler { my $r = shift; real_handler($r); @@ -143,9 +129,7 @@ sub real_handler { $r->send_http_header; # Create the nav map - my $navmap = Apache::lonnavmaps::navmap->new( - $ENV{"request.course.fn"}.".db", - $ENV{"request.course.fn"}."_parms.db", 1, 1); + my $navmap = Apache::lonnavmaps::navmap->new(); if (!defined($navmap)) { @@ -158,6 +142,7 @@ sub real_handler { $r->print("
Uncompleted Homework
"); + $ENV{'form.filter'} = ''; + $ENV{'form.condition'} = 1; + $resource_no_folder_link = 1; + } else { + $r->print("" . + "Show Only Uncompleted Homework "); + } + + # renderer call + my $renderArgs = { 'cols' => [0,1,2,3], + 'url' => '/adm/navmaps', + 'navmap' => $navmap, + 'suppressNavmap' => 1, + 'suppressEmptySequences' => $suppressEmptySequences, + 'filterFunc' => $filterFunc, + 'resource_no_folder_link' => $resource_no_folder_link, + 'r' => $r}; + my $render = render($renderArgs); $navmap->untieHashes(); + # If no resources were printed, print a reassuring message so the + # user knows there was no error. + if ($renderArgs->{'counter'} == 0) { + if ($showOnlyHomework) { + $r->print("All homework is currently completed.
"); + } else { # both jumpToFirstHomework and normal use the same: course must be empty + $r->print("This course is empty.
"); + } + } + $r->print("