Diff for /rat/lonwrapper.pm between versions 1.66 and 1.68

version 1.66, 2017/12/18 23:23:14 version 1.68, 2017/12/30 00:16:36
Line 38  use Apache::loncommon(); Line 38  use Apache::loncommon();
 use Apache::lonhtmlcommon();  use Apache::lonhtmlcommon();
 use Apache::lonextresedit();  use Apache::lonextresedit();
 use Apache::lonexttool();  use Apache::lonexttool();
   use Apache::lonhomework();
 use LONCAPA qw(:DEFAULT :match);  use LONCAPA qw(:DEFAULT :match);
 use HTML::Entities();  use HTML::Entities();
   
Line 82  sub wrapper { Line 83  sub wrapper {
         $args->{'only_body'} = $env{'form.only_body'};          $args->{'only_body'} = $env{'form.only_body'};
     }      }
   
     my $startpage = &Apache::loncommon::start_page('Menu',undef,$args);      my ($countdown,$donemsg);
     my $endpage = &Apache::loncommon::end_page();      if (($exttool) && (&Apache::lonnet::EXT('resource.0.gradable') =~ /^yes$/i)) {
           $Apache::lonhomework::browse = &Apache::lonnet::allowed('bre',$url);
     if (($exttool) && (&Apache::lonnet::EXT('resource.0.gradable'))) {          if ($env{'form.markaccess'}) {
         my $resource_due = &Apache::lonhomework::due_date(0, $env{'request.symb'});              my $symb=&Apache::lonnet::symbread($url);
         if ($resource_due) {              my @interval=&Apache::lonnet::EXT('resource.0.interval',$symb);
             my $time_left = $resource_due - time();              my ($timelimit) = split(/_/,$interval[0]);
             if ($resource_due && ($time_left > 0)) {              my $setres = &Apache::lonnet::set_first_access($interval[1],$timelimit);
                 $startpage .='              if ($setres eq 'ok') {
                   delete($env{'form.markaccess'});
               }
           } elsif ($env{'form.LC_interval_done'} eq 'true') {
               my $symb=&Apache::lonnet::symbread($url);
               if ($symb) {
                   (my $donebuttonresult,$donemsg) = &Apache::lonhomework::zero_timer($symb);
                   undef($env{'form.LC_interval_done'});
                   undef($env{'form.LC_interval_done_proctorpass'});
               }
           }
           my ($status,$result,$resource_due) =
               &Apache::lonexttool::gradabletool_access_check();
           undef($Apache::lonhomework::browse);
           if ($status eq 'CAN_ANSWER') {
               if ($resource_due) {
                   my $time_left = $resource_due - time();
                   if ($resource_due && ($time_left > 0)) {
                       $countdown ='
 <script type="text/javascript">  <script type="text/javascript">
 // <![CDATA['."\n".  // <![CDATA['."\n".
                              &Apache::lonhtmlcommon::countdown().'                               &Apache::lonhtmlcommon::countdown().'
 // ]]>  // ]]>
 </script>'."\n".  </script>'."\n".
                               &Apache::lonhtmlcommon::set_due_date($resource_due);                      &Apache::lonhtmlcommon::set_due_date($resource_due);
                   }
               }
           } else {
               if ($status eq 'SHOW_ANSWER') {
                   $result = &Apache::lonexttool::display_score().
                             &Apache::lonfeedback::list_discussion('tool','OPEN');
             }              }
               return &Apache::loncommon::start_page('Menu',undef,$args).
                      $result.
                      &Apache::loncommon::end_page();
         }          }
     }      }
   
       my $startpage = &Apache::loncommon::start_page('Menu',undef,$args).$countdown.$donemsg;
       my $endpage = &Apache::loncommon::end_page();
   
     if (($env{'browser.mobile'}) || ($exttool eq 'window') || ($exttool eq 'tab')) {      if (($env{'browser.mobile'}) || ($exttool eq 'window') || ($exttool eq 'tab')) {
         my $output = $startpage;          my $output = $startpage;
         if ($is_pdf) {          if ($is_pdf) {

Removed from v.1.66  
changed lines
  Added in v.1.68


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>