Diff for /loncom/interface/statistics/lonstathelpers.pm between versions 1.59.12.1 and 1.59.12.2

version 1.59.12.1, 2010/09/11 19:08:23 version 1.59.12.2, 2011/11/18 22:35:33
Line 239  sub MultipleProblemSelector { Line 239  sub MultipleProblemSelector {
     # Header      # Header
     $Str .= <<"END";      $Str .= <<"END";
 <script type="text/javascript" language="JavaScript">  <script type="text/javascript" language="JavaScript">
     function checkall(value,seqid) {      function checkall(value,seqid,caller) {
           if (caller == 'allproblems') {
               if ((value == null ) || (value == '') || (value == undefined)) {
                   if (document.forms.$formname.allproblems.checked) {
                       document.forms.$formname.noproblems.checked = false;
                       value = true;
                   } else {
                       return;
                   }
               }
           }
           if (caller == 'noproblems') {
               if ((value == null ) || (value == '') || (value == undefined)) {
                   if (document.forms.$formname.noproblems.checked) {
                       document.forms.$formname.allproblems.checked = false;
                       value = false;
                   } else {
                       return; 
                   }
               }
           }
         for (i=0; i<document.forms.$formname.elements.length; i++) {          for (i=0; i<document.forms.$formname.elements.length; i++) {
             ele = document.forms.$formname.elements[i];              ele = document.forms.$formname.elements[i];
             if (ele.name == '$inputname') {              if (ele.name == '$inputname') {
                 if (seqid != null) {                  if ((seqid != null) && (seqid != '') && (seqid != undefined)) {
                     itemid = document.forms.$formname.elements[i].id;                      itemid = document.forms.$formname.elements[i].id;
                     thing = itemid.split(':');                      thing = itemid.split(':');
                     if (thing[0] == seqid) {                      if (thing[0] == seqid) {
Line 258  sub MultipleProblemSelector { Line 278  sub MultipleProblemSelector {
 </script>  </script>
 END  END
     $Str .=       $Str .= 
         '<a href="javascript:checkall(true)">'.&mt('Select All').'</a>'.          '<label><input type="checkbox" name="allproblems" value="true" onclick="javascript:checkall('."'','','allproblems'".')" />'.&mt('Select All').'</label>'.
         ('&nbsp;'x4).          ('&nbsp;'x4).
         '<a href="javascript:checkall(false)">'.&mt('Unselect All').'</a>';          '<label><input type="checkbox" name="noproblems" value="true" onclick="javascript:checkall('."'','','noproblems'".')" />'.&mt('Unselect All').'</label>';
     $Str .= $/.'<table>'.$/;      $Str .= $/.'<table>'.$/;
     my ($iterator,$sequence_string,@Accumulator);      my ($iterator,$sequence_string,@Accumulator);
     my $seq_id = 0;      my $seq_id = 0;
Line 271  END Line 291  END
         my $map = $navmap->getResourceByUrl($mapurl);          my $map = $navmap->getResourceByUrl($mapurl);
         my $firstResource = $map->map_start();          my $firstResource = $map->map_start();
         my $lastResource = $map->map_finish();          my $lastResource = $map->map_finish();
         $iterator = $navmap->getIterator($firstResource,$lastResource,undef,1);          $iterator = $navmap->getIterator($firstResource,$lastResource,sub { $_[0]->is_problem() },1);
         @Accumulator = (&new_accumulator($map->compTitle,          @Accumulator = (&new_accumulator($map->compTitle,
                                          $map->src,                                           $map->src,
                                          $map->symb,                                           $map->symb,
Line 303  END Line 323  END
                                                $seq_id++,                                                 $seq_id++,
                                                $inputname));                                                 $inputname));
         } elsif ($curRes->is_problem) {          } elsif ($curRes->is_problem) {
               my $is_selected;
               if (($env{'form.allproblems'})  || (exists($selected->{$curRes->symb}))) {
                   $is_selected = 1;
               }
             if (@Accumulator && $Accumulator[-1] ne '') {              if (@Accumulator && $Accumulator[-1] ne '') {
                 &{$Accumulator[-1]}($curRes,                  &{$Accumulator[-1]}($curRes,$is_selected);
                                     exists($selected->{$curRes->symb}));  
             }              }
         }          }
     }      }

Removed from v.1.59.12.1  
changed lines
  Added in v.1.59.12.2


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