1 |
stephdl |
1.1 |
diff -Nur smeserver-password-1.2.0.old8823/root/usr/share/perl5/vendor_perl/esmith/FormMagick/Panel/passwordopt.pm smeserver-password-1.2.0.bz8823/root/usr/share/perl5/vendor_perl/esmith/FormMagick/Panel/passwordopt.pm |
2 |
|
|
--- smeserver-password-1.2.0.old8823/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/passwordopt.pm 2015-02-06 17:03:34.319193079 +0100 |
3 |
|
|
+++ smeserver-password-1.2.0.bz8823/root/usr/lib/perl5/site_perl/esmith/FormMagick/Panel/passwordopt.pm 2015-02-06 21:55:59.670973331 +0100 |
4 |
|
|
@@ -14,6 +14,7 @@ |
5 |
|
|
our @EXPORT = qw(); |
6 |
|
|
our $db = esmith::ConfigDB->open(); |
7 |
|
|
our $adb = esmith::AccountsDB->open(); |
8 |
|
|
+our @acctName; |
9 |
|
|
|
10 |
|
|
sub new |
11 |
|
|
{ |
12 |
|
|
@@ -171,43 +172,35 @@ |
13 |
|
|
$key->set_prop('LockAccount', $q->param('LockAccount')); |
14 |
|
|
$key->set_prop('DateReset', $q->param('DateReset')); |
15 |
|
|
|
16 |
|
|
-# this way something goes wrong when deselecting all one stays |
17 |
|
|
-#my @cusers = $q->param('PasswordAge'); |
18 |
|
|
-# workaround |
19 |
|
|
use CGI; |
20 |
|
|
my $cgi = CGI->new; |
21 |
|
|
my @cusers = $cgi->param('PasswordAge'); |
22 |
|
|
|
23 |
|
|
-my %opt1 ; |
24 |
|
|
-foreach (@cusers) { |
25 |
|
|
- $opt1{$_}="on"; |
26 |
|
|
- } |
27 |
|
|
my $isok=0; |
28 |
|
|
|
29 |
|
|
-for my $user ($adb->users) |
30 |
|
|
- { |
31 |
|
|
- # next user unless password is set |
32 |
|
|
- next unless (($user->prop('PasswordSet') || 'no') eq 'yes'); |
33 |
|
|
- my $passage = $user->prop('PasswordAge') || 'no'; |
34 |
|
|
- # $user->set_prop('PasswordAge', 'no'); |
35 |
|
|
- my $acctName=$user->key; |
36 |
|
|
- if ( defined $opt1{$acctName} eq "on" ) |
37 |
|
|
- { |
38 |
|
|
- $user->set_prop('PasswordAge', 'yes'); |
39 |
|
|
- } |
40 |
|
|
- else |
41 |
|
|
- { |
42 |
|
|
- $user->set_prop('PasswordAge', 'no'); |
43 |
|
|
- } |
44 |
|
|
- unless (system ("/sbin/e-smith/signal-event", "password-modify", $acctName) == 0) { |
45 |
|
|
- $isok=1; |
46 |
|
|
- } |
47 |
|
|
- } |
48 |
|
|
+foreach my $user ($adb->users) { |
49 |
|
|
+ # next user unless password is set |
50 |
|
|
+ next unless (($user->prop('PasswordSet') || 'no') eq 'yes'); |
51 |
|
|
+ my $passage = $user->prop('PasswordAge') || 'no'; |
52 |
|
|
+ $user->set_prop('PasswordAge', 'no'); |
53 |
|
|
+ my $username = $user-> key; |
54 |
|
|
+ push @acctName, $username; |
55 |
|
|
+ } |
56 |
|
|
+ |
57 |
|
|
+#we retrieve if the modify box is checked and set to on |
58 |
|
|
+foreach my $m (@cusers) { |
59 |
|
|
+ $key = $adb->get($m); |
60 |
|
|
+ $key->set_prop('PasswordAge','yes') |
61 |
|
|
+ } |
62 |
|
|
+ |
63 |
|
|
+unless (system ("/sbin/e-smith/signal-event", "password-modify", @acctName) == 0) { |
64 |
|
|
+ $isok=1; |
65 |
|
|
+ } |
66 |
|
|
+ |
67 |
|
|
unless ($isok==0) { |
68 |
|
|
- return $self->error('CANNOT_SAVE'); |
69 |
|
|
- } |
70 |
|
|
+ return $self->error('CANNOT_SAVE'); |
71 |
|
|
+ } |
72 |
|
|
|
73 |
|
|
return $self->success('SUCCESSFULLY_MODIFIED'); |
74 |
|
|
} |
75 |
|
|
1; |
76 |
|
|
- |