From 78af62d4283cf98026d57ea1a7c55206e8595578 Mon Sep 17 00:00:00 2001 From: Benjamin Renard Date: Tue, 5 Dec 2023 12:51:54 +0100 Subject: [PATCH] LSaddon::ppolicy: improve password expiration extra displayed column Add LStip to show password last changed date and password max age. --- src/includes/addons/LSaddons.ppolicy.php | 19 ++++++++--- src/lang/fr_FR.UTF8/LC_MESSAGES/ldapsaisie.mo | Bin 93128 -> 93443 bytes src/lang/fr_FR.UTF8/LC_MESSAGES/ldapsaisie.po | 30 +++++++++++++----- src/lang/ldapsaisie.pot | 23 ++++++++++---- 4 files changed, 53 insertions(+), 19 deletions(-) diff --git a/src/includes/addons/LSaddons.ppolicy.php b/src/includes/addons/LSaddons.ppolicy.php index c4dfad70..2dc69e17 100644 --- a/src/includes/addons/LSaddons.ppolicy.php +++ b/src/includes/addons/LSaddons.ppolicy.php @@ -137,20 +137,22 @@ function get_ppolicy_password_max_age($ppolicy_dn=null) { * @param string $text The text of the badge * @param string $bg_color The background color of the badge (optional, default: green) * @param string $color The text color of the badge (optional, default: white) + * @param string $title The text title of the badge (optional, default: empty string) * * @return string The HTML code of the badge * * @author Benjamin Renard */ -function _ppolicy_badge($text, $bg_color='green', $color='white') { +function _ppolicy_badge($text, $bg_color='green', $color='white', $title='') { // Disable HTML formating on PHP cli if (php_sapi_name() == 'cli') return $text; return sprintf( '%s', - $bg_color, $color, $text + $bg_color, $color, $title, $text ); } @@ -170,7 +172,10 @@ function ppolicy_extraDisplayColumn_password_expiration($entry) { $change_time = ldapDate2Timestamp($change_time); $max_age = get_ppolicy_password_max_age($entry->pwdPolicySubentry); if ($max_age === false) - return _ppolicy_badge(__('Unknown'), 'gray'); + return _ppolicy_badge( + __('Unknown'), 'gray', 'white', + sprintf(_('Last password changed: %s, no duration of validity configured.'), date('Y-m-d H:i', $change_time)) + ); if (!$max_age) return _('Never'); $expiration_date = $change_time + $max_age; @@ -178,7 +183,9 @@ function ppolicy_extraDisplayColumn_password_expiration($entry) { if ($expiration_date <= $now) return _ppolicy_badge( sprintf(_('Expired (since %s)'), date('Y-m-d H:i', $expiration_date)), - 'black'); + 'black', 'white', + sprintf(_('Last password changed: %s, duration of validity: %s days'), date('Y-m-d H:i', $change_time), floor($max_age/86400)) + ); $delta = $expiration_date - $now; if ($delta <= LS_PPOLICY_CRITICAL_EXPIRATION_THRESHOLD) $badge_color = 'red'; @@ -188,7 +195,9 @@ function ppolicy_extraDisplayColumn_password_expiration($entry) { $badge_color = 'green'; return _ppolicy_badge( sprintf(_('Expire on %s'), date('Y-m-d H:i', $expiration_date)), - $badge_color); + $badge_color, 'white', + sprintf(_('Last password changed: %s, duration of validity: %s days'), date('Y-m-d H:i', $change_time), floor($max_age/86400)) + ); } /** diff --git a/src/lang/fr_FR.UTF8/LC_MESSAGES/ldapsaisie.mo b/src/lang/fr_FR.UTF8/LC_MESSAGES/ldapsaisie.mo index 909bf5bb438aff0d896536767048c3da4634ac76..3a77dfee3f76f99e5da5c8b20fd422a12305abc9 100644 GIT binary patch delta 14254 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 delta 13980 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\n" "Language-Team: LdapSaisie \n" @@ -56,26 +56,40 @@ msgstr "" "Politique de mots de passe : Une erreur est survenue en écrivant une ligne " "CSV." -#: includes/addons/LSaddons.ppolicy.php:169 -#: includes/addons/LSaddons.ppolicy.php:175 +#: includes/addons/LSaddons.ppolicy.php:171 +#: includes/addons/LSaddons.ppolicy.php:180 msgid "Never" msgstr "Jamais" -#: includes/addons/LSaddons.ppolicy.php:173 +#: includes/addons/LSaddons.ppolicy.php:176 msgid "Unknown" msgstr "Inconnu" -#: includes/addons/LSaddons.ppolicy.php:180 +#: includes/addons/LSaddons.ppolicy.php:177 +#, php-format +msgid "Last password changed: %s, no duration of validity configured." +msgstr "" +"Dernière modification du mot de passe : %s, pas de durée de validité " +"configurée." + +#: includes/addons/LSaddons.ppolicy.php:185 #, php-format msgid "Expired (since %s)" msgstr "Expiré (depuis %s)" -#: includes/addons/LSaddons.ppolicy.php:190 +#: includes/addons/LSaddons.ppolicy.php:187 +#: includes/addons/LSaddons.ppolicy.php:199 +#, php-format +msgid "Last password changed: %s, duration of validity: %s days" +msgstr "" +"Dernière modification du mot de passe : %s, durée de validité : %s jours." + +#: includes/addons/LSaddons.ppolicy.php:197 #, php-format msgid "Expire on %s" msgstr "Expirera le %s" -#: includes/addons/LSaddons.ppolicy.php:260 +#: includes/addons/LSaddons.ppolicy.php:269 msgid "Not set" msgstr "Non défini" @@ -557,7 +571,7 @@ msgstr "" #: includes/addons/LSaddons.ftp.php:48 msgid "FTP: Unable to delete file %{file} on the remote server." msgstr "" -"FTP : Impossible de supprimer le fichier %{dir} sur le serveur distant." +"FTP : Impossible de supprimer le fichier %{file} sur le serveur distant." #: includes/addons/LSaddons.ftp.php:51 msgid "" diff --git a/src/lang/ldapsaisie.pot b/src/lang/ldapsaisie.pot index 54cd295b..ed5748be 100644 --- a/src/lang/ldapsaisie.pot +++ b/src/lang/ldapsaisie.pot @@ -22,26 +22,37 @@ msgstr "" msgid "Password policy: An error occured writing a CSV row." msgstr "" -#: includes/addons/LSaddons.ppolicy.php:169 -#: includes/addons/LSaddons.ppolicy.php:175 +#: includes/addons/LSaddons.ppolicy.php:171 +#: includes/addons/LSaddons.ppolicy.php:180 msgid "Never" msgstr "" -#: includes/addons/LSaddons.ppolicy.php:173 +#: includes/addons/LSaddons.ppolicy.php:176 msgid "Unknown" msgstr "" -#: includes/addons/LSaddons.ppolicy.php:180 +#: includes/addons/LSaddons.ppolicy.php:177 +#, php-format +msgid "Last password changed: %s, no duration of validity configured." +msgstr "" + +#: includes/addons/LSaddons.ppolicy.php:185 #, php-format msgid "Expired (since %s)" msgstr "" -#: includes/addons/LSaddons.ppolicy.php:190 +#: includes/addons/LSaddons.ppolicy.php:187 +#: includes/addons/LSaddons.ppolicy.php:199 +#, php-format +msgid "Last password changed: %s, duration of validity: %s days" +msgstr "" + +#: includes/addons/LSaddons.ppolicy.php:197 #, php-format msgid "Expire on %s" msgstr "" -#: includes/addons/LSaddons.ppolicy.php:260 +#: includes/addons/LSaddons.ppolicy.php:269 msgid "Not set" msgstr ""