Diff for /loncom/interface/Attic/londropadd.pm between versions 1.33 and 1.36

version 1.33, 2002/04/29 14:36:23 version 1.36, 2002/05/01 20:15:41
Line 84  sub modifystudent { Line 84  sub modifystudent {
     my %roles = &Apache::lonnet::dump('roles',$udom,$unam);      my %roles = &Apache::lonnet::dump('roles',$udom,$unam);
     my ($tmp) = keys(%roles);      my ($tmp) = keys(%roles);
     # Bail out if we were unable to get the students roles      # Bail out if we were unable to get the students roles
     return if ($tmp =~ /^(con_lost|error|no_such_host)/i);      return "$1" if ($tmp =~ /^(con_lost|error|no_such_host)/i);
     # Go through the roles looking for enrollment in this course      # Go through the roles looking for enrollment in this course
       my $result = '';
     foreach my $course (keys(%roles)) {      foreach my $course (keys(%roles)) {
         my $value = $roles{$course};          if ($course=~/^$courseid(?:\/)*(?:\s+)*(\w+)*\_st$/) {
         if ($course=~/^$courseid(?:\/)*(\w+)*\_st$/) {  
             # We are in this course              # We are in this course
             my $section=$1;              my $section=$1;
             $section='' if ($course eq $courseid.'_st');              $section='' if ($course eq $courseid.'_st');
             if (((!$section) && (!$csec)) || ($section ne $csec)) {              if ( ((!$section) && (!$csec)) || ($section ne $csec) ) {
                 my (undef,$end,$start)=split(/\_/,$roles{$course});                  my (undef,$end,$start)=split(/\_/,$roles{$course});
                 my $now=time;                  my $now=time;
                 if (!($start && ($now<$start)) || !($end && ($now>$end))) {                  if (!($start && ($now<$start)) || !($end && ($now>$end))) {
                     my $reply=&Apache::lonnet::modifystudent                      my $reply=&Apache::lonnet::modifystudent
                         ($udom,$unam,'','','','','','','',                          ($udom,$unam,'','','','','','','',
                          $section,time,undef,undef,$desiredhost);                           $section,time,undef,undef,$desiredhost);
                       $result .= $reply.':';
                 }                  }
             }              }
         }          }
     }      }
       if ($result eq '') {
           $result eq 'Unable to find section for this student';
       } elsif ($result =~ /^(ok:)+$/) {
           $result eq 'ok';
       }
       return $result;
 }  }
   
 # ============ build a domain and server selection form  # ============ build a domain and server selection form
Line 168  sub phase_two_header { Line 175  sub phase_two_header {
 Total number of records found in file: $distotal <hr />  Total number of records found in file: $distotal <hr />
 Enter as many fields as you can. The system will inform you and bring you back  Enter as many fields as you can. The system will inform you and bring you back
 to this page if the data selected is insufficient to run your class.<hr />  to this page if the data selected is insufficient to run your class.<hr />
 <input type="submit" name="associate"  value="Reverse Association" />  <input type="button" value="Reverse Association" onClick="javascript:this.form.associate.value='Reverse Association';submit(this.form);" />
   <input type="hidden" name="associate"  value="" />
 <input type="hidden" name="phase"      value="three" />  <input type="hidden" name="phase"      value="three" />
 <input type="hidden" name="datatoken"  value="$datatoken" />  <input type="hidden" name="datatoken"  value="$datatoken" />
 <input type="hidden" name="fileupload" value="$ENV{'form.fileupload'}" />  <input type="hidden" name="fileupload" value="$ENV{'form.fileupload'}" />
Line 450  LON-CAPA domain: $domform <p> Line 458  LON-CAPA domain: $domform <p>
 <input type=checkbox name=forceid value=yes>   <input type=checkbox name=forceid value=yes> 
 Disable ID/Student Number Safeguard and Force Change of Conflicting IDs  Disable ID/Student Number Safeguard and Force Change of Conflicting IDs
 (only do if you know what you are doing)<p>  (only do if you know what you are doing)<p>
 <input type="button" onClick="verify(this.form)" value="Update Courselist"><br>  <input type="button" onClick="javascript:verify(this.form)" value="Update Courselist" /><br />
 Note: for large courses, this operation might be time consuming.  Note: for large courses, this operation might be time consuming.
 ENDPICK  ENDPICK
 }  }
