Diff for /loncom/interface/lonmodifycourse.pm between versions 1.50 and 1.51

version 1.50, 2010/03/08 22:31:27 version 1.51, 2010/03/15 19:10:59
Line 877  sub update_coowners { Line 877  sub update_coowners {
     }      }
     if ($settings->{'internal.courseowner'} ne $newattr->{'courseowner'}) {      if ($settings->{'internal.courseowner'} ne $newattr->{'courseowner'}) {
         my $oldowner_to_coowner;          my $oldowner_to_coowner;
           my @types = ('co-owners');
         if (($newattr->{'coursecode'}) && ($autocoowners)) {          if (($newattr->{'coursecode'}) && ($autocoowners)) {
             my $oldowner = $settings->{'internal.courseowner'};              my $oldowner = $settings->{'internal.courseowner'};
             if ($cchash{$oldowner.':cc'}) {              if ($cchash{$oldowner.':cc'}) {
                 if ($settings->{'internal.co-owner'}) {                  my ($result,$desc) = &Apache::lonnet::auto_validate_instcode($cnum,$cdom,$newattr->{'coursecode'},$oldowner);
                     my @current = split(',',$settings->{'internal.co-owners'});                  if ($result eq 'valid') {
                     unless (grep(/^\Q$oldowner\E$/,@current)) {                      if ($settings->{'internal.co-owner'}) {
                           my @current = split(',',$settings->{'internal.co-owners'});
                           unless (grep(/^\Q$oldowner\E$/,@current)) {
                               $oldowner_to_coowner = 1;
                           }
                       } else {
                         $oldowner_to_coowner = 1;                          $oldowner_to_coowner = 1;
                     }                      }
                 } else {  
                     $oldowner_to_coowner = 1;  
                 }                  }
             }              }
           } else {
               push(@types,'pendingco-owners');
         }          }
         foreach my $type ('co-owners','pendingco-owners') {          foreach my $type (@types) {
             if ($settings->{'internal.'.$type}) {              if ($settings->{'internal.'.$type}) {
                 my @current = split(',',$settings->{'internal.'.$type});                  my @current = split(',',$settings->{'internal.'.$type});
                 my $newowner = $newattr->{'courseowner'};                  my $newowner = $newattr->{'courseowner'};
Line 960  sub update_coowners { Line 966  sub update_coowners {
                     my @currcoown = split(',',$settings->{'internal.coowners'});                      my @currcoown = split(',',$settings->{'internal.coowners'});
                     my ($updatecoowners,$delcoowners);                      my ($updatecoowners,$delcoowners);
                     foreach my $person (@currcoown) {                      foreach my $person (@currcoown) {
                         my ($result,$desc) = &Apache::lonnet::valid_instcode();                          my ($result,$desc) = &Apache::lonnet::auto_validate_instcode($cnum,$cdom,$newattr->{'coursecode'},$person);
                         if ($result eq 'valid') {                          if ($result eq 'valid') {
                             push(@newcoowners,$person);                              push(@newcoowners,$person);
                         }                          }
                     }                      }
                     foreach my $item (sort(keys(%cchash))) {                      foreach my $item (sort(keys(%cchash))) {
                         my ($uname,$udom,$urole) = split(':',$item);                          my ($uname,$udom,$urole) = split(':',$item);
                           next if ($uname.':'.$udom eq $newattr->{'courseowner'});
                         unless (grep(/^\Q$uname\E:\Q$udom\E$/,@newcoowners)) {                          unless (grep(/^\Q$uname\E:\Q$udom\E$/,@newcoowners)) {
                             push(@newcoowners,$uname.':'.$udom);                              my ($result,$desc) = &Apache::lonnet::auto_validate_instcode($cnum,$cdom,$newattr->{'coursecode'},$uname.':'.$udom);
                               if ($result eq 'valid') {
                                   push(@newcoowners,$uname.':'.$udom);
                               }
                         }                          }
                     }                      }
                     if (@newcoowners) {                      if (@newcoowners) {

Removed from v.1.50  
changed lines
  Added in v.1.51


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