Diff for /loncom/interface/lonpopulate.pm between versions 1.62.4.2 and 1.63

version 1.62.4.2, 2010/01/22 13:20:04 version 1.63, 2009/06/05 12:49:50
Line 508  ENDTWO Line 508  ENDTWO
   } elsif ($action eq "notify") {    } elsif ($action eq "notify") {
       my $notifycount = 0;        my $notifycount = 0;
       my @notified = split(/,/,$enrollvar{notifylist});        my @notified = split(/,/,$enrollvar{notifylist});
       my (@domcoord,@showdom,@olddomcoord,@futuredomcoord);        my @domcoord;
         my @showdom;
       for (my $i=0; $i<@notified; $i++) {        for (my $i=0; $i<@notified; $i++) {
           if ($notified[$i] !~ /:/) {            if ($notified[$i] !~ /:/) {
               $notified[$i] =~ s/\@/:/;                $notified[$i] =~ s/\@/:/;
Line 521  ENDTWO Line 522  ENDTWO
       } else {        } else {
           $noteset = "OFF";            $noteset = "OFF";
       }        }
       my $now = time;  
       my %dompersonnel = &Apache::lonnet::get_domain_roles($dom,['dc']);        my %dompersonnel = &Apache::lonnet::get_domain_roles($dom,['dc']);
       foreach my $server (keys(%dompersonnel)) {        foreach my $server (keys(%dompersonnel)) {
           foreach my $user (sort(keys(%{$dompersonnel{$server}}))) {            foreach my $user (sort(keys(%{$dompersonnel{$server}}))) {
               my ($trole,$uname,$udom,$runame,$rudom,$rsec) = split(/:/,$user);                my ($trole,$uname,$udom,$runame,$rudom,$rsec) = split(/:/,$user);
               my ($end,$start) = split(':',$dompersonnel{$server}{$user});                if (!grep(/^$uname:$udom$/,@domcoord)) {
               if (($end eq '') || ($end == 0) || ($end > $now)) {                    push(@domcoord,$uname.':'.$udom);
                   if ($start > $now) {  
                       if (!grep(/^\Q$uname\E:\Q$udom\E$/,@futuredomcoord)) {  
                           push(@futuredomcoord,$uname.':'.$udom);  
                       }  
                   } else {  
                       if (!grep(/^\Q$uname\E:\Q$udom\E$/,@domcoord)) {  
                           push(@domcoord,$uname.':'.$udom);  
                       }  
                   }  
               } else {  
                   if (!grep(/^\Q$uname\E:\Q$udom\E$/,@olddomcoord)) {  
                       push(@olddomcoord,$uname.':'.$udom);  
                   }  
               }                }
           }            }
       }        }
Line 578  ENDTWO Line 565  ENDTWO
       my %pname;        my %pname;
       my %notifystate;        my %notifystate;
       my %status;        my %status;
         my $now = time;
       foreach my $person (sort(keys(%coursepersonnel))) {        foreach my $person (sort(keys(%coursepersonnel))) {
           my $match = 0;            my $match = 0;
           my ($role,$user,$usec) = ($person =~ /^([^:]+):([^:]+:[^:]+):([^:]*)/);            my ($role,$user,$usec) = ($person =~ /^([^:]+):([^:]+:[^:]+):([^:]*)/);
Line 613  ENDTWO Line 601  ENDTWO
                                   usnm => 'username:domain',                                    usnm => 'username:domain',
                                   coac => 'Course Access',                                    coac => 'Course Access',
                                   curn => 'Current notification status',                                    curn => 'Current notification status',
                                   doms => 'Domain Coordinator status',  
                                   notf => 'Notification?',                                    notf => 'Notification?',
                                   ntac => 'Notification active',                                    ntac => 'Notification active',
                                   ntin => 'Notification inactive',                                    ntin => 'Notification inactive',
Line 643  ENDTWO Line 630  ENDTWO
       if (grep(/^$viewer$/,@domcoord)) {        if (grep(/^$viewer$/,@domcoord)) {
           $showalldc = 1;            $showalldc = 1;
       }        }
       foreach my $dc (@domcoord,@futuredomcoord) {        foreach my $dc (@domcoord) {
           if (!grep(/^$dc$/,@ccs)) {            if (!grep(/^$dc$/,@ccs)) {
               if (grep(/^$dc$/,@notified)) {                if (grep(/^$dc$/,@notified)) {
                   $notifystate{$dc} = 1;                    $notifystate{$dc} = 1;
Line 658  ENDTWO Line 645  ENDTWO
               push(@showdom,$dc);                push(@showdom,$dc);
           }            }
       }        }
       foreach my $olddc (@olddomcoord) {  
           if (grep(/^$olddc$/,@notified)) {  
               if (!grep(/^\Q$olddc\E$/,@ccs)) {  
                   $notifystate{$olddc} = 1;  
                   my ($dcname,$dcdom) = split(/:/,$olddc);  
                   $pname{$olddc} =  &Apache::loncommon::plainname($dcname,$dcdom);  
                   push(@showdom,$olddc);  
               }  
           }  
       }  
       my $showdomnum = scalar(@showdom);        my $showdomnum = scalar(@showdom);
       if ($showdomnum) {        if ($showdomnum) {
           $r->print("            $r->print("
Line 685  ENDTWO Line 662  ENDTWO
              </tr>               </tr>
              <tr>               <tr>
               <td>");                <td>");
           $r->print(&notifier_tables('dc',\%lt,\@showdom,\%status,\%notifystate,\%pname,            $r->print(&notifier_tables('dc',\%lt,\@showdom,\%status,\%notifystate,
                                      \$notifyshow,\@olddomcoord,\@futuredomcoord));                                       \%pname,\$notifyshow));
           $r->print("            $r->print("
              </td>               </td>
           </tr>");            </tr>");
Line 1155  onclick="javascript:document.photoupdate Line 1132  onclick="javascript:document.photoupdate
       my ($indexhash,$keylist) = &Apache::lonuserutils::make_keylist_array();        my ($indexhash,$keylist) = &Apache::lonuserutils::make_keylist_array();
       my $classlist = &Apache::loncoursedata::get_classlist();        my $classlist = &Apache::loncoursedata::get_classlist();
       my $secidx = &Apache::loncoursedata::CL_SECTION();        my $secidx = &Apache::loncoursedata::CL_SECTION();
       my $crstype =&Apache::loncommon::course_type();        my ($permission,$allowed) = &Apache::lonuserutils::get_permission();
       my ($permission,$allowed) = &Apache::lonuserutils::get_permission('course',$crstype);  
       foreach my $student (keys(%{$classlist})) {        foreach my $student (keys(%{$classlist})) {
           if (exists($permission->{'view_section'})) {            if (exists($permission->{'view_section'})) {
               if ($classlist->{$student}[$secidx] ne $permission->{'view_section'}) {                if ($classlist->{$student}[$secidx] ne $permission->{'view_section'}) {
Line 1192  onclick="javascript:document.photoupdate Line 1168  onclick="javascript:document.photoupdate
               if ($autocount > 0) {                if ($autocount > 0) {
                   $cellcount ++;                    $cellcount ++;
                   $r->print(<<END);                    $r->print(<<END);
                        <td><fieldset><legend>&nbsp;<b>Change auto</b></legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.chgauto)" />&nbsp;&nbsp;                         <td><fieldset><legend>Change auto</legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.chgauto)" />&nbsp;&nbsp;
                        <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.chgauto)" /></fieldset></td>                         <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.chgauto)" /></fieldset></td>
 END  END
               }                }
               if ($manualcount > 0) {                if ($manualcount > 0) {
                   $cellcount ++;                    $cellcount ++;
                   $r->print(<<END);                    $r->print(<<END);
                        <td><fieldset><legend>&nbsp;<b>Change manual</b></legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.chgmanual)" />&nbsp;&nbsp;                         <td><fieldset><legend>Change manual</legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.chgmanual)" />&nbsp;&nbsp;
                        <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.chgmanual)" /></fieldset></td>                         <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.chgmanual)" /></fieldset></td>
 END  END
               }                }
Line 1209  END Line 1185  END
                   }                    }
                   $cellcount ++;                    $cellcount ++;
                   $r->print(<<END);                    $r->print(<<END);
                        <td><fieldset><legend>&nbsp;<b>Lock manual</b></legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.lockchg)" />&nbsp;&nbsp;                         <td><fieldset><legend>Lock manual</legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.lockchg)" />&nbsp;&nbsp;
                        <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.lockchg)" /></fieldset></td>                         <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.lockchg)" /></fieldset></td>
 END  END
               }                }
Line 1219  END Line 1195  END
                   }                    }
                   $cellcount ++;                    $cellcount ++;
                   $r->print(<<END);                    $r->print(<<END);
                        <td><fieldset><legend>&nbsp;<b>Unlock manual</b></legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.unlockchg)" />&nbsp;&nbsp;                         <td><fieldset><legend>Unlock manual</legend><input type="button" value="check all" onclick="javascript:checkAll(document.studentform.unlockchg)" />&nbsp;&nbsp;
                        <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.unlockchg)" /></fieldset></td>                         <input type="button" value="uncheck all" onclick="javascript:uncheckAll(document.studentform.unlockchg)" /></fieldset></td>
 END  END
               }                }
