--- rat/lonpage.pm 2015/03/11 19:55:44 1.108 +++ rat/lonpage.pm 2016/08/10 02:58:17 1.111.2.1 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Page Handler # -# $Id: lonpage.pm,v 1.108 2015/03/11 19:55:44 raeburn Exp $ +# $Id: lonpage.pm,v 1.111.2.1 2016/08/10 02:58:17 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -40,6 +40,7 @@ use Apache::lonhtmlcommon; use Apache::lonxml(); use Apache::lonlocal; use Apache::lonmenu; +use Apache::lonhomework; use HTML::TokeParser; use GDBM_File; use Apache::lonsequence; @@ -187,6 +188,18 @@ sub handler { my $firstres=$hash{'map_start_'.$requrl}; my $lastres=$hash{'map_finish_'.$requrl}; if (($firstres) && ($lastres)) { +# ------------------------------------------------------------- Countdown Timer + my $now = time; + my ($pagefirstaccess,%hastimeleft,%countdowndisp); + my ($pagesymb,$courseid,$domain,$name)=&Apache::lonnet::whichuser(); + if (($pagesymb && ($courseid ne '') && ($domain ne '') && ($name ne '')) { + my %times=&Apache::lonnet::get('firstaccesstimes', + [$courseid."\0".$pagesymb], + $domain,$name); + if ($times{$courseid."\0".$pagesymb} =~ /^\d+$/) { + $pagefirstaccess = $times{$courseid."\0".$pagesymb}; + } + } # ----------------------------------------------------------------- Render page @rows=(); @@ -216,6 +229,7 @@ sub handler { my $contents=0; my $nforms=0; my $nuploads=0; + my $ntimers=0; my %turninpaths; my %multiresps; my $turninparent; @@ -301,8 +315,8 @@ ENDEXT my $output=Apache::lonnet::ssi($src,%posthash); $output=~s|//(\s*)?\s||gs; if (($target eq 'tex') || ($target eq 'tex_answer')) { - $output =~ s/^([^&]+)\\begin{document}//; - $output =~ s/\\end{document}//; + $output =~ s/^([^&]+)\\begin\{document}//; + $output =~ s/\\end\{document}//; # $output = '\parbox{\minipagewidth}{ '.$output.' }'; #some additional cleanup necessary for LateX (due to limitations of table environment $output =~ s/(\\vskip\s*\d+mm)\s*(\\\\)+/$1/g; @@ -369,16 +383,26 @@ ENDEXT } $output=~s/\<\/body\>.*//si; if ($output=~/\