1 |
diff -up smeserver-password-1.0.0/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/passwordopt.sme8update smeserver-password-1.0.0/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/passwordopt |
2 |
--- smeserver-password-1.0.0/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/passwordopt.sme8update 2013-06-20 00:32:11.000000000 -0400 |
3 |
+++ smeserver-password-1.0.0/root/etc/e-smith/locale/en-us/etc/e-smith/web/functions/passwordopt 2013-06-20 16:07:13.000000000 -0400 |
4 |
@@ -15,7 +15,8 @@ |
5 |
<trans> |
6 |
<![CDATA[ |
7 |
<h2>Password aging</h2> |
8 |
- You can set password aging either globally (setting 'Activate password aging' flag to 'Yes') or for each user. |
9 |
+ To enable aging set Activate password aging to Yes, then select each user you want aging enabled for. |
10 |
+ <br>Setting Activate password aging to No disables aging check for all users, but keep your user settings in case you activate the aging back. |
11 |
<br>This can be done for locked or passwordless accounts too. |
12 |
<br><strong>Note:</strong> Password aging doesn't apply to admin account<br> |
13 |
]]> |
14 |
diff -up smeserver-password-1.0.0/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/passwordopt.pm.sme8update smeserver-password-1.0.0/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/passwordopt.pm |
15 |
--- smeserver-password-1.0.0/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/passwordopt.pm.sme8update 2013-06-20 00:32:11.000000000 -0400 |
16 |
+++ smeserver-password-1.0.0/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/passwordopt.pm 2013-06-20 16:01:35.000000000 -0400 |
17 |
@@ -161,9 +161,9 @@ $key->set_prop('Users', $q->param('Users |
18 |
|
19 |
$key = $db->get('passwordaging' ); |
20 |
if ( !$key) { |
21 |
-$db->set_value('passwordaging','configuration'); |
22 |
-$key = $db->get('passwordaging' ); |
23 |
-} |
24 |
+ $db->set_value('passwordaging','configuration'); |
25 |
+ $key = $db->get('passwordaging' ); |
26 |
+ } |
27 |
|
28 |
$key->set_prop('Active', $q->param('Active')); |
29 |
$key->set_prop('PwdAge', $q->param('PwdAge')); |
30 |
@@ -171,24 +171,36 @@ $key->set_prop('PwdWarn', $q->param('Pwd |
31 |
$key->set_prop('LockAccount', $q->param('LockAccount')); |
32 |
$key->set_prop('DateReset', $q->param('DateReset')); |
33 |
|
34 |
-for my $user ($adb->users) |
35 |
- { |
36 |
- next unless (($user->prop('PasswordSet') || 'no') eq 'yes'); |
37 |
- my $passage = $user->prop('PasswordAge') || 'no'; |
38 |
- $user->set_prop('PasswordAge', 'no'); |
39 |
- } |
40 |
- |
41 |
my @cusers = $q->param('PasswordAge'); |
42 |
+my %opt1 ; |
43 |
+foreach (@cusers) { |
44 |
+ $opt1{$_}="on"; |
45 |
+ } |
46 |
+my $isok=0; |
47 |
|
48 |
-foreach my $m (@cusers) { |
49 |
- $key = $adb->get($m); |
50 |
- $key->set_prop('PasswordAge', 'yes') |
51 |
- } |
52 |
- |
53 |
- unless (system ("/sbin/e-smith/signal-event", "password-modify") == 0) { |
54 |
- return $self->error('CANNOT_SAVE'); |
55 |
+for my $user ($adb->users) |
56 |
+ { |
57 |
+ # next user unless password is set |
58 |
+ next unless (($user->prop('PasswordSet') || 'no') eq 'yes'); |
59 |
+ my $passage = $user->prop('PasswordAge') || 'no'; |
60 |
+ # $user->set_prop('PasswordAge', 'no'); |
61 |
+ my $acctName=$user->key; |
62 |
+ if ( $opt1{$acctName} eq "on" ) |
63 |
+ { |
64 |
+ $user->set_prop('PasswordAge', 'yes'); |
65 |
+ } |
66 |
+ else |
67 |
+ { |
68 |
+ $user->set_prop('PasswordAge', 'no'); |
69 |
+ } |
70 |
+ unless (system ("/sbin/e-smith/signal-event", "password-modify", $acctName) == 0) { |
71 |
+ $isok=1; |
72 |
+ } |
73 |
+ } |
74 |
+unless ($isok==0) { |
75 |
+ return $self->error('CANNOT_SAVE'); |
76 |
} |
77 |
- |
78 |
+ |
79 |
return $self->success('SUCCESSFULLY_MODIFIED'); |
80 |
} |
81 |
1; |