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

version 1.52, 2006/03/15 19:41:26 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 807  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 870  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 887  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 958  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 1017  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 1029  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 1061  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 1135  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 1206  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 1240  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.52  
changed lines
  Added in v.1.55


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