Line 503  sub menu_phase_two_upload { Line 511  sub menu_phase_two_upload {
 sub enroll_single_student {  sub enroll_single_student {
     my $r=shift;      my $r=shift;
     $r->print('<h3>Enrolling Student</h3>');      $r->print('<h3>Enrolling Student</h3>');
     $r->print($ENV{'form.cuname'}." in domain ".$ENV{'form.lcdomain'});      $r->print('<p>Enrolling '.$ENV{'form.cuname'}." in domain ".
                 $ENV{'form.lcdomain'}.'</p>');
     if (($ENV{'form.cuname'})&&($ENV{'form.cuname'}!~/\W/)&&      if (($ENV{'form.cuname'})&&($ENV{'form.cuname'}!~/\W/)&&
         ($ENV{'form.lcdomain'})&&($ENV{'form.lcdomain'}!~/\W/)) {          ($ENV{'form.lcdomain'})&&($ENV{'form.lcdomain'}!~/\W/)) {
         # Deal with home server selection          # Deal with home server selection
Line 519  sub enroll_single_student { Line 528  sub enroll_single_student {
                 return;                  return;
             }              }
         }          }
         $r->print(" with server $desiredhost :");          $r->print(" with server $desiredhost :") if (defined($desiredhost));
         # End of home server selection logic          # End of home server selection logic
  my $amode='';   my $amode='';
         my $genpwd='';          my $genpwd='';
Line 534  sub enroll_single_student { Line 543  sub enroll_single_student {
     $genpwd=$ENV{'form.locarg'};      $genpwd=$ENV{'form.locarg'};
     if (!$genpwd) { $genpwd=" "; }      if (!$genpwd) { $genpwd=" "; }
  }   }
         if (($amode) && ($genpwd)) {          my $home = &Apache::lonnet::homeserver($ENV{'form.cuname'},
                                                      $ENV{'form.lcdomain'});
           if ((($amode) && ($genpwd)) || ($home ne 'no_host')) {
             &modifystudent($ENV{'form.lcdomain'},$ENV{'form.cuname'},              &modifystudent($ENV{'form.lcdomain'},$ENV{'form.cuname'},
                            $ENV{'request.course.id'},$ENV{'form.csec'},                             $ENV{'request.course.id'},$ENV{'form.csec'},
                             $desiredhost);                              $desiredhost);
Line 547  sub enroll_single_student { Line 558  sub enroll_single_student {
                       $ENV{'form.startdate'},$ENV{'form.forceid'},                        $ENV{'form.startdate'},$ENV{'form.forceid'},
                     $desiredhost));                      $desiredhost));
  } else {   } else {
            $r->print('Invalid login mode or password');                  $r->print('<p><font color="#ff0000">ERROR</font>&nbsp;'.
                         'Invalid login mode or password.  '.
                         'Unable to enroll '.$ENV{'form.cuname'}.'.</p>');
         }                    }          
     } else {      } else {
         $r->print('Invalid username or domain');          $r->print('Invalid username or domain');
Line 934  sub upfile_drop_add { Line 947  sub upfile_drop_add {
 sub drop_student_list {  sub drop_student_list {
     my $r=shift;      my $r=shift;
     my $count=0;      my $count=0;
     foreach (@{$ENV{'form.droplist'}}) {      my @droplist;
       if (ref($ENV{'form.droplist'})) {
           @droplist = @{$ENV{'form.droplist'}};
       } else {
           @droplist = ($ENV{'form.droplist'});
       }
       foreach (@droplist) {
         my ($uname,$udom)=split(/\:/,$_);          my ($uname,$udom)=split(/\:/,$_);
         &modifystudent($udom,$uname,$ENV{'request.course.id'});          my $result = &modifystudent($udom,$uname,$ENV{'request.course.id'});
         $r->print('Dropped '.$uname.' at '.$udom.'<br>');          if ($result eq 'ok') {
               $r->print('Dropped '.$uname.' at '.$udom.'<br>');
           } else {
               $r->print('Error dropping '.$uname.' at '.$udom.': '.$result.
                         '<br />');
           }
         $count++;          $count++;
     }      }
     $r->print('<p><b>Dropped '.$count.' student(s).</b>');      $r->print('<p><b>Dropped '.$count.' student(s).</b>');

Removed from v.1.33  
changed lines
  Added in v.1.36


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