Diff for /loncom/interface/Attic/londropadd.pm between versions 1.19 and 1.20

version 1.19, 2002/01/04 18:13:58 version 1.20, 2002/03/06 22:34:06
Line 129  sub record_sep { Line 129  sub record_sep {
     if ($ENV{'form.upfiletype'} eq 'xml') {      if ($ENV{'form.upfiletype'} eq 'xml') {
     } elsif ($ENV{'form.upfiletype'} eq 'space') {      } elsif ($ENV{'form.upfiletype'} eq 'space') {
         my $i=0;          my $i=0;
         map {          foreach (split(/\s+/,$record) {
             my $field=$_;              my $field=$_;
             $field=~s/^(\"|\')//;              $field=~s/^(\"|\')//;
             $field=~s/(\"|\')$//;              $field=~s/(\"|\')$//;
             $components{$i}=$field;              $components{$i}=$field;
             $i++;              $i++;
         } split(/\s+/,$record);          }
     } elsif ($ENV{'form.upfiletype'} eq 'tab') {      } elsif ($ENV{'form.upfiletype'} eq 'tab') {
         my $i=0;          my $i=0;
         map {          foreach (split(/\t+/,$record)) {
             my $field=$_;              my $field=$_;
             $field=~s/^(\"|\')//;              $field=~s/^(\"|\')//;
             $field=~s/(\"|\')$//;              $field=~s/(\"|\')$//;
             $components{$i}=$field;              $components{$i}=$field;
             $i++;              $i++;
         } split(/\t+/,$record);                  }
     } else {      } else {
         my @allfields=split(/\,/,$record);          my @allfields=split(/\,/,$record);
         my $i=0;          my $i=0;
Line 173  sub dropstudent { Line 173  sub dropstudent {
      my ($udom,$unam,$courseid,$csec)=@_;       my ($udom,$unam,$courseid,$csec)=@_;
      $courseid=~s/\_/\//g;       $courseid=~s/\_/\//g;
      $courseid=~s/^(\w)/\/$1/;       $courseid=~s/^(\w)/\/$1/;
      map {       foreach (split(/\&/,
       &Apache::lonnet::reply('dump:'.$udom.':'.$unam.':roles',
        &Apache::lonnet::homeserver($unam,$udom)))) {
         my ($key,$value)=split(/\=/,$_);          my ($key,$value)=split(/\=/,$_);
         $key=&Apache::lonnet::unescape($key);          $key=&Apache::lonnet::unescape($key);
         if ($key=~/^$courseid(?:\/)*(\w+)*\_st$/) {          if ($key=~/^$courseid(?:\/)*(\w+)*\_st$/) {
Line 197  sub dropstudent { Line 199  sub dropstudent {
             }              }
   }    }
         }          }
     } split(/\&/,&Apache::lonnet::reply('dump:'.$udom.':'.$unam.':roles',      }
                                  &Apache::lonnet::homeserver($unam,$udom)));  
 }  }
   
 # ============================================================== Menu Phase One  # ============================================================== Menu Phase One
Line 434  ENDPICK Line 435  ENDPICK
                 if ($total>=2) {                  if ($total>=2) {
                    %sthree=&record_sep($records[2]);                     %sthree=&record_sep($records[2]);
         }          }
                 map {                  foreach (sort keys %sone) {
                    $r->print('<tr><td><select name=f'.$i.                     $r->print('<tr><td><select name=f'.$i.
                        ' onChange="flip(this.form,'.$i.');">');                         ' onChange="flip(this.form,'.$i.');">');
                    map {                     foreach ('none: ','username:Username',
                       my ($value,$display)=split(/\:/,$_);  
                       $r->print('<option value='.$value.'>'.$display.  
                               '</option>');  
                    } ('none: ','username:Username',  
                       'names:Last Name, First Names',                        'names:Last Name, First Names',
                       'fname:First Name','mname:Middle Names/Initials',                        'fname:First Name','mname:Middle Names/Initials',
                       'lname:Last Name','gen:Generation',                        'lname:Last Name','gen:Generation',
                       'id:ID/Student Number','sec:Group/Section',                        'id:ID/Student Number','sec:Group/Section',
                       'ipwd:Initial Password');                        'ipwd:Initial Password') {
         my ($value,$display)=split(/\:/,$_);
                         $r->print('<option value='.$value.'>'.$display.
                                 '</option>');
                      }
                    $r->print('</select></td><td>');                     $r->print('</select></td><td>');
                    if (defined($sone{$_})) {                      if (defined($sone{$_})) { 
                       $r->print($sone{$_}."</br>\n");                         $r->print($sone{$_}."</br>\n"); 
Line 459  ENDPICK Line 460  ENDPICK
                    }                     }
                    $r->print('</td></tr>');                     $r->print('</td></tr>');
                    $i++;                     $i++;
        } sort keys %sone;         }
        $i--;         $i--;
      }       }
              my $keyfields=join(',',sort keys %sone);               my $keyfields=join(',',sort keys %sone);
Line 770  sub menu_phase_two_drop { Line 771  sub menu_phase_two_drop {
                  my %currentlist=();                   my %currentlist=();
                  my $now=time;                   my $now=time;
                  unless ($classlst=~/^error\:/) {                   unless ($classlst=~/^error\:/) {
                      map {                       foreach (split(/\&/,$classlst)) {
                         my ($name,$value)=split(/\=/,$_);                          my ($name,$value)=split(/\=/,$_);
                         my ($end,$start)=split(/\:/,                          my ($end,$start)=split(/\:/,
                                             &Apache::lonnet::unescape($value));                                              &Apache::lonnet::unescape($value));
Line 779  sub menu_phase_two_drop { Line 780  sub menu_phase_two_drop {
                         if ($active) {                          if ($active) {
            $currentlist{&Apache::lonnet::unescape($name)}=1;             $currentlist{&Apache::lonnet::unescape($name)}=1;
                         }                          }
                      } split(/\&/,$classlst);                       }
 # ----------------------------------------------------------- Print out choices  # ----------------------------------------------------------- Print out choices
                      &show_drop_list($r,%currentlist);                       &show_drop_list($r,%currentlist);
          } else {           } else {
Line 797  sub show_drop_list { Line 798  sub show_drop_list {
   
     $r->print('<input type=hidden name=phase value=four>');      $r->print('<input type=hidden name=phase value=four>');
                      $r->print('<table border=2>');                       $r->print('<table border=2>');
                      map {                       foreach (sort keys %currentlist) {
                          my ($sname,$sdom)=split(/\:/,$_);                           my ($sname,$sdom)=split(/\:/,$_);
                          my %reply=&Apache::lonnet::idrget($sdom,$sname);                           my %reply=&Apache::lonnet::idrget($sdom,$sname);
                          my $ssec=&Apache::lonnet::usection($sdom,$sname,$cid);                           my $ssec=&Apache::lonnet::usection($sdom,$sname,$cid);
Line 815  sub show_drop_list { Line 816  sub show_drop_list {
                                    &Apache::lonnet::unescape($reply[1]).                                     &Apache::lonnet::unescape($reply[1]).
                                    '</td><td>'.                                     '</td><td>'.
                                    $ssec."</td></tr>\n");                                     $ssec."</td></tr>\n");
                      } sort keys %currentlist;                       }
                      $r->print('</table><br>');                       $r->print('</table><br>');
                      $r->print('<input type=submit value="Drop Students">');                       $r->print('<input type=submit value="Drop Students">');
 }  }
Line 863  sub upfile_drop_add { Line 864  sub upfile_drop_add {
               my %student=();                my %student=();
 # ----------------------------------------------------------- Get new classlist  # ----------------------------------------------------------- Get new classlist
 # --------------------------------------------------------- Enroll new students  # --------------------------------------------------------- Enroll new students
       map {        foreach (@studentdata) {
   my %entries=&record_sep($_);    my %entries=&record_sep($_);
   
                 unless (($entries{$fields{'username'}} eq '') ||                  unless (($entries{$fields{'username'}} eq '') ||
Line 939  sub upfile_drop_add { Line 940  sub upfile_drop_add {
                      }                       }
                   }                    }
                  }                                    }                 
               } @studentdata;                }
               $r->print('<p>Processed Students: '.$count);                $r->print('<p>Processed Students: '.$count);
 # --------------------------------------------------------------- Drop students  # --------------------------------------------------------------- Drop students
               if ($ENV{'form.fullup'} eq 'yes') {                if ($ENV{'form.fullup'} eq 'yes') {
Line 952  sub upfile_drop_add { Line 953  sub upfile_drop_add {
                  my %currentlist=();                   my %currentlist=();
                  my $now=time;                   my $now=time;
                  unless ($classlst=~/^error\:/) {                   unless ($classlst=~/^error\:/) {
                      map {                       foreach (split(/\&/,$classlst)) {
                         my ($name,$value)=split(/\=/,$_);                          my ($name,$value)=split(/\=/,$_);
                         my ($end,$start)=split(/\:/,                          my ($end,$start)=split(/\:/,
                                             &Apache::lonnet::unescape($value));                                              &Apache::lonnet::unescape($value));
Line 961  sub upfile_drop_add { Line 962  sub upfile_drop_add {
                         if ($active) {                          if ($active) {
            $currentlist{&Apache::lonnet::unescape($name)}=1;             $currentlist{&Apache::lonnet::unescape($name)}=1;
                         }                          }
                      } split(/\&/,$classlst);                       }
 # ------------------------------------------------ Now got up-to-date classlist  # ------------------------------------------------ Now got up-to-date classlist
                      map {                       foreach (@studentdata) {
                  my %entries=&record_sep($_);                   my %entries=&record_sep($_);
                         unless (($entries{$fields{'username'}} eq '') ||                          unless (($entries{$fields{'username'}} eq '') ||
                           (!defined($entries{$fields{'username'}}))) {                            (!defined($entries{$fields{'username'}}))) {
Line 971  sub upfile_drop_add { Line 972  sub upfile_drop_add {
                             $entries{$fields{'username'}}.':'.                              $entries{$fields{'username'}}.':'.
                             $domain});                              $domain});
         }          }
                      } @studentdata;                       }
 # ----------------------------------------------------------- Print out choices  # ----------------------------------------------------------- Print out choices
                      &show_drop_list($r,%currentlist);                       &show_drop_list($r,%currentlist);
          } else {           } else {
Line 990  sub upfile_drop_add { Line 991  sub upfile_drop_add {
 sub drop_student_list {  sub drop_student_list {
     my $r=shift;      my $r=shift;
     my $count=0;      my $count=0;
     map {      foreach (keys %ENV) {
  if ($_=~/^form\.drop\:/) {   if ($_=~/^form\.drop\:/) {
     my ($dummy,$uname,$udom)=split(/\:/,$_);      my ($dummy,$uname,$udom)=split(/\:/,$_);
             &dropstudent($udom,$uname,$ENV{'request.course.id'});              &dropstudent($udom,$uname,$ENV{'request.course.id'});
             $r->print('Dropped '.$uname.' at '.$udom.'<br>');              $r->print('Dropped '.$uname.' at '.$udom.'<br>');
             $count++;              $count++;
         }          }
     } keys %ENV;      }
     $r->print('<p><b>Dropped '.$count.' student(s).</b>');      $r->print('<p><b>Dropped '.$count.' student(s).</b>');
     $r->print('<p>Re-enrollment will re-activate data.');      $r->print('<p>Re-enrollment will re-activate data.');
 }  }

Removed from v.1.19  
changed lines
  Added in v.1.20


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