Line 1254  END Line 1230  END
 }  }
   
 sub notifier_tables {  sub notifier_tables {
     my ($role,$lt,$users,$status,$notifystate,$pname,$notifyshow,$olddomcoord,      my ($role,$lt,$users,$status,$notifystate,$pname,$notifyshow) = @_;
         $futuredomcoord) = @_;  
     my $output = &Apache::loncommon::start_data_table();      my $output = &Apache::loncommon::start_data_table();
     $output .= &Apache::loncommon::start_data_table_header_row();      $output .= &Apache::loncommon::start_data_table_header_row();
     $output .= "<th>$$lt{name}</th>      $output .= "<th>$$lt{name}</th>
                 <th>$$lt{usnm}</th>";                  <th>$$lt{usnm}</th>";
     if ($role eq 'dc') {      if ($role eq 'cc') {
         $output .= "<th>$$lt{doms}</th>";  
     } elsif ($role eq 'cc') {  
         $output .= "<th>$$lt{coac}</th>";          $output .= "<th>$$lt{coac}</th>";
     }      } 
     $output .=  "<th>$$lt{curn}</th>      $output .=  "<th>$$lt{curn}</th>
                  <th>$$lt{notf}</th>";                   <th>$$lt{notf}</th>";
     $output .= &Apache::loncommon::end_data_table_header_row();      $output .= &Apache::loncommon::end_data_table_header_row();
Line 1273  sub notifier_tables { Line 1246  sub notifier_tables {
         $output .= '<td>'.$$pname{$$users[$i]}.'</td>'.          $output .= '<td>'.$$pname{$$users[$i]}.'</td>'.
                    '<td><input type="hidden" name="notifyname_'.$$notifyshow.                     '<td><input type="hidden" name="notifyname_'.$$notifyshow.
                    '" value="'.$$users[$i].'" />'.$$users[$i].'</td>';                     '" value="'.$$users[$i].'" />'.$$users[$i].'</td>';
         if ($role eq 'dc') {          if ($role eq 'cc') {
             $output .= '<td>';  
             if ((ref($olddomcoord) eq 'ARRAY') && (ref($futuredomcoord) eq 'ARRAY')) {  
                 if (grep(/^\Q$users->[$i]\E$/,@{$olddomcoord})) {  
                     $output .= &mt('expired');  
                 } elsif (grep(/^\Q$users->[$i]\E$/,@{$futuredomcoord})) {  
                     $output .= &mt('future');  
                 } else {  
                     $output .= &mt('active');  
                 }  
             }  
             $output .= '</td>';  
         } elsif ($role eq 'cc') {  
             $output .= '<td>'.$$status{$$users[$i]}.'</td>';              $output .= '<td>'.$$status{$$users[$i]}.'</td>';
         }          }
         $output .= '<td>';          $output .= '<td>';

Removed from v.1.62.4.2  
changed lines
  Added in v.1.63


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