- Timestamp:
- 02/25/19 16:40:05 (5 years ago)
- Location:
- trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Objects.pm
r2182 r2219 448 448 } 449 449 } 450 450 451 451 if (keys %updated) { 452 $self->PostSetAttribute() or do { 453 $self->base->log(LA_ERR, "PostSetAttribute failed when updating %s/%s", 454 $self->type, $self->id); 455 return; 456 }; 457 452 458 $self->ReportChange('Update', 'Attributes %s have been updated', join(', ', sort keys %updated)); 453 459 foreach (sort keys %updated) { … … 460 466 } 461 467 return scalar(keys %updated); 468 } 469 470 =head2 PostSetAttribute 471 472 This function is call to compute data when object is modify. 473 474 =cut 475 476 sub PostSetAttribute { 477 my ($self) = @_; 478 479 return 1; 462 480 } 463 481 -
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql.pm
r2218 r2219 18 18 our $VERSION = (q$Rev$ =~ /^Rev: (\d+) /)[0]; 19 19 20 sub SCHEMA_VERSION { 29};20 sub SCHEMA_VERSION { 30 }; 21 21 22 22 =head1 NAME -
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/User.pm
r2199 r2219 902 902 cn => { iname => 'name', ro => 1 }, 903 903 gecos => { 904 managed => 1, 904 ro => 1, 905 auto => 1, 906 }, 907 _gecos => { 908 managed => 1, 909 hide => 1, 905 910 ro => 1, 906 911 get => sub { … … 908 913 my $obj = $self->object; 909 914 910 my $ec = $obj->_get_c_field('endcircuit') || ''; 911 912 my $date = $ec 913 ? sprintf('%s (%s)', $obj->_get_c_field('expireTextEC'), $obj->_get_c_field('expireText')) 914 : $obj->_get_c_field('expireText'); 915 916 $date ||= ''; 917 918 my $gecos = sprintf("%s,%s,%s,%s", 919 join(' ', grep { $_ } 920 ($obj->_get_c_field('givenName'), 921 ($obj->_get_c_field('sn')))) 922 || $obj->_get_c_field('description') || '', 923 join(' - ', grep { $_ } (($obj->_get_c_field('site') || 924 $obj->_get_c_field('l')), 925 $obj->_get_c_field('physicalDeliveryOfficeName'))) || '', 926 $obj->_get_c_field('telephoneNumber') || '', 927 $date, 928 ); 929 $gecos =~ s/:/ /g; 915 my $fmt = $self->base->config('gecosformat') || '%{displayName},%{l}-%{physicalDeliveryOfficeName},%{telephoneNumber},%{expireText}'; 916 my $gecos = $obj->queryformat($fmt); 930 917 return to_ascii($gecos); 931 918 }, 932 919 label => l('GECOS'), 933 920 }, 934 displayName => { 921 displayName => { 922 ro => 1, 923 auto => 1, 924 }, 925 _displayName => { 935 926 ro => 1, managed => 1, 927 hide => 1, 936 928 get => sub { 937 929 my ($self) = @_; … … 947 939 label => l('Name'), 948 940 }, 949 sAMAccountName => { 950 ro => 1, 941 sAMAccountName => { 942 ro => 1, 943 auto => 1, 944 }, 945 _sAMAccountName => { 946 ro => 1, 947 hide => 1, 951 948 managed => 1, 952 949 iname => 'name', -
trunk/LATMOS-Accounts/lib/LATMOS/Accounts/Bases/Sql/objects.pm
r2206 r2219 783 783 } 784 784 785 sub PostSetAttribute { 786 my ($self) = @_; 787 788 my %data; 789 foreach my $attr ($self->base->list_canonical_fields($self->type, 'r')) { 790 my $oattr = $self->base->get_attr_schema($self->type, $attr); 791 if ($oattr->{auto}) { 792 my $source = "_$attr"; 793 $data{$attr} = $self->_get_c_field($source); 794 } 795 } 796 my $res = $self->set_fields(%data); 797 798 return $res ? $res : 'OEO'; 799 } 800 785 801 786 802 =head2 SetNoDelete($value)
Note: See TracChangeset
for help on using the changeset viewer.