Changeset 2265


Ignore:
Timestamp:
06/19/19 11:49:49 (5 years ago)
Author:
nanardon
Message:

Fix address change propagation

Location:
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql
Files:
2 edited

Legend:

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

    r2264 r2265  
    126126                        ); 
    127127                    } 
    128                     foreach my $al ($self->object->get_attributes('otheraddress')) { 
     128                    foreach my $al ($self->object->get_attributes('_otheraddress')) { 
    129129                        my $obj = $self->base->get_object('address', $al) or next; 
    130130                        $obj->_set_c_fields( 
     
    769769                get => sub { 
    770770                    my ($self) = @_; 
    771                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     771                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    772772                        $self->base->get_object('address', $fmainaddress) 
    773773                            ->_get_c_field($self->name); 
     
    782782                get => sub { 
    783783                    my ($self) = @_; 
    784                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     784                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    785785                        $self->base->get_object('address', $fmainaddress) 
    786786                            ->_get_c_field($self->name); 
     
    794794                get => sub { 
    795795                    my ($self) = @_; 
    796                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     796                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    797797                        $self->base->get_object('address', $fmainaddress) 
    798798                            ->_get_c_field($self->name); 
     
    807807                get => sub { 
    808808                    my ($self) = @_; 
    809                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     809                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    810810                        $self->base->get_object('address', $fmainaddress) 
    811811                            ->_get_c_field($self->name); 
     
    821821                get => sub { 
    822822                    my ($self) = @_; 
    823                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     823                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    824824                        $self->base->get_object('address', $fmainaddress) 
    825825                            ->_get_c_field($self->name); 
     
    834834                get => sub { 
    835835                    my ($self) = @_; 
    836                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     836                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    837837                        $self->base->get_object('address', $fmainaddress) 
    838838                            ->_get_c_field($self->name); 
     
    847847                get => sub { 
    848848                    my ($self) = @_; 
    849                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     849                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    850850                        $self->base->get_object('address', $fmainaddress) 
    851851                            ->_get_c_field($self->name); 
     
    859859                get => sub { 
    860860                    my ($self) = @_; 
    861                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     861                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    862862                        $self->base->get_object('address', $fmainaddress) 
    863863                            ->_get_c_field($self->name); 
     
    882882                get => sub { 
    883883                    my ($self) = @_; 
    884                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     884                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    885885                        $self->base->get_object('address', $fmainaddress) 
    886886                            ->_get_c_field($self->name); 
     
    895895                get => sub { 
    896896                    my ($self) = @_; 
    897                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     897                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    898898                        $self->base->get_object('address', $fmainaddress) 
    899899                            ->_get_c_field($self->name); 
     
    10691069            managedObjects => { ro => 1, reference => 'group', }, 
    10701070            otheraddress => { 
     1071                auto => 1, 
     1072                multiple => 1, 
     1073                reference => 'address', 
     1074            }, 
     1075            _otheraddress => { 
    10711076                ro => 1, 
    10721077                multiple => 1, 
     
    10901095                }, 
    10911096            }, 
    1092             mainaddress => { auto => 1 }, 
     1097            mainaddress => { 
     1098                auto => 1, 
     1099                reference => 'address', 
     1100            }, 
    10931101            _mainaddress => { 
    10941102                hide => 1, 
     
    11151123                get => sub { 
    11161124                    my ($self) = @_; 
    1117                     if (my $fmainaddress = $self->object->_get_c_field('mainaddress')) { 
     1125                    if (my $fmainaddress = $self->object->_get_c_field('_mainaddress')) { 
    11181126                        $self->base->get_object('address', $fmainaddress) 
    1119                             ->_get_c_field($self->name); 
     1127                            ->_get_c_field('postalAddress'); 
    11201128                    } else { 
    11211129                        return; 
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/objects.pm

    r2258 r2265  
    454454    } 
    455455 
     456    my @parents = $obj->ParentObject; 
     457 
    456458    my $sthd = $base->db->prepare_cached( 
    457459        sprintf( 
     
    464466    if ($res) { 
    465467        delete($__cache->{$id}); 
     468    } 
     469 
     470    foreach my $pobj (@parents) { 
     471        $res += $pobj->PostSetAttribute; 
    466472    } 
    467473 
     
    795801    my $res =  $self->set_fields(%data); 
    796802 
     803    if (my $obj = $self->ParentObject) { 
     804        $res += $obj->PostSetAttribute; 
     805    } 
     806 
    797807    return $res ? $res : 'OEO'; 
    798808} 
Note: See TracChangeset for help on using the changeset viewer.