Ignore:
Timestamp:
07/25/12 09:52:11 (12 years ago)
Author:
nanardon
Message:

Factorize default value computation

This avoid the difference of behavior between OCHelper and direct object
creation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/OCHelper/User.pm

    r1023 r1076  
    5959        push(@{$info->{ask}}, 'uidNumber'); 
    6060        push(@{$info->{ask}}, 'gidNumber'); 
    61         my $mailid = $info->{contents}{givenName} && $info->{contents}{sn} 
    62             ? sprintf('%s.%s', 
    63                 to_ascii(lc($info->{contents}{givenName})), 
    64                 to_ascii(lc($info->{contents}{sn})),) 
    65             : undef; 
    66         $mailid =~ s/ /-/g if ($mailid); # replace space by '-' in mail 
    67         push(@{$info->{ask}}, 'mail'); 
    68         $info->{contents}{mail} = $mailid && $self->base->{defattr}{'user.maildomain'} 
    69             ? sprintf('%s@%s', $mailid, 
    70                 $self->base->{defattr}{'user.maildomain'}) 
    71             : undef; 
     61 
     62       my %default = $self->base->compute_default( 
     63            'user', $login || '', 
     64            %{ $info->{contents} || {} } 
     65        ); 
     66 
     67        if ($default{mail}) { 
     68            push(@{$info->{ask}}, 'mail'); 
     69            $info->{contents}{mail} = $default{mail}; 
     70        } 
    7271        if (my $attr = $self->base->attribute('user', 'aliases')) { 
    7372            if (!$attr->ro) { 
    7473                push(@{$info->{ask}}, 'aliases'); 
    75                 $info->{contents}{aliases} = $mailid 
     74                $info->{contents}{aliases} = $default{aliases}; 
    7675            } 
    7776        } 
     
    7978            if (!$attr->ro) { 
    8079                push(@{$info->{ask}}, 'revaliases'); 
    81                 $info->{contents}{revaliases} = $mailid 
     80                $info->{contents}{revaliases} = $default{revaliases}; 
    8281            } 
    8382        } 
Note: See TracChangeset for help on using the changeset viewer.