Diff for /loncom/interface/lonmsgdisplay.pm between versions 1.160 and 1.175

version 1.160, 2012/05/23 12:28:21 version 1.175, 2014/05/21 17:36:58
Line 128  sub folderlist { Line 128  sub folderlist {
                 go   => 'Go',                  go   => 'Go',
                 nnff => 'New Name for Folder',                  nnff => 'New Name for Folder',
                 newn => 'New Name',                  newn => 'New Name',
                 thfm => 'The folder may not be renamed',                  fmnb => 'Folder may not be renamed as it is a folder provided by the system.',
                 fmnb => 'folder may not be renamed as it is a folder provided by the system.',                  asth => 'Requested name already in use for a system-provided or user-defined folder.',
                 asth => 'as this name is already in use for a system-provided or user-defined folder.',  
                 the => 'The',  
                 tnfm => 'The new folder may not be named',  
   
     );      );
   
Line 182  function folder_choice(targetform,caller Line 179  function folder_choice(targetform,caller
         if (targetform.folderaction.options[targetform.folderaction.selectedIndex].value == 'rename') {          if (targetform.folderaction.options[targetform.folderaction.selectedIndex].value == 'rename') {
             for (var i=0; i<permfolders_keys.length; i++) {              for (var i=0; i<permfolders_keys.length; i++) {
                 if (permfolders_keys[i] == targetform.folder.value) {                  if (permfolders_keys[i] == targetform.folder.value) {
                     alert("$lt{'the'} '"+permfolders_vals[i]+"' $lt{'fmnb'}");                      alert("'"+permfolders_vals[i]+"' -- $lt{'fmnb'}");
                     return;                      return;
                 }                  }
             }              }
Line 191  function folder_choice(targetform,caller Line 188  function folder_choice(targetform,caller
                 targetform.renamed.value=foldername;                  targetform.renamed.value=foldername;
                 for (var i=0; i<allfolders.length; i++) {                  for (var i=0; i<allfolders.length; i++) {
                     if (allfolders[i] == foldername) {                      if (allfolders[i] == foldername) {
                         alert("$lt{'thfm'} '"+foldername+"' $lt{'asth'}");                          alert("'"+foldername+"' $lt{'asth'}");
                         return;                          return;
                     }                      }
                 }                  }
Line 207  function folder_choice(targetform,caller Line 204  function folder_choice(targetform,caller
         if (newname) {          if (newname) {
             for (var i=0; i<allfolders.length; i++) {              for (var i=0; i<allfolders.length; i++) {
                 if (allfolders[i] == newname) {                  if (allfolders[i] == newname) {
                     alert("$lt{'tnfm'} '"+newname+"' $lt{'asth'}");                      alert("'"+newname+"' -- $lt{'asth'}");
                     return;                      return;
                 }                  }
             }              }
Line 222  function folder_choice(targetform,caller Line 219  function folder_choice(targetform,caller
   
     $output .= '      $output .= '
 <form method="post" action="/adm/email" name="folderlist">  <form method="post" action="/adm/email" name="folderlist">
      <div class="LC_columnSection"><fieldset>
      <legend>'.&mt('Folder Actions').'</legend>
    <table border="0" cellspacing="2" cellpadding="8">     <table border="0" cellspacing="2" cellpadding="8">
     <tr>      <tr>
      <td><b>'.$lt{'fold'}.'</b><br />'."\n".       <td><b>'.$lt{'fold'}.'</b><br />'."\n".
Line 234  function folder_choice(targetform,caller Line 233  function folder_choice(targetform,caller
      <td><b>'.$lt{'status'}.'</b><br />'."\n".       <td><b>'.$lt{'status'}.'</b><br />'."\n".
        &Apache::loncommon::select_form($msgstatus,'msgstatus',\%statushash).'         &Apache::loncommon::select_form($msgstatus,'msgstatus',\%statushash).'
      </td>       </td>
      <td><b>'.$lt{'actn'}.'</b><br />'."\n".'       <td style="padding-right: 40px;">
            <b>'.$lt{'actn'}.'</b><br />'."\n".'
          <span class="LC_nobreak">'.           <span class="LC_nobreak">'.
          &Apache::loncommon::select_form('view','folderaction',\%actions).           &Apache::loncommon::select_form('view','folderaction',\%actions).
          ' <input type="button" value="'.$lt{'go'}.           ' <input type="button" value="'.$lt{'go'}.
          '" onclick="javascript:folder_choice(this.form,'."'change'".');" />           '" onclick="javascript:folder_choice(this.form,'."'change'".');" />
          </span>           </span>
      </td>       </td>
      <td><b>'.&mt('New Folder').'</b><br />'."\n".'       <td style="border-left: 1px solid;padding-left: 40px;">
            <b>'.&mt('New Folder').'</b><br />'."\n".'
          <span class="LC_nobreak">           <span class="LC_nobreak">
          <input type="text" size="15" name="newfolder" value="" />           <input type="text" size="15" name="newfolder" value="" />
          <input type="button" value="'.$lt{'go'}.           <input type="button" value="'.$lt{'go'}.
Line 250  function folder_choice(targetform,caller Line 251  function folder_choice(targetform,caller
      </td>       </td>
     </tr>      </tr>
    </table>     </table>
      </fieldset></div>
 '."\n".  '."\n".
     '<input type="hidden" name="sortedby" value="'.$env{'form.sortedby'}.'" />'.      '<input type="hidden" name="sortedby" value="'.$env{'form.sortedby'}.'" />'.
     '<input type="hidden" name="renamed" value="" />'.      '<input type="hidden" name="renamed" value="" />'.
Line 261  sub get_permanent_folders { Line 263  sub get_permanent_folders {
     my %permfolders =       my %permfolders = 
  &Apache::lonlocal::texthash(''         => 'INBOX',   &Apache::lonlocal::texthash(''         => 'INBOX',
     'trash'    => 'TRASH',      'trash'    => 'TRASH',
     'critical' => 'Critical',      'critical' => 'CRITICAL',
     'sent'     => 'Sent Messages',      'sent'     => 'SENT MESSAGES',
     );      );
     return %permfolders;      return %permfolders;
 }  }
Line 378  sub deletefolder { Line 380  sub deletefolder {
     my ($folder)=@_;      my ($folder)=@_;
     my %permfolders = &get_permanent_folders();      my %permfolders = &get_permanent_folders();
     if (defined($permfolders{$folder})) {      if (defined($permfolders{$folder})) {
         return &mt('The folder "[_1]" may not be deleted.',$folder);           return &mt('The folder "[_1]" may not be deleted.',$permfolders{$folder}); 
     }      }
     my %userfolders = &Apache::lonmsg::get_user_folders();      my %userfolders = &Apache::lonmsg::get_user_folders();
     if (!defined($userfolders{$folder})) {      if (!defined($userfolders{$folder})) {
Line 543  sub discourse { Line 545  sub discourse {
        $result .= '<fieldset id="LC_activeusers"><legend>'         $result .= '<fieldset id="LC_activeusers"><legend>'
                  .$bcc_curr_hdr                   .$bcc_curr_hdr
                  .'</legend>'                   .'</legend>'
                  .'<form name="activeusers">';                   .'<form name="activeusers" action="">';
        $result .= $tmptext.'</form></fieldset><br />';         $result .= $tmptext.'</form></fieldset><br />';
        if (ref($statushash) eq 'HASH') {         if (ref($statushash) eq 'HASH') {
            $statushash->{'active'} = 1;             $statushash->{'active'} = 1;
Line 564  sub discourse { Line 566  sub discourse {
        $result .= '<fieldset id="LC_previoususers"><legend>'         $result .= '<fieldset id="LC_previoususers"><legend>'
                  .$bcc_prev_hdr                   .$bcc_prev_hdr
                  .'</legend>'                   .'</legend>'
                  .'<form name="previoususers">';                   .'<form name="previoususers" action="">';
        $result .= $tmptext.'</form></fieldset><br />';         $result .= $tmptext.'</form></fieldset><br />';
        if (ref($statushash) eq 'HASH') {         if (ref($statushash) eq 'HASH') {
            $statushash->{'previous'} = 1;             $statushash->{'previous'} = 1;
Line 587  sub discourse { Line 589  sub discourse {
        $result .= '<fieldset id="LC_futureusers"><legend>'         $result .= '<fieldset id="LC_futureusers"><legend>'
                  .$bcc_future_hdr                   .$bcc_future_hdr
                  .'</legend>'                   .'</legend>'
                  .'<form name="futureusers">';                   .'<form name="futureusers" action="">';
        $result .= $tmptext.'</form></fieldset>';         $result .= $tmptext.'</form></fieldset>';
        if (ref($statushash) eq 'HASH') {         if (ref($statushash) eq 'HASH') {
            $statushash->{'future'} = 1;             $statushash->{'future'} = 1;
Line 662  sub disgroup { Line 664  sub disgroup {
                     }                      }
                     $r->print('<fieldset>'.                      $r->print('<fieldset>'.
                               '<legend>'.$lt{$status}.'</legend>'.                                '<legend>'.$lt{$status}.'</legend>'.
                               '<form name="'.$formname.'">'.                                '<form name="'.$formname.'" action="">'.
                               '<span class="LC_nobreak">'.                                '<span class="LC_nobreak">'.
                               '<input type="button" value="'.&mt('Check All').'" '.                                '<input type="button" value="'.&mt('Check All').'" '.
                               'onclick="javascript:toggleAll('."this.form,'check'".')" />'.                                'onclick="javascript:toggleAll('."this.form,'check'".')" />'.
Line 811  sub discrit { Line 813  sub discrit {
                 .'<input type="hidden" name="confirm" value="true" />';                  .'<input type="hidden" name="confirm" value="true" />';
     my %what=&Apache::lonnet::dump('critical');      my %what=&Apache::lonnet::dump('critical');
     my $result = '';      my $result = '';
     foreach my $key (sort(keys(%what))) {      # Sort by date in descending order
       foreach my $key (sort{$b <=> $a}(keys(%what))) {    
           print STDERR "key = ||$key||\n";
         my %content=&Apache::lonmsg::unpackagemsg($what{$key});          my %content=&Apache::lonmsg::unpackagemsg($what{$key});
         next if ($content{'senderdomain'} eq '');          next if ($content{'senderdomain'} eq '');
         my $description;          my $description;
Line 877  sub discrit { Line 881  sub discrit {
             '<p class="LC_info">'.              '<p class="LC_info">'.
             &mt('You have no critical messages.').              &mt('You have no critical messages.').
             '</p>'.              '</p>'.
             '<a href="/adm/roles">'.&mt('Select a course').'</a><br />'.              &Apache::lonhtmlcommon::actionbox(
             '<a href="/adm/email">'.&mt('Communicate').'</a>';                  ['<a href="/adm/roles">'.&mt('Select a course').'</a>',
                    '<a href="/adm/email">'.&mt('Communicate').'</a>']);
     } else {      } else {
         $r->print($header);          $r->print($header);
     }      }
Line 1020  sub disall { Line 1025  sub disall {
     &Apache::loncommon::store_settings('user','mail',\%saveable);      &Apache::loncommon::store_settings('user','mail',\%saveable);
     &Apache::loncommon::restore_settings('user','mail',\%saveable);      &Apache::loncommon::restore_settings('user','mail',\%saveable);
     $folder    ||= $env{'form.folder'};      $folder    ||= $env{'form.folder'};
       # Always show critical messages if present
       my @what=&Apache::lonnet::dump('critical',$env{'user.domain'},$env{'user.name'});
       if ($what[0]) {
    if (($what[0] ne 'con_lost') && ($what[0]!~/^error\:/)) {
               $folder = 'critical';
           }
       }
     $msgstatus ||= $env{'form.msgstatus'};      $msgstatus ||= $env{'form.msgstatus'};
     $env{'form.interdis'} ||= 20;      $env{'form.interdis'} ||= 20;
   
Line 1201  ENDDISHEADER Line 1213  ENDDISHEADER
             foreach my $item ($localsenttime,$dis_name,$dis_domain,$shortsubj) {              foreach my $item ($localsenttime,$dis_name,$dis_domain,$shortsubj) {
                 $r->print('<td>'.(($status eq 'new')?'<b>':'').                  $r->print('<td>'.(($status eq 'new')?'<b>':'').
                           '<a href="/adm/email?display='.$origID.$sqs.'">'.                            '<a href="/adm/email?display='.$origID.$sqs.'">'.
                           $item.(($status eq 'new')?'</b>':'').'</a></td>');                            $item.'</a>'.(($status eq 'new')?'</b>':'').'</td>');
             }              }
             # Description and Status              # Description and Status
             my $showstatus;              my $showstatus;
Line 1232  ENDDISHEADER Line 1244  ENDDISHEADER
   
   
     # Bottom Functions      # Bottom Functions
     $r->print('<table border="0" cellspacing="2" cellpadding="8">      $r->print('
   <div class="LC_columnSection"><fieldset>
   <legend>'.&mt('Message Actions').'</legend>
   <table border="0" cellspacing="2" cellpadding="8">
  <tr>   <tr>
   <td>    <td><b>'.&mt('Select Messages').'</b><br />
    <fieldset>  
    <legend>'.&mt('Select').'</legend>  
    <span class="LC_nobreak">     <span class="LC_nobreak">
    <input type="button" onclick="javascript:checkAll(document.disall.delmark)" value="'.&mt('Check All').'" />'."\n".     <input type="button" onclick="javascript:checkAll(document.disall.delmark)" value="'.&mt('Check All').'" />'."\n".
   ' <input type="button" onclick="javascript:uncheckAll(document.disall.delmark)" value="'.&mt('Uncheck All').'" />'."\n".    ' <input type="button" onclick="javascript:uncheckAll(document.disall.delmark)" value="'.&mt('Uncheck All').'" />'."\n".
   '<input type="hidden" name="sortedby" value="'.$env{'form.sortedby'}.'" />    '<input type="hidden" name="sortedby" value="'.$env{'form.sortedby'}.'" />
   </span>    </span>
   </fieldset>  
   </td>'."\n".    </td>'."\n".
   '<td><b>'.&mt('Action').'</b><br />'."\n".    '<td><b>'.&mt('Action').'</b><br />'."\n".
   '  <select name="checkedaction">'."\n");    '  <select name="checkedaction">'."\n");
Line 1251  ENDDISHEADER Line 1263  ENDDISHEADER
         $r->print('    <option value="markeddel">'.&mt('Delete').'</option>'."\n");          $r->print('    <option value="markeddel">'.&mt('Delete').'</option>'."\n");
     }      }
     if ($msgstatus ne 'read') {      if ($msgstatus ne 'read') {
         $r->print('    <option value="markedread">'.&mt('Mark Read').'</option>."\n"');          $r->print('    <option value="markedread">'.&mt('Mark Read').'</option>'."\n");
     }      }
     if ($msgstatus ne 'unread') {      if ($msgstatus ne 'unread') {
         $r->print('    <option value="markedunread">'.&mt('Mark Unread').'</option>'."\n");          $r->print('    <option value="markedunread">'.&mt('Mark Unread').'</option>'."\n");
Line 1266  ENDDISHEADER Line 1278  ENDDISHEADER
     $r->print("\n".'</select></td>'."\n");      $r->print("\n".'</select></td>'."\n");
   
     if (keys(%gotfolders) > 0) {      if (keys(%gotfolders) > 0) {
         $r->print('<td><b>'.&mt('Destination folder').'<b><br />');          $r->print('<td><b>'.&mt('Destination folder').'</b><br />');
  my %userfolders;   my %userfolders;
         foreach my $key (keys(%gotfolders)) {          foreach my $key (keys(%gotfolders)) {
             $userfolders{$key} = $key;              $userfolders{$key} = $key;
Line 1275  ENDDISHEADER Line 1287  ENDDISHEADER
         $r->print(&Apache::loncommon::select_form('','movetofolder',\%userfolders).          $r->print(&Apache::loncommon::select_form('','movetofolder',\%userfolders).
                   '</td>');                    '</td>');
     }      }
     $r->print('<td>'.      $r->print('<td style="vertical-align:bottom;">'.
               '<input type="button" name="go" value="'.&mt('Go').                '<input type="button" name="go" value="'.&mt('Go').
               '" onclick="javascript:validate_checkedaction()"/></td>'."\n".                '" onclick="javascript:validate_checkedaction()"/></td>'."\n".
               '</tr></table>');                '</tr></table>'."\n".
                 '</fieldset></div>'."\n"
       );
     my $postedstartdis=$startdis+1;      my $postedstartdis=$startdis+1;
     $r->print('<input type="hidden" name="folder" value="'.$folder.'" /><input type="hidden" name="startdis" value="'.$postedstartdis.'" /><input type="hidden" name="interdis" value="'.$env{'form.interdis'}.'" /><input type="hidden" name="msgstatus" value="'.$msgstatus.'" /><input type="hidden" name="markedaction" value="" /></form>');      $r->print('<input type="hidden" name="folder" value="'.$folder.'" /><input type="hidden" name="startdis" value="'.$postedstartdis.'" /><input type="hidden" name="interdis" value="'.$env{'form.interdis'}.'" /><input type="hidden" name="msgstatus" value="'.$msgstatus.'" /><input type="hidden" name="markedaction" value="" /></form>');
     if ($numblocked > 0) {      if ($numblocked > 0) {
Line 1657  ENDREPSCRIPT Line 1671  ENDREPSCRIPT
         $r->print(&additional_rec_row(\%lt));          $r->print(&additional_rec_row(\%lt));
         $r->print('<tr><td colspan="2">'.          $r->print('<tr><td colspan="2">'.
                   &mt('Unless you choose otherwise:').'<ul><li>'.                    &mt('Unless you choose otherwise:').'<ul><li>'.
         &mt("The subject in each forwarded message will be <i>'Forwarding:'</i> followed by the original subject.").'</li><li>'.          &mt("The subject in each forwarded message will be [_1]'Forwarding:'[_2] followed by the original subject.",'<i>','</i>').'</li><li>'.
         &mt("The message itself will begin with a first line: <i>'Forwarded message from'</i> followed by the original sender's name.").'</li></ul></td></tr>');          &mt("The message itself will begin with a first line: [_1]'Forwarded message from'[_2] followed by the original sender's name.",'<i>','</i>').'</li></ul></td></tr>');
         $func1='Forward'; # do not translate here!          $func1='Forward'; # do not translate here!
         $dissub = &mt('Forwarding').': ';          $dissub = &mt('Forwarding').': ';
         $subj_size = '10';          $subj_size = '10';
Line 1733  ENDBLOCK Line 1747  ENDBLOCK
 '</pre>  '</pre>
 </p>  </p>
 <p>  <p>
 '.&mt('The messages will be assembled from all lines with the respective'."\n".'<tt>username:domain</tt>, and appended to the general message text.'));  '.&mt('The messages will be assembled from all lines with the respective [_1][_2]username:domain[_3], and appended to the general message text.','<br />','<tt>','</tt>'));
         $r->print(<<ENDUPLOAD);          $r->print(<<ENDUPLOAD);
 </p>  </p>
 <p>  <p>
Line 1919  sub disfacetoface { Line 1933  sub disfacetoface {
             } else {              } else {
                 %content=&Apache::lonmsg::unpackagemsg($content{'message'});                  %content=&Apache::lonmsg::unpackagemsg($content{'message'});
                 $content{'message'} =                  $content{'message'} =
                 '<b>'.&mt('Subject').': '.$content{'subject'}.'</b><br                  '<b>'.&mt('Subject').': '.$content{'subject'}.'</b><br />'.
 '.  
                 $content{'message'};                  $content{'message'};
             }              }
         } else {          } else {
Line 1949  $content{'sendername'}.':'. Line 1962  $content{'sendername'}.':'.
     if ($result eq '') {      if ($result eq '') {
         my $lctype = &mt(lc(&Apache::loncommon::course_type()));          my $lctype = &mt(lc(&Apache::loncommon::course_type()));
  if ($target ne 'tex') {    if ($target ne 'tex') { 
     $r->print("<p><b>".&mt('No notes, face-to-face discussion records, critical messages, or broadcast messages in this [_1].',$lctype)."</b></p>");      $r->print("<p><b>".&mt('No notes, face-to-face discussion records, critical messages or broadcast messages in this '.$lctype.'.')."</b></p>");
  } else {   } else {
     $r->print('\textbf{'.&mt('No notes, face-to-face discussion records, critical messages or broadcast messages in this [_1].',$lctype).'}\\\\');      $r->print('\textbf{'.&mt('No notes, face-to-face discussion records, critical messages or broadcast messages in this '.$lctype.'.').'}\\\\');
  }   }
     } elsif ($target ne 'tex') {      } elsif ($target ne 'tex') {
        $r->print($result.'</div>');         $r->print($result.'</div>');
Line 2041  sub facetoface { Line 2054  sub facetoface {
                  .&mt('Discussion and message records for [_1] ([_2])'                   .&mt('Discussion and message records for [_1] ([_2])'
                      ,$aboutmelink                       ,$aboutmelink
                      ,$env{'form.recuname'}.':'.$env{'form.recdomain'})                       ,$env{'form.recuname'}.':'.$env{'form.recdomain'})
                  .'<h2>'                   .'</h2>'
        );         );
         &disfacetoface($r,$env{'form.recuname'},$env{'form.recdomain'});          &disfacetoface($r,$env{'form.recuname'},$env{'form.recdomain'});
  $r->print(<<ENDRHEAD);   $r->print(<<ENDRHEAD);
Line 2129  sub displaymessage { Line 2142  sub displaymessage {
     push(@functionlist,'<a href="/adm/email?markdel='.&escape($msgid).$sqs.'">'      push(@functionlist,'<a href="/adm/email?markdel='.&escape($msgid).$sqs.'">'
                   .&mt('Delete')                    .&mt('Delete')
                   .'</a>');                    .'</a>');
     push(@functionlist,'<a href="/adm/email?'.$sqs.'">'  
                   .&mt('Back to Folder Display')  # Prepare available navigation
                   .'</a>');      my @navigationlist;
     if ($counter > 0){      if ($counter > 0){
         push(@functionlist,'<a href="/adm/email?display='.$messages[$counter-1]->[5].$sqs.'">'          push(@navigationlist,'<a href="/adm/email?display='.$messages[$counter-1]->[5].$sqs.'">'
                           .&mt('Previous')                            .&mt('Previous')
                           .'</a>');                            .'</a>');
     }      }
     if ($counter < $number_of_messages - 1){      if ($counter < $number_of_messages - 1){
         push(@functionlist,'<a href="/adm/email?display='.$messages[$counter+1]->[5].$sqs.'">'          push(@navigationlist,'<a href="/adm/email?display='.$messages[$counter+1]->[5].$sqs.'">'
                           .&mt('Next')                            .&mt('Next')
                           .'</a>');                            .'</a>');
     }      }
       push(@navigationlist,'<a href="/adm/email?'.$sqs.'">'
                     .&mt('Back to Folder Display')
                     .'</a>');
   
 # Prepare available actions  # Prepare available actions
     my $symb;      my $symb;
Line 2150  sub displaymessage { Line 2166  sub displaymessage {
     } elsif (defined($content{'baseurl'})) {      } elsif (defined($content{'baseurl'})) {
         $symb=&Apache::lonnet::symbread($content{'baseurl'});          $symb=&Apache::lonnet::symbread($content{'baseurl'});
     }      }
         my @actionlist;      my @actionlist;
     if ($env{'user.adv'}) {      if ($env{'user.adv'}) {
   
  if (&Apache::lonnet::allowed('vgr',$env{'request.course.id'})) {   if (&Apache::lonnet::allowed('vgr',$env{'request.course.id'})) {
  push(@actionlist,&Apache::loncommon::track_student_link(   push(@actionlist,&Apache::loncommon::track_student_link(
                                       &mt('View recent activity')                                        'View recent activity'
                                      ,$content{'sendername'}                                       ,$content{'sendername'}
                                      ,$content{'senderdomain'}                                       ,$content{'senderdomain'}
                                      ,'check'));                                       ,'check'));
Line 2178  sub displaymessage { Line 2194  sub displaymessage {
  }   }
     }      }
   
 # Print functionlist and actionlist in page header  # Print functionlist, navigationlist, and actionlist in page header
         my $functions='<div class="LC_columnSection">';          my $functions='<div class="LC_columnSection">';
   
         # Functionlist          # Functionlist
Line 2188  sub displaymessage { Line 2204  sub displaymessage {
         }          }
         $functions .= &Apache::lonhtmlcommon::end_funclist();          $functions .= &Apache::lonhtmlcommon::end_funclist();
   
           # Navigationlist
           $functions.=&Apache::lonhtmlcommon::start_funclist(
                       &mt('Navigation'));
           foreach my $item (@navigationlist) {
               $functions.=&Apache::lonhtmlcommon::add_item_funclist($item);
           }
           $functions .= &Apache::lonhtmlcommon::end_funclist();
   
         # Actionlist          # Actionlist
         if (@actionlist) {          if (@actionlist) {
             my $legendtext=&mt('Currently available actions (will open extra window)');              $functions.=&Apache::lonhtmlcommon::start_funclist(
             $functions.=&Apache::lonhtmlcommon::start_funclist($legendtext);                              &mt('Currently available actions (will open extra window)'));
             foreach my $item (@actionlist) {              foreach my $item (@actionlist) {
                 $functions.=&Apache::lonhtmlcommon::add_item_funclist($item);                  $functions.=&Apache::lonhtmlcommon::add_item_funclist($item);
             }              }

Removed from v.1.160  
changed lines
  Added in v.1.175


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