--- loncom/interface/lonnavmaps.pm 2012/05/28 10:31:17 1.485 +++ loncom/interface/lonnavmaps.pm 2012/06/19 10:11:35 1.487 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Navigate Maps Handler # -# $Id: lonnavmaps.pm,v 1.485 2012/05/28 10:31:17 foxr Exp $ +# $Id: lonnavmaps.pm,v 1.487 2012/06/19 10:11:35 foxr Exp $ # # Copyright Michigan State University Board of Trustees @@ -484,6 +484,7 @@ use POSIX qw (floor strftime); use Time::HiRes qw( gettimeofday tv_interval ); use LONCAPA; use DateTime(); +use HTML::Entities; # For debugging @@ -1481,9 +1482,10 @@ sub render { 'document.clearbubbles.submit()', 'Mark all posts read'); my $time=time; + my $querystr = &HTML::Entities::encode($ENV{'QUERY_STRING'},'<>&"'); $result .= (< - + END if ($env{'form.register'}) { @@ -1825,6 +1827,8 @@ END } } } + + $result.=&Apache::loncommon::end_data_table(); # Print out the part that jumps to #curloc if it exists # delay needed because the browser is processing the jump before @@ -1841,8 +1845,6 @@ if (location.href.indexOf('#curloc')==-1 "); } - $result.=&Apache::loncommon::end_data_table(); - if ($r) { $r->print($result); $result = ""; @@ -1873,7 +1875,6 @@ sub show_linkitems_toolbar { ''.&mt('Tools:').''; } $result .= ''."\n". - ''."\n". ''. - ''; + ''; if (($numlinks==1) && (exists($args->{'linkitems'}{'edittoplevel'}))) { $result .= ''. &mt('Content Editor').''; @@ -4362,19 +4363,34 @@ sub printable { my ($self, $part) = @_; - # Get the print open/close dates for the resource. + &Apache::lonnet::logthis($self->symb()); - my $start = $self->parmval("printstartdate", $part); - my $end = $self->parmval("printenddate", $part); # The following cases apply: - # - No dates set: Printable. + # - If a start date is not set, it is replaced by the open date. + # - Ditto for start/open replaced by content open. + # - If neither start nor printdates are set the part is printable. # - Start date set but no end date: Printable if now >= start date. # - End date set but no start date: Printable if now <= end date. # - both defined: printable if start <= now <= end # + + # Get the print open/close dates for the resource. + + my $start = $self->parmval("printstartdate", $part); + my $end = $self->parmval("printenddate", $part); + + if (!$start) { + $start = $self->parmval("opendate", $part); + } + if (!$start) { + $start = $self->parmval("contentopen", $part); + } + + my $now = time(); + my $startok = 1; my $endok = 1;