From d2dd91cfe5c8ec9d9e2f28447f9a1651ea0d326e Mon Sep 17 00:00:00 2001 From: Saket Patel Date: Wed, 18 Dec 2013 02:31:17 +0530 Subject: [PATCH] make proper message for weak passwords add first release build update description --- CHANGELOG.md | 3 +++ README.md | 37 ++++++++++++++++++++++++++++++++++--- builds/passwd-1.0.zip | Bin 0 -> 11440 bytes config.php | 2 +- manifest.xml | 4 ++-- php/class.passwdmodule.php | 6 +++--- 6 files changed, 43 insertions(+), 9 deletions(-) create mode 100644 CHANGELOG.md create mode 100644 builds/passwd-1.0.zip diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..c7aa45c --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3 @@ +## 1.0 (17th Dec 2013) + + - Password change functionality when using DB or LDAP plugin \ No newline at end of file diff --git a/README.md b/README.md index bd2fea4..12f0bda 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,38 @@ zarafa-webapp-passwd ==================== -Plugin to add functionality of changing of password from zarafa webapp +The Passwd plugin allows the user to change his password inside of WebApp. -This plugin is largely based on the "Passwd" plugin by -Andreas Brodowski. For his original check this link https://community.zarafa.com/pg/plugins/project/157/developer/dw2412/passwd-plugin \ No newline at end of file +This plugin is largely based on the "Passwd" plugin by Andreas Brodowski. +For his original work check this [link](https://community.zarafa.com/pg/plugins/project/157/developer/dw2412/passwd-plugin) + +## How to install +1. If you want to use this plugin with production / debug version of webapp then please download package from [community](__link_to_come__) +2. If you want to use this plugin with source copy of webapp then you can just download this whole project +3. Extract contents of this plugin to /plugins directory +4. Give read permissions to apache for /plugins/passwd directory +5. If you are using LDAP plugin then change PLUGIN_PASSWD_LDAP to true and also set proper values for PLUGIN_PASSWD_LDAP_BASEDN and PLUGIN_PASSWD_LDAP_URI configurations +6. If you are using DB plugin then no need to change anything, default configurations should be fine +5. Restart apache, reload webapp after clearing cache +6. If you want to enable this plugin by default for all users then edit config.php file and change PLUGIN_PASSWD_USER_DEFAULT_ENABLE setting to true + +## How to enable +1. Go to settings section +2. Go to Plugins tab +3. Enable password change plugin and reload webapp +4. Go to Change Password tab of settings section +5. Provide current password and new password +6. Click on apply + +## How to disable +1. Go to settings section +2. Go to Plugins tab +3. Disable password change plugin and reload webapp + +## Notes +- Feedback/Bug Reports are welcome +- if anyone is good at creating icons then please help me add a good icon to change password tab (credits will be given) + +## Todo +- add password strength meter on client side, so user can create complex passwords +- check on client side for empty fields \ No newline at end of file diff --git a/builds/passwd-1.0.zip b/builds/passwd-1.0.zip new file mode 100644 index 0000000000000000000000000000000000000000..0235122168702c7b4526a7b14c44e7f5bb6e8572 GIT binary patch literal 11440 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 literal 0 HcmV?d00001 diff --git a/config.php b/config.php index a9c340c..2ad5e02 100644 --- a/config.php +++ b/config.php @@ -1,6 +1,6 @@ - 0.2 + 1.0 Passwd - Password Changer Plugin + Password Change Plugin Saket Patel https://github.com/silentsakky Change your password from zarafa webapp diff --git a/php/class.passwdmodule.php b/php/class.passwdmodule.php index ab1f434..0d54905 100644 --- a/php/class.passwdmodule.php +++ b/php/class.passwdmodule.php @@ -126,7 +126,7 @@ class PasswdModule extends Module $errorMessage = _('Password is not changed.'); } } else { - $errorMessage = _('Password is weak.'); + $errorMessage = _('Password is weak. Password should contain capital, non capital letters and numbers. Password shuold have 8 to 20 characters.'); } } else { $errorMessage = _('Current password does not match.'); @@ -178,7 +178,7 @@ class PasswdModule extends Module $errorMessage = _('Password is not changed.'); } } else { - $errorMessage = _('Password is weak.'); + $errorMessage = _('Password is weak. Password should contain capital, non capital letters and numbers. Password shuold have 8 to 20 characters.'); } if(!empty($errorMessage)) { @@ -196,7 +196,7 @@ class PasswdModule extends Module * will return false. * Password should meet the following criteria: * - min. 8 chars, max. 20 - * - contain caps und noncaps characters + * - contain caps and noncaps characters * - contain numbers * @param {String} $password password which should be checked. * @return {Boolean} true if password passes the minimum requirement else false.