From 99d73b4dcd703aadf0e4a13be9d10998c08a23b3 Mon Sep 17 00:00:00 2001 From: Roland Gruber Date: Thu, 22 Aug 2013 16:44:40 +0000 Subject: [PATCH] allow -1 for pwdMaxAge --- lam/lib/modules/sambaDomain.inc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/lam/lib/modules/sambaDomain.inc b/lam/lib/modules/sambaDomain.inc index dad35263..2d09d8f6 100644 --- a/lam/lib/modules/sambaDomain.inc +++ b/lam/lib/modules/sambaDomain.inc @@ -323,7 +323,7 @@ class sambaDomain extends baseModule { $sambaMaxPwdAge = $this->attributes['sambaMaxPwdAge'][0]; } $sambaMaxPwdAgeInput = new htmlTableExtendedInputField(_('Maximum password age'), 'maxPwdAge', $sambaMaxPwdAge, 'maxPwdAge'); - $sambaMaxPwdAgeInput->setValidationRule(htmlElement::VALIDATE_NUMERIC); + $sambaMaxPwdAgeInput->setValidationRule(htmlElement::VALIDATE_NUMERIC_WITH_NEGATIVE); $return->addElement($sambaMaxPwdAgeInput, true); // Lockout duration $sambaLockoutDuration = ''; @@ -488,7 +488,9 @@ class sambaDomain extends baseModule { } // Minimum password age if (! isset($_POST['minPwdAge']) || ($_POST['minPwdAge'] == '')) { - if (isset($this->attributes['sambaMinPwdAge'])) unset($this->attributes['sambaMinPwdAge'][0]); + if (isset($this->attributes['sambaMinPwdAge'])) { + unset($this->attributes['sambaMinPwdAge'][0]); + } } else { if (is_numeric($_POST['minPwdAge']) && ($_POST['minPwdAge'] > -2)) { @@ -500,13 +502,15 @@ class sambaDomain extends baseModule { } // Maximum password age if (! isset($_POST['maxPwdAge']) || ($_POST['maxPwdAge'] == '')) { - if (isset($this->attributes['sambaMaxPwdAge'])) unset($this->attributes['sambaMaxPwdAge'][0]); + if (isset($this->attributes['sambaMaxPwdAge'])) { + unset($this->attributes['sambaMaxPwdAge'][0]); + } } else { if (!is_numeric($_POST['maxPwdAge']) || ($_POST['maxPwdAge'] < -1)) { $errors[] = $this->messages['pwdAgeMax'][0]; } - elseif ($_POST['maxPwdAge'] < $_POST['minPwdAge']) { + elseif (($_POST['maxPwdAge'] > 1) && ($_POST['maxPwdAge'] < $_POST['minPwdAge'])) { $errors[] = $this->messages['pwdAge_cmp'][0]; } else {