Diff for /loncom/interface/lonselstudent.pm between versions 1.5 and 1.9

version 1.5, 2006/05/17 15:20:56 version 1.9, 2006/07/17 16:26:08
Line 36  use     HTML::Entities; Line 36  use     HTML::Entities;
 #  This function produces a list references to four  #  This function produces a list references to four
 #  arrays:  #  arrays:
 #    (\@course_personel, \@current_members, \@expired_members, \@future_members)  #    (\@course_personel, \@current_members, \@expired_members, \@future_members)
 #    #
   #
   # Parameters;
   #
   #  restrict           - Optional.. if present and defined should be a section name.
   #                       The *_members arrays will then only contain people
   #                       in that section
   #
 # Where:  # Where:
 #    course_personnel - Each element of this array is itself a reference to an array  #    course_personnel - Each element of this array is itself a reference to an array
 #                      containing information about a member of the course staff.  #                      containing information about a member of the course staff.
Line 66  use     HTML::Entities; Line 73  use     HTML::Entities;
 #       [4]    username:domain of the user.  #       [4]    username:domain of the user.
 #  #
 sub get_people_in_class {  sub get_people_in_class {
       my ($section_restriction) = @_;
     my %coursepersonnel = &Apache::lonnet::get_course_adv_roles();      my %coursepersonnel = &Apache::lonnet::get_course_adv_roles();
     #      #
     #  Enumerate the course_personnel.      #  Enumerate the course_personnel.
Line 104  sub get_people_in_class { Line 112  sub get_people_in_class {
     my @keys = keys(%{$classlist});      my @keys = keys(%{$classlist});
     # Sort by: Section, name      # Sort by: Section, name
     @keys = sort {      @keys = sort {
         if ($classlist->{$a}->[$section] ne $classlist->{$b}->[$section]) {   lc($classlist->{$a}[$section])  cmp lc($classlist->{$b}[$section])  ||
             return $classlist->{$a}->[$section] cmp $classlist->{$b}->[$section];   lc($classlist->{$a}[$fullname]) cmp lc($classlist->{$b}[$fullname]) ||
         }   lc($a) cmp lc($b)
         return $classlist->{$a}->[$fullname] cmp $classlist->{$b}->[$fullname];  
     } (@keys);      } (@keys);
     
   
   
   
     for (@keys) {      for my $user (@keys) {
    if (!$section_restriction || 
  if ( $classlist->{$_}->[$status] eq      ($section_restriction eq $classlist->{$user}->[$section])) {
     'Active') {  
     push(@current_members, [$_, $classlist->{$_}->[$fullname],   
      $classlist->{$_}->[$section],  
      $classlist->{$_}->[$status], 'Student']);  
  } else {  
     #  Need to figure out if this user is future or  
     #  Expired... If the start date is in the future  
     #  the user is future...else expired.  
           
     my $now = time;      if ( $classlist->{$user}->[$status] eq
     if ($classlist->{$_}->[$start_date] > $now) {   'Active') {
  push(@future_members, [$_, $classlist->{$_}->[$fullname],   push(@current_members, [$user, $classlist->{$user}->[$fullname], 
  $classlist->{$_}->[$section],   $classlist->{$user}->[$section],
  "Future", "Student"]);   $classlist->{$user}->[$status], 'Student']);
     } else {      } else {
  push(@expired_members, [$_, $classlist->{$_}->[$fullname],   #  Need to figure out if this user is future or
  $classlist->{$_}->[$section],   #  Expired... If the start date is in the future
  "Expired", "Student"]);   #  the user is future...else expired.
   
    my $now = time;
    if ($classlist->{$user}->[$start_date] > $now) {
       push(@future_members, [$user, $classlist->{$user}->[$fullname],
      $classlist->{$user}->[$section],
      "Future", "Student"]);
    } else {
       push(@expired_members, [$user,
       $classlist->{$user}->[$fullname],
       $classlist->{$user}->[$section],
       "Expired", "Student"]);
    }
   
     }      }
   
  }   }
     }      }
     return (\@course_personnel,       return (\@course_personnel, 
Line 176  sub render_student_list { Line 187  sub render_student_list {
   
     my $result = "";      my $result = "";
   
       # no students so no output
       return if (!@$students);
   
     if ($javascript && $multiselect) {      if ($javascript && $multiselect) {
         $result .= <<SCRIPT;          $result .= <<SCRIPT;
 <script type="text/javascript">  <script type="text/javascript">
Line 349  SCRIPT Line 363  SCRIPT
     for my $student (@$students) {      for my $student (@$students) {
  $result .= &Apache::loncommon::start_data_table_row().   $result .= &Apache::loncommon::start_data_table_row().
     '<td><input type="'.$input_type.'"  name="'.      '<td><input type="'.$input_type.'"  name="'.
     $resultname.".forminput".'"';      $resultname."_forminput".'"';
  my $user    = $student->[0];   my $user    = $student->[0];
   
  # Figure out which students are checked by default...   # Figure out which students are checked by default...

Removed from v.1.5  
changed lines
  Added in v.1.9


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