Diff for /loncom/interface/lonwhatsnew.pm between versions 1.51 and 1.55

version 1.51, 2006/03/04 05:59:01 version 1.55, 2006/05/30 12:46:09
Line 39  use Apache::lonuserstate; Line 39  use Apache::lonuserstate;
 use Apache::Constants qw(:common :http);  use Apache::Constants qw(:common :http);
 use Time::Local;  use Time::Local;
 use GDBM_File;  use GDBM_File;
   use lib '/home/httpd/lib/perl/';
   use LONCAPA;
   
 #----------------------------  #----------------------------
 # handler  # handler
Line 100  sub handler { Line 102  sub handler {
             ({href=>'/adm/whatsnew?command=chgthreshold&refpage='.$refpage,              ({href=>'/adm/whatsnew?command=chgthreshold&refpage='.$refpage,
               text=>"Change thresholds"});                text=>"Change thresholds"});
         $r->print(&Apache::lonhtmlcommon::breadcrumbs          $r->print(&Apache::lonhtmlcommon::breadcrumbs
             (undef,"What's New?",#'Course_Action_Items_Thresholds'              ("What's New?",#'Course_Action_Items_Thresholds'
      ));       ));
     } elsif (($command eq 'chginterval') && $checkallowed{'versionchanges'} ) {      } elsif (($command eq 'chginterval') && $checkallowed{'versionchanges'} ) {
         &Apache::lonhtmlcommon::add_breadcrumb          &Apache::lonhtmlcommon::add_breadcrumb
             ({href=>'/adm/whatsnew?command=chginterval&refpage='.$refpage,              ({href=>'/adm/whatsnew?command=chginterval&refpage='.$refpage,
               text=>"Change interval"});                text=>"Change interval"});
         $r->print(&Apache::lonhtmlcommon::breadcrumbs          $r->print(&Apache::lonhtmlcommon::breadcrumbs
             (undef,"What's New?",#'Course_Action_Items_Intervals'              ("What's New?",#'Course_Action_Items_Intervals'
      ));       ));
     } elsif (($command eq 'chgdisc') && $checkallowed{'coursediscussion'}) {      } elsif (($command eq 'chgdisc') && $checkallowed{'coursediscussion'}) {
         &Apache::lonhtmlcommon::add_breadcrumb          &Apache::lonhtmlcommon::add_breadcrumb
             ({href=>'/adm/whatsnew?command=chgdisc&refpage='.$refpage,              ({href=>'/adm/whatsnew?command=chgdisc&refpage='.$refpage,
               text=>"Change discussion display"});                text=>"Change discussion display"});
         $r->print(&Apache::lonhtmlcommon::breadcrumbs          $r->print(&Apache::lonhtmlcommon::breadcrumbs
             (undef,"What's New?",#'Course_Action_Items_Intervals'              ("What's New?",#'Course_Action_Items_Intervals'
      ));       ));
     } elsif ($command eq 'courseinit') {      } elsif ($command eq 'courseinit') {
         &Apache::lonhtmlcommon::add_breadcrumb          &Apache::lonhtmlcommon::add_breadcrumb
             ({href=>'/adm/whatsnew?command=courseinit&refpage='.$refpage,              ({href=>'/adm/whatsnew?command=courseinit&refpage='.$refpage,
               text=>"Course initialization preference"});                text=>"Course initialization preference"});
         $r->print(&Apache::lonhtmlcommon::breadcrumbs          $r->print(&Apache::lonhtmlcommon::breadcrumbs
             (undef,"What's New?",#'Course_Action_Items_Initialization'              ("What's New?",#'Course_Action_Items_Initialization'
      ));       ));
     } else {      } else {
         $r->print(&Apache::lonhtmlcommon::breadcrumbs          $r->print(&Apache::lonhtmlcommon::breadcrumbs
             (undef,"What's New?",#'Course_Action_Items_Display'              ("What's New?",#'Course_Action_Items_Display'
      ));       ));
     }      }
     &display_main_box($r,$command,$refpage,\%checkallowed);      &display_main_box($r,$command,$refpage,\%checkallowed);
Line 183  sub display_main_box { Line 185  sub display_main_box {
         &display_actions_box($r,$tabbg,$command,$refpage,\%threshold_titles,          &display_actions_box($r,$tabbg,$command,$refpage,\%threshold_titles,
                         \%interval_titles,\%initpage,$cdom,$crs,$checkallowed);                          \%interval_titles,\%initpage,$cdom,$crs,$checkallowed);
     }      }
       my $end_page = &Apache::loncommon::end_page();
     $r->print(<<END_OF_BLOCK);      $r->print(<<END_OF_BLOCK);
   </td>    </td>
  </tr>   </tr>
 </table><br />  </table><br />
 </body>  $end_page
 </html>  
 END_OF_BLOCK  END_OF_BLOCK
 }  }
   
