From 292d056340dde48e894a19201257fa421374766e Mon Sep 17 00:00:00 2001 From: Alex Buckley Date: Fri, 24 Nov 2017 11:42:25 +1300 Subject: [PATCH] Bug 18308 - Added warning and dialog alert Works great if you apply bug 19514 before If an institution has a minPasswordLength which is < 8 characters then a warning will be set (which is visible in the intranet-error.log) and a dialog alert div will display the warning to the user in the memberentry.pl page in the intranet. Test plan: 1. Ensure that your minPasswordLength is set to less than 8 characters. This replicates the use case that a Koha instance is existing (i.e. not a new Koha instance) and not gone through the password length step of the onboarding tool (previous patch on this bug report) or that the institituion is new but set a password length of less than 8 in the onboarding tool 2. Go to the memberentry.pl page and notice that there is no warning at the top of the page informing you that your minPasswordLength is less than 8 3. Apply this patch 4. Refresh the memberentry.pl page and notice that there is a yellow warning at the top of the page informing you that your minPasswordLength syspref is less than 8 Sponsored-By: Catalyst IT Signed-off-by: Dominic Pichette --- .../intranet-tmpl/prog/en/modules/members/memberentrygen.tt | 5 +++++ .../prog/en/modules/onboarding/onboardingstep6.tt | 3 ++- members/memberentry.pl | 12 +++++++++++- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt index 091486e..970cf48 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/memberentrygen.tt @@ -205,6 +205,11 @@ $(document).ready(function() { [% END %] +[% IF passwordwarning %] +
+

Warning: [% passwordwarning %]

+
+[% END %]
[% UNLESS ( check_member ) %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/onboarding/onboardingstep6.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/onboarding/onboardingstep6.tt index f024356..f88dbaa 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/onboarding/onboardingstep6.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/onboarding/onboardingstep6.tt @@ -23,11 +23,12 @@

Congratulations you have finished and are ready to use Koha

Start using Koha [% ELSE %] +

Web installer › Set minPasswordLength system preference

+ [% INCLUDE 'onboarding_messages.inc' %] The minPasswordLength system preference is a setting for the shortest length library staff and patrons can set their passwords to. -
diff --git a/members/memberentry.pl b/members/memberentry.pl index c58b2a9..02990de 100755 --- a/members/memberentry.pl +++ b/members/memberentry.pl @@ -176,6 +176,14 @@ $category_type="A" unless $category_type; # FIXME we should display a error mess # if a add or modify is requested => check validity of data. %data = %$borrower_data if ($borrower_data); +#Check passwords +my $minPasswordLength = C4::Context->preference('minPasswordLength'); +warn $minPasswordLength; +if ($minPasswordLength < 8) { + warn my $warning = "Your minPasswordLength system preference is less than 8 characters this means library patrons can potentially set passwords which are vulnerable to cracking. Please set your minPasswordLength syspref to 8 or more characters"; + $template->param("passwordwarning"=>$warning); +} + # initialize %newdata my %newdata; # comes from $input->param() if ( $op eq 'insert' || $op eq 'modify' || $op eq 'save' || $op eq 'duplicate' ) { @@ -356,7 +364,9 @@ if ($op eq 'save' || $op eq 'insert'){ unless (Check_Userid($userid,$borrowernumber)) { push @errors, "ERROR_login_exist"; } - + + + my $password = $input->param('password'); my $password2 = $input->param('password2'); push @errors, "ERROR_password_mismatch" if ( $password ne $password2 ); -- 2.7.4