Diff for /loncom/interface/lonmsgdisplay.pm between versions 1.16 and 1.22

version 1.16, 2006/04/25 23:12:34 version 1.22, 2006/05/01 19:37:33
Line 261  sub movemsg { Line 261  sub movemsg {
 sub discourse {  sub discourse {
     my $r=shift;      my $r=shift;
     my $classlist = &Apache::loncoursedata::get_classlist();      my $classlist = &Apache::loncoursedata::get_classlist();
     my $now=time;      my ($classgroups,$studentgroups) = 
    &Apache::loncoursedata::get_group_memberships($classlist);
     my %lt=&Apache::lonlocal::texthash('cfa' => 'Check All',      my %lt=&Apache::lonlocal::texthash('cfa' => 'Check All',
             'cfs' => 'Check Section/Group',              'cfs' => 'Check Section/Group',
             'cfn' => 'Uncheck All');              'cfn' => 'Uncheck All');
       if (defined($env{'form.group'})) {
           $r->print('<input type="hidden" name="group" value="'.
                     $env{'form.group'}.'" />'."\n");
       }
     $r->print(<<ENDDISHEADER);      $r->print(<<ENDDISHEADER);
 <input type="hidden" name="sendmode" value="group" />  <input type="hidden" name="sendmode" value="group" />
 <script>  <script pe="text/javascript">
     function checkall() {      function checkall() {
  for (i=0; i<document.forms.compemail.elements.length; i++) {   for (i=0; i<document.forms.compemail.elements.length; i++) {
             if               if 
Line 284  sub discourse { Line 289  sub discourse {
            ('send_to_&&&'+document.forms.compemail.chksec.value+'&&&')==0) {             ('send_to_&&&'+document.forms.compemail.chksec.value+'&&&')==0) {
       document.forms.compemail.elements[i].checked=true;        document.forms.compemail.elements[i].checked=true;
             }              }
               if
             (document.forms.compemail.elements[i].name.indexOf
              ('group_&&&'+document.forms.compemail.chksec.value+'&&&_')==0) {
                 var count = i - document.forms.compemail.elements[i].value;
                 document.forms.compemail.elements[count].checked=true;
               }
         }          }
     }      }
   
Line 298  sub discourse { Line 309  sub discourse {
 </script>  </script>
 <input type="button" onClick="checkall()" value="$lt{'cfa'}" />&nbsp;  <input type="button" onClick="checkall()" value="$lt{'cfa'}" />&nbsp;
 <input type="button" onClick="checksec()" value="$lt{'cfs'}" />  <input type="button" onClick="checksec()" value="$lt{'cfs'}" />
 <input type="text" size="5" name="chksec" />&nbsp;  <input type="text" size="15" name="chksec" value="$env{'form.group'}" />&nbsp;
 <input type="button" onClick="uncheckall()" value="$lt{'cfn'}" />  <input type="button" onClick="uncheckall()" value="$lt{'cfn'}" />
 <p>  <p>
 ENDDISHEADER  ENDDISHEADER
     my %coursepersonnel=&Apache::lonnet::get_course_adv_roles();      my %coursepersonnel=&Apache::lonnet::get_course_adv_roles();
     $r->print('<table>');      $r->print(&Apache::loncommon::start_data_table());
     foreach my $role (sort keys %coursepersonnel) {      if (keys(%coursepersonnel) > 0) {
         foreach (split(/\,/,$coursepersonnel{$role})) {          $r->print('<h3>Non-students</h3>');
             my ($puname,$pudom)=split(/\:/,$_);          $r->print(&Apache::loncommon::start_data_table());
             $r->print('<tr><td><label>'.          $r->print('<tr><th>Name</th><th>Username:Domain</th><th>Role</th></tr>');
                       '<input type="checkbox" name="send_to_&&&&&&_'.          foreach my $role (sort(keys(%coursepersonnel))) {
                       $puname.':'.$pudom.'" /> '.              foreach my $user (split(/\,/,$coursepersonnel{$role})) {
                       &Apache::loncommon::plainname($puname,$pudom).                  my ($puname,$pudom)=split(/\:/,$user);
                       '</label></td>'.                  $r->print(&Apache::loncommon::start_data_table_row());
                       '<td>('.$_.'),</td><td><i>'.$role.'</i></td></tr>');                  $r->print('<td><label>'.
         }                            '<input type="checkbox" name="send_to_&&&&&&_'.
     }                            $puname.':'.$pudom.'" /> '.
     $r->print('</table><table>');                            &Apache::loncommon::plainname($puname,$pudom).
     my $sort = sub {                            '</label></td>'.
  my $aname=lc($classlist->{$a}[&Apache::loncoursedata::CL_FULLNAME()]);                            '<td>('.$user.'),</td><td><i>'.$role.'</i></td>');
  if (!$aname) { $aname=$a; }                  $r->print(&Apache::loncommon::end_data_table_row());
  my $bname=lc($classlist->{$b}[&Apache::loncoursedata::CL_FULLNAME()]);              }
  if (!$bname) { $bname=$b; }          }
  return $aname cmp $bname;          $r->print(&Apache::loncommon::end_data_table());
     };      }
     foreach my $student (sort $sort (keys(%{$classlist}))) {      if (keys(%{$classlist}) > 0) {
  my $info=$classlist->{$student};          $r->print('<h3>Students</h3>');
         my ($sname,$sdom,$status,$fullname,$section) =          $r->print(&Apache::loncommon::start_data_table());
             (@{$info}[&Apache::loncoursedata::CL_SNAME(),          $r->print('<tr><th>Name</th><th>Username:Domain</th><th>Section</th><th>Groups</th></tr>');
                       &Apache::loncoursedata::CL_SDOM(),          my $sort = sub {
                       &Apache::loncoursedata::CL_STATUS(),      my $aname=lc($classlist->{$a}[&Apache::loncoursedata::CL_FULLNAME()]);
                       &Apache::loncoursedata::CL_FULLNAME(),      if (!$aname) { $aname=$a; }
                       &Apache::loncoursedata::CL_SECTION()]);      my $bname=lc($classlist->{$b}[&Apache::loncoursedata::CL_FULLNAME()]);
         next if ($status ne 'Active');      if (!$bname) { $bname=$b; }
  next if ($env{'request.course.sec'} &&      return $aname cmp $bname;
  $section ne $env{'request.course.sec'});          };
         my $key = 'send_to_&&&'.$section.'&&&_'.$student;          foreach my $student (sort $sort (keys(%{$classlist}))) {
         if (! defined($fullname) || $fullname eq '') { $fullname = $sname; }      my $info=$classlist->{$student};
         $r->print('<tr><td><label>'.              my ($sname,$sdom,$status,$fullname,$section) =
                   qq{<input type="checkbox" name="$key" />}.('&nbsp;'x2).                  (@{$info}[&Apache::loncoursedata::CL_SNAME(),
                   $fullname.'</label></td><td>'.$sname.':'.$sdom.'</td><td>'.$section.                            &Apache::loncoursedata::CL_SDOM(),
                   '</td></tr>');                            &Apache::loncoursedata::CL_STATUS(),
                             &Apache::loncoursedata::CL_FULLNAME(),
                             &Apache::loncoursedata::CL_SECTION()]);
               next if ($status ne 'Active');
       next if ($env{'request.course.sec'} &&
        $section ne $env{'request.course.sec'});
               my @studentsgroups = 
    &Apache::loncoursedata::get_students_groups($student,$status,
       $classgroups);
               my $grouplist = join(', ',@studentsgroups);
               my $key = 'send_to_&&&'.$section.'&&&_'.$student;
               if (! defined($fullname) || $fullname eq '') {$fullname = $sname;}
               my $checked = '';
               my $groupcount = 0;
               my $groupitems;
               $r->print(&Apache::loncommon::start_data_table_row());
               $r->print('<td><label>');
               foreach my $group (@studentsgroups) {
                   $groupcount ++;
                   $groupitems .= ('<input type="hidden" name="group_&&&'.
                                   $group.'&&&_'.$student.'" value="'.
                                   $groupcount.'" />');
                   if (defined($env{'form.group'})) {
                       if ($env{'form.group'} eq $group) {
                           $checked = 'checked="checked"';
                       }
                   }
               }
               $r->print(qq{<input type="checkbox" name="$key" $checked />}.
                         ('&nbsp;'x2).$fullname.'</label>'.$groupitems.
                         '</td><td>'.$sname.':'.$sdom.'</td><td>'.$section.
                         '</td><td>'.$grouplist.'</td>');
               $r->print(&Apache::loncommon::end_data_table_row());
           }
           $r->print(&Apache::loncommon::end_data_table());
     }      }
     $r->print('</table>');  
 }  }
   
 # ==================================================== Display Critical Message  # ==================================================== Display Critical Message
Line 1291  sub display_blocker_status { Line 1335  sub display_blocker_status {
         'modi' => 'Modify',          'modi' => 'Modify',
         'canc' => 'Cancel',          'canc' => 'Cancel',
     );      );
       $r->print(&Apache::loncommon::start_data_table());
     $r->print(<<"END");      $r->print(<<"END");
 <table class="LC_data_table">  
   <tr>    <tr>
     <th>$$ltext{'dura'}</th>      <th>$$ltext{'dura'}</th>
     <th>$$ltext{'setb'}</th>      <th>$$ltext{'setb'}</th>
Line 1300  sub display_blocker_status { Line 1344  sub display_blocker_status {
     <th>$$ltext{'actn'}?</th>      <th>$$ltext{'actn'}?</th>
   </tr>    </tr>
 END  END
     foreach (sort keys %{$records}) {      foreach my $record (sort(keys(%{$records}))) {
         my $iter = $parmcount%2;  
         my $onchange = 'onFocus="javascript:window.document.forms['.          my $onchange = 'onFocus="javascript:window.document.forms['.
                        "'blockform'].elements['modify_".$parmcount."'].".                         "'blockform'].elements['modify_".$parmcount."'].".
                        'checked=true;"';                         'checked=true;"';
         my ($start,$end) = split/____/,$_;          my ($start,$end) = split(/____/,$record);
         my $startform = &Apache::lonhtmlcommon::date_setter('blockform','startdate_'.$parmcount,$start,$onchange);          my $startform = &Apache::lonhtmlcommon::date_setter('blockform','startdate_'.$parmcount,$start,$onchange);
         my $endform = &Apache::lonhtmlcommon::date_setter('blockform','enddate_'.$parmcount,$end,$onchange);          my $endform = &Apache::lonhtmlcommon::date_setter('blockform','enddate_'.$parmcount,$end,$onchange);
   
  my ($setuname,$setudom,$title) = &parse_block_record($$records{$_});   my ($setuname,$setudom,$title) = 
       &parse_block_record($$records{$record});
    $title = &HTML::Entities::encode($title,'"<>&');
         my $settername = &Apache::loncommon::plainname($setuname,$setudom);          my $settername = &Apache::loncommon::plainname($setuname,$setudom);
           $r->print(&Apache::loncommon::start_data_table_row());
         $r->print(<<"END");          $r->print(<<"END");
        <tr>  
         <td>$$ltext{'star'}:&nbsp;$startform<br/>$$ltext{'endd'}:&nbsp;&nbsp;$endform</td>          <td>$$ltext{'star'}:&nbsp;$startform<br/>$$ltext{'endd'}:&nbsp;&nbsp;$endform</td>
         <td>$settername</td>          <td>$settername</td>
         <td><input type="text" name="title_$parmcount" size="15" value="$title" /><input type="hidden" name="key_$parmcount" value="$_" /></td>          <td><input type="text" name="title_$parmcount" size="15" value="$title" /><input type="hidden" name="key_$parmcount" value="$record" /></td>
         <td><label>$lt{'modi'}?&nbsp;<input type="checkbox" name="modify_$parmcount" /></label><br /><label>$lt{'canc'}?&nbsp;&nbsp;<input type="checkbox" name="cancel_$parmcount" /></label>          <td><label>$lt{'modi'}?&nbsp;<input type="checkbox" name="modify_$parmcount" /></label><br /><label>$lt{'canc'}?&nbsp;&nbsp;<input type="checkbox" name="cancel_$parmcount" /></label>
        </tr>  
 END  END
         $parmcount ++;          $r->print(&Apache::loncommon::end_data_table_row());
           $parmcount++;
     }      }
     $r->print(<<"END");      $r->print(<<"END");
 </table>  </table>
Line 1358  sub display_addblocker_table { Line 1403  sub display_addblocker_table {
     );      );
     $r->print(<<"END");      $r->print(<<"END");
 <h4>$lt{'addn'}</h4>   <h4>$lt{'addn'}</h4> 
  <table class="LC_data_table">  END
       $r->print(&Apache::loncommon::start_data_table());
       $r->print(<<"END");
    <tr>     <tr>
      <th>$$ltext{'dura'}</th>       <th>$$ltext{'dura'}</th>
      <th>$$ltext{'even'} $lt{'exam'}</th>       <th>$$ltext{'even'} $lt{'exam'}</th>
      <th>$$ltext{'actn'}?</th>       <th>$$ltext{'actn'}?</th>
    </tr>     </tr>
    <tr>  END
      $r->print(&Apache::loncommon::start_data_table_row());
       $r->print(<<"END");
      <td>$$ltext{'star'}:&nbsp;$startform<br />$$ltext{'endd'}:&nbsp;&nbsp;$endform</td>       <td>$$ltext{'star'}:&nbsp;$startform<br />$$ltext{'endd'}:&nbsp;&nbsp;$endform</td>
      <td><input type="text" name="title_$parmcount" size="15" value="" /></td>       <td><input type="text" name="title_$parmcount" size="15" value="" /></td>
      <td><label>$lt{'addb'}?&nbsp;<input type="checkbox" name="add_$parmcount" value="1" /></label></td>       <td><label>$lt{'addb'}?&nbsp;<input type="checkbox" name="add_$parmcount" value="1" /></label></td>
    </tr>  
   </table>  
 END  END
       $r->print(&Apache::loncommon::end_data_table_row());
       $r->print(&Apache::loncommon::end_data_table());
     return;      return;
 }  }
   
Line 1388  sub blockcheck { Line 1437  sub blockcheck {
     # for students.      # for students.
     return if (!%live_courses);      return if (!%live_courses);
   
     &Apache::lonnet::logthis("hmm");  
     &Apache::lonnet::logthis(join(" ",%live_courses));  
     &Apache::lonnet::logthis(join(" ",%staff_of));  
   
     foreach my $course (keys(%live_courses)) {      foreach my $course (keys(%live_courses)) {
  my ($cdom,$cnum) = split(/_/,$course);   my $cdom = $env{'course.'.$course.'.domain'};
    my $cnum = $env{'course.'.$course.'.num'};
   
  # if they are a staff member and are currently not playing student   # if they are a staff member and are currently not playing student
  next if ( $staff_of{$course}    next if ( $staff_of{$course} 
Line 1428  sub build_block_table { Line 1474  sub build_block_table {
         'cour' => 'Course',          'cour' => 'Course',
         'dura' => 'Duration',          'dura' => 'Duration',
         'blse' => 'Block set by'          'blse' => 'Block set by'
     );       );
       $r->print(<<"END");
   <br /><br />$lt{'cacb'}:<br /><br />
   END
       $r->print(&Apache::loncommon::start_data_table());
     $r->print(<<"END");      $r->print(<<"END");
 <br /<br />$lt{'cacb'}:<br /><br />  
 <table class="LC_data_table">  
 <tr>  <tr>
  <th>$lt{'cour'}</th>   <th>$lt{'cour'}</th>
  <th>$lt{'dura'}</th>   <th>$lt{'dura'}</th>
  <th>$lt{'blse'}</th>   <th>$lt{'blse'}</th>
 </tr>  </tr>
 END  END
     foreach (keys %{$setters}) {      foreach my $course (keys(%{$setters})) {
         my %courseinfo=&Apache::lonnet::coursedescription($_);          my %courseinfo=&Apache::lonnet::coursedescription($course);
         for (my $i=0; $i<@{$$setters{$_}{staff}}; $i++) {          for (my $i=0; $i<@{$$setters{$course}{staff}}; $i++) {
             my ($uname,$udom) = @{$$setters{$_}{staff}[$i]};              my ($uname,$udom) = @{$$setters{$course}{staff}[$i]};
             my $fullname = &Apache::loncommon::plainname($uname,$udom);              my $fullname = &Apache::loncommon::plainname($uname,$udom);
             my ($openblock,$closeblock) = @{$$setters{$_}{times}[$i]};              my ($openblock,$closeblock) = @{$$setters{$course}{times}[$i]};
             $openblock = &Apache::lonlocal::locallocaltime($openblock);              $openblock = &Apache::lonlocal::locallocaltime($openblock);
             $closeblock= &Apache::lonlocal::locallocaltime($closeblock);              $closeblock= &Apache::lonlocal::locallocaltime($closeblock);
             $r->print('<tr><td>'.$courseinfo{'description'}.'</td>'.              $r->print(&Apache::loncommon::start_data_table_row().
         '<td>'.$courseinfo{'description'}.'</td>'.
                       '<td>'.$openblock.' to '.$closeblock.'</td>'.                        '<td>'.$openblock.' to '.$closeblock.'</td>'.
                       '<td>'.$fullname.' ('.$uname.':'.$udom.                        '<td>'.$fullname.' ('.$uname.':'.$udom.
                       ')</td></tr>');                        ')</td>'.
          &Apache::loncommon::end_data_table_row());
         }          }
     }      }
     $r->print('</table>');      $r->print(&Apache::loncommon::end_data_table());
 }  }
   
 # ----------------------------------------------------------- Display a message  # ----------------------------------------------------------- Display a message
Line 1604  sub header { Line 1654  sub header {
     $r->print(&Apache::loncommon::start_page('Communication and Messages',      $r->print(&Apache::loncommon::start_page('Communication and Messages',
      $extra));       $extra));
     $r->print(&Apache::lonhtmlcommon::breadcrumbs      $r->print(&Apache::lonhtmlcommon::breadcrumbs
       (undef,($title?$title:'Communication and Messages')));        (($title?$title:'Communication and Messages')));
   
 }  }
   
Line 1852  sub handler { Line 1902  sub handler {
         ['display','replyto','forward','markread','markdel','markunread',          ['display','replyto','forward','markread','markdel','markunread',
          'sendreply','compose','sendmail','critical','recname','recdom',           'sendreply','compose','sendmail','critical','recname','recdom',
          'recordftf','sortedby','block','folder','startdis','interdis',           'recordftf','sortedby','block','folder','startdis','interdis',
  'showcommentbaseurl','dismode']);   'showcommentbaseurl','dismode','group']);
     $sqs='&sortedby='.$env{'form.sortedby'};      $sqs='&sortedby='.$env{'form.sortedby'};
   
 # ------------------------------------------------------ They checked for email  # ------------------------------------------------------ They checked for email

Removed from v.1.16  
changed lines
  Added in v.1.22


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