Changeset 107
- Timestamp:
- 05/14/09 03:08:41 (15 years ago)
- Location:
- LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Ad
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Ad/Group.pm
r106 r107 48 48 ( 49 49 qw(gidNumber description member memberUID), # sAMAccountName: conflict with user 50 # must be uniq in AD 50 51 ($mode !~ /w/ 51 52 ? qw(cn dn) … … 110 111 my ($self, %data) = @_; 111 112 my %ndata; 112 my $need_change = 0;113 113 while (my ($f, $val) = each(%data)) { 114 114 $f eq 'memberUID' and do { … … 121 121 if ($users{$_}{e}) { 122 122 $self->{entry}->del(memberUID => $_); 123 $need_change = 1;124 123 } elsif ($users{$_}{n}) { 125 124 $self->{entry}->add(memberUID => $_); 126 $need_change = 1;127 125 } # else {} # can't happen 128 126 my $mesg = $self->{entry}->update($self->base->ldap); … … 139 137 if ($users{$_}{e}) { 140 138 $self->{entry}->del(member => $user->get_field('dn')); 141 $need_change = 1;142 139 } elsif ($users{$_}{n}) { 143 140 $self->{entry}->add(member => $user->get_field('dn')); 144 $need_change = 1;145 141 } # else {} # can't happen 146 142 } … … 149 145 $ndata{$f} = $val; 150 146 } 151 $need_change || scalar(keys %ndata) or return '0E0';152 147 $self->SUPER::set_fields(%ndata); 153 148 } -
LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Ad/User.pm
r106 r107 123 123 my ($self, %data) = @_; 124 124 my %ndata; 125 my $needup = 0;126 125 while (my ($f, $val) = each(%data)) { 127 126 $f eq 'memberOf' and do { … … 134 133 if ($users{$_}{e}) { 135 134 $self->{entry}->del(memberOf => $user->get_field('dn')); 136 $needup = 1;137 135 } elsif ($users{$_}{n}) { 138 136 $self->{entry}->add(memberOf => $user->get_field('dn')); 139 $needup = 1;140 137 } # else {} # can't happen 141 138 my $mesg = $self->{entry}->update($self->base->ldap); … … 145 142 $ndata{$f} = $val; 146 143 } 147 $needup || scalar(keys %ndata) or return '0E0';148 144 $self->SUPER::set_fields(%ndata); 149 145 } -
LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Ad/objects.pm
r106 r107 120 120 my ($self, %fields) = @_; 121 121 122 my $needup = 0;123 122 foreach (keys %fields) { 124 123 $self->get_field_name($_, 'w') or next; 125 124 $self->_populate_entry($self->{entry}, $_, $fields{$_}); 126 $needup = 1;127 125 } 128 126 129 $needup or return '0E0';130 127 my $mesg = $self->{entry}->update($self->base->ldap); 131 128 132 if ($mesg->code ) {129 if ($mesg->code && $mesg->code != 82) { 133 130 warn $mesg->error; 134 131 return;
Note: See TracChangeset
for help on using the changeset viewer.