Ignore:
Timestamp:
03/29/16 17:37:22 (8 years ago)
Author:
nanardon
Message:

Add task modules

Add two task module:

  • Unexportexpired: unexported expire aliases and nethost
  • Updatedyndata: refresh aliases and group with autoMember settings
Location:
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases
Files:
3 edited

Legend:

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

    r1496 r1737  
    131131    my @groups = $self->search_objects('group', 'autoMemberFilter=*'); 
    132132 
     133    my $res = 0; 
    133134    foreach (@groups) { 
    134135        my $g = $self->get_object('group', $_) or next; 
    135         $g->populate_dyn_group; 
    136     } 
     136        $res += $g->populate_dyn_group; 
     137    } 
     138 
     139    $self->log(LA_DEBUG, "Group Dyn res %d", $res); 
     140    $res 
    137141} 
    138142 
     
    142146    my @groups = $self->search_objects('aliases', 'autoMemberFilter=*'); 
    143147 
     148    my $res = 0; 
    144149    foreach (@groups) { 
    145150        my $g = $self->get_object('aliases', $_) or next; 
    146         $g->populate_dyn_aliases; 
    147     } 
     151        $res += $g->populate_dyn_aliases; 
     152    } 
     153 
     154    $self->log(LA_DEBUG, "Aliases Dyn res %d", $res); 
     155    $res 
     156} 
     157 
     158sub PopulateDynData { 
     159    my ($self) = @_; 
     160 
     161    foreach (1 .. 5) { 
     162        $self->log(LA_DEBUG, "%d loop for PopulateDynData", $_); 
     163        my $res = 0; 
     164        $res += $self->_sync_dyn_group   || 0; 
     165        $res += $self->_sync_dyn_aliases || 0; 
     166 
     167        if ($res == 0) { 
     168            last; 
     169        } 
     170    } 
     171 
     172    return 1; 
    148173} 
    149174 
     
    151176    my ($self) = @_; 
    152177 
    153     for (qw(0 1)) { # Run twice for cross references 
    154         $self->_sync_dyn_group; 
    155         $self->_sync_dyn_aliases; 
    156     } 
     178    $self->PopulateDynData; 
    157179 
    158180    if ($ENV{LA_NO_COMMIT}) { 
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/Group.pm

    r1571 r1737  
    180180                q{insert into group_attributes_users (value, attr, okey) values (?,?,?)} 
    181181            ); 
    182             $sth->execute($_, 'memberUID', $self->_get_ikey); 
    183             $res++; 
     182            $res += $sth->execute($_, 'memberUID', $self->_get_ikey); 
    184183        } elsif ($member{$_}{c}) { 
    185184            if (($user->get_c_field('department') || '') eq $self->id) { 
     
    192191                q{delete from group_attributes_users where value = ? and attr = ? and okey = ?} 
    193192            ); 
    194             $sth->execute($_, 'memberUID', $self->_get_ikey); 
    195             $res++; 
     193            $res += $sth->execute($_, 'memberUID', $self->_get_ikey); 
    196194        } # else {} # can't happend 
    197195    } 
     
    216214    ); 
    217215    my $filter = $self->get_field('autoMemberFilter'); 
    218     $self->_set_group_members( 
     216    my $res = $self->_set_group_members( 
    219217        [ $self->base->search_objects( 
    220218            'user', 
    221219            ref $filter ? @{ $filter } : $filter 
    222220        ) ] 
    223     ) 
     221    ); 
     222    $res; 
    224223} 
    225224 
  • trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/Nethost.pm

    r1685 r1737  
    3333            date    => { ro => 1, inline => 1, }, 
    3434            create  => { ro => 1, inline => 1, }, 
     35            expire    => { 
     36                inline => 1, 
     37                formtype => 'DATE', 
     38                label => l('Expire'), 
     39            }, 
    3540            ip      => { 
    3641                monitored => 1, 
Note: See TracChangeset for help on using the changeset viewer.