Line 201  END_OF_BLOCK Line 203  END_OF_BLOCK
   
 sub display_header {  sub display_header {
     my ($command,$checkallowed) = @_;      my ($command,$checkallowed) = @_;
     my $html=&Apache::lonxml::xmlbegin();      
     my $bodytag=&Apache::loncommon::bodytag('Course Action Items');  
     my $scripttag;      my $scripttag;
     unless ($command eq 'chgthreshold' || $command eq 'chginterval') {      unless ($command eq 'chgthreshold' || $command eq 'chginterval') {
        $scripttag = <<"END";         $scripttag = <<"END";
Line 226  END Line 227  END
 </script>  </script>
 ';  ';
     }      }
     return(<<ENDHEAD);      return &Apache::loncommon::start_page('Course Action Items',$scripttag); 
 $html  
 <head>  
 <title>Course Action Items</title>  
 $scripttag  
 </head>  
 $bodytag  
 ENDHEAD  
 }  }
   
 #-------------------------------  #-------------------------------
Line 815  sub check_bombed { Line 809  sub check_bombed {
         my @bombs = split(/,/, $errors);          my @bombs = split(/,/, $errors);
         my $errorcount = scalar(@bombs);          my $errorcount = scalar(@bombs);
         my $errorlink = '<a href="/adm/email?display='.          my $errorlink = '<a href="/adm/email?display='.
                         &Apache::lonnet::escape($bombs[0]).'">'.                          &escape($bombs[0]).'">'.
                         $title.'</a>';                          $title.'</a>';
         $$bombed{$symb}{errorcount} = $errorcount;          $$bombed{$symb}{errorcount} = $errorcount;
         $$bombed{$symb}{errorlink} = $errorlink;          $$bombed{$symb}{errorlink} = $errorlink;
Line 878  sub check_thresholds { Line 872  sub check_thresholds {
         $$triggered{$symb}{title} = $resource->title;          $$triggered{$symb}{title} = $resource->title;
         foreach my $part (@parts) {          foreach my $part (@parts) {
             if (exists($stats{$part}{users})) {              if (exists($stats{$part}{users})) {
                 my $resetname = 'reset_'.&Apache::lonnet::escape($symb."\0".$part);                  my $resetname = 'reset_'.&escape($symb."\0".$part);
                 my $resettitle = 'title_'.&Apache::lonnet::escape($symb."\0".$part);                  my $resettitle = 'title_'.&escape($symb."\0".$part);
                 if ($$triggered{$symb}{numparts}) {                  if ($$triggered{$symb}{numparts}) {
                     $$triggered{$symb}{text} .= '<tr bgcolor="'.$rowColor.'">'."\n";                      $$triggered{$symb}{text} .= '<tr bgcolor="'.$rowColor.'">'."\n";
                 }                  }
Line 895  sub check_thresholds { Line 889  sub check_thresholds {
                      <td align="right"><small>'.$stats{$part}{attempts}.'</small></td>                       <td align="right"><small>'.$stats{$part}{attempts}.'</small></td>
                      <td align="right"><small>'.$stats{$part}{degdiff}.'</small></td>                       <td align="right"><small>'.$stats{$part}{degdiff}.'</small></td>
                      <td align="right"><small>'.$lastreset{$part}.'</small></td>                       <td align="right"><small>'.$lastreset{$part}.'</small></td>
                      <td align="right"><small><input type="checkbox" name="'.$resetname.'" /><input type="hidden" name="'.$resettitle.'" value="'.&Apache::lonnet::escape($$triggered{$symb}{title}).'" /></td>                       <td align="right"><small><input type="checkbox" name="'.$resetname.'" /><input type="hidden" name="'.$resettitle.'" value="'.&escape($$triggered{$symb}{title}).'" /></td>
                     </tr>';                      </tr>';
                 $$triggered{$symb}{numparts} ++;                  $$triggered{$symb}{numparts} ++;
             }              }
Line 966  sub process_reset { Line 960  sub process_reset {
     my %titles = ();      my %titles = ();
     foreach my $key (keys(%env)) {      foreach my $key (keys(%env)) {
         next if ($key !~ /^form\.reset_(.+)$/);          next if ($key !~ /^form\.reset_(.+)$/);
         my $title = &Apache::lonnet::unescape($env{'form.title_'.$1});          my $title = &unescape($env{'form.title_'.$1});
         my $reset_item = &Apache::lonnet::unescape($1);          my $reset_item = &unescape($1);
         my %curr_aggregates = &Apache::lonnet::dump('nohist_resourcetracker',$dom,$crs,$reset_item);          my %curr_aggregates = &Apache::lonnet::dump('nohist_resourcetracker',$dom,$crs,$reset_item);
         my %aggregates = ();          my %aggregates = ();
         my ($symb,$part) = split(/\0/,$reset_item);          my ($symb,$part) = split(/\0/,$reset_item);
Line 1025  sub getnormalmail { Line 1019  sub getnormalmail {
   
     my @messages = sort(&Apache::lonnet::getkeys('nohist_email'));      my @messages = sort(&Apache::lonnet::getkeys('nohist_email'));
     foreach my $message (@messages) {      foreach my $message (@messages) {
  my $msgid=&Apache::lonnet::escape($message);   my $msgid=&escape($message);
         my ($sendtime,$shortsubj,$fromname,$fromdom,$status,$fromcid)=          my ($sendtime,$shortsubj,$fromname,$fromdom,$status,$fromcid)=
             &Apache::lonmsg::unpackmsgid($msgid);              &Apache::lonmsg::unpackmsgid($msgid);
         if (($fromcid) && ($fromcid eq $env{'request.course.id'})) {          if (($fromcid) && ($fromcid eq $env{'request.course.id'})) {
Line 1037  sub getnormalmail { Line 1031  sub getnormalmail {
                     if ($shortsubj eq '') {                      if ($shortsubj eq '') {
                         $shortsubj = &mt('No subject');                          $shortsubj = &mt('No subject');
                     }                      }
                     $shortsubj = &Apache::lonnet::unescape($shortsubj);  
                     push(@{$newmsgs}, {                      push(@{$newmsgs}, {
                         msgid    => $msgid,                          msgid    => $msgid,
                         sendtime => $sendtime,                          sendtime => $sendtime,
Line 1069  sub getcritmail { Line 1062  sub getcritmail {
                 if ($shortsubj eq '') {                  if ($shortsubj eq '') {
                     $shortsubj = &mt('No subject');                      $shortsubj = &mt('No subject');
                 }                  }
                 $shortsubj = &Apache::lonnet::unescape($shortsubj);  
                 push(@{$critmsgs}, {                  push(@{$critmsgs}, {
                         msgid    => $msgid,                          msgid    => $msgid,
                         sendtime => $sendtime,                          sendtime => $sendtime,
Line 1143  sub display_handgrade { Line 1135  sub display_handgrade {
             }              }
             my ($map,$id,$url)=&Apache::lonnet::decode_symb($res);              my ($map,$id,$url)=&Apache::lonnet::decode_symb($res);
             my $linkurl=&Apache::lonnet::clutter($url);              my $linkurl=&Apache::lonnet::clutter($url);
             $linkurl .= '?symb='.&Apache::lonnet::escape($res);              $linkurl .= '?symb='.&escape($res);
                                                                                                                                                                 
             $r->print('<tr bgcolor="'.$rowColor.'"><td><a href="'.$linkurl.'"><small>'.$$ungraded{$res}{title}.'</small></a></td><td align="right"><small>'.$$ungraded{$res}{count}.'</small></td></tr>');              $r->print('<tr bgcolor="'.$rowColor.'"><td><a href="'.$linkurl.'"><small>'.$$ungraded{$res}{title}.'</small></a></td><td align="right"><small>'.$$ungraded{$res}{count}.'</small></td></tr>');
             $rowNum ++;              $rowNum ++;
Line 1214  sub display_abovethreshold { Line 1206  sub display_abovethreshold {
             if ($$triggered{$res}{numparts} > 1) {              if ($$triggered{$res}{numparts} > 1) {
                 $rowspan = 'rowspan="'.$$triggered{$res}{numparts}.'"';                  $rowspan = 'rowspan="'.$$triggered{$res}{numparts}.'"';
             }              }
             $linkurl .= '?symb='.&Apache::lonnet::escape($res);              $linkurl .= '?symb='.&escape($res);
             $r->print('<tr bgcolor="'.$rowColor.'"><td '.$rowspan.'><a href="'.$linkurl.'"><small>'.$$triggered{$res}{title}.'</small></a></td>'.$$triggered{$res}{text});              $r->print('<tr bgcolor="'.$rowColor.'"><td '.$rowspan.'><a href="'.$linkurl.'"><small>'.$$triggered{$res}{title}.'</small></a></td>'.$$triggered{$res}{text});
             $warningnum ++;              $warningnum ++;
         }          }
Line 1248  sub display_versionchanges { Line 1240  sub display_versionchanges {
             }              }
             my ($map,$id,$url)=&Apache::lonnet::decode_symb($item);              my ($map,$id,$url)=&Apache::lonnet::decode_symb($item);
             my $linkurl=&Apache::lonnet::clutter($url);              my $linkurl=&Apache::lonnet::clutter($url);
             $linkurl .= '?symb='.&Apache::lonnet::escape($item);              $linkurl .= '?symb='.&escape($item);
   
             $r->print('<tr bgcolor="'.$rowColor.'"><td><small><a href="'.$linkurl.'">'.$$res_title{$item}.'</a></small></td><td><small>'.$$changed{$item}{'revdate'}.'</small></td><td><small>'.$$changed{$item}{'current'}.'</small></td><td><small>'.$$changed{$item}{'version'}.'</small></td></tr>');              $r->print('<tr bgcolor="'.$rowColor.'"><td><small><a href="'.$linkurl.'">'.$$res_title{$item}.'</a></small></td><td><small>'.$$changed{$item}{'revdate'}.'</small></td><td><small>'.$$changed{$item}{'current'}.'</small></td><td><small>'.$$changed{$item}{'version'}.'</small></td></tr>');
             $changenum ++;              $changenum ++;

Removed from v.1.51  
changed lines
  Added in v.1.55


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