summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/password/config.inc.php.dist15
-rw-r--r--plugins/password/package.xml1
-rw-r--r--plugins/password/password.php10
3 files changed, 12 insertions, 14 deletions
diff --git a/plugins/password/config.inc.php.dist b/plugins/password/config.inc.php.dist
index db5c47b02..e960bbe00 100644
--- a/plugins/password/config.inc.php.dist
+++ b/plugins/password/config.inc.php.dist
@@ -1,14 +1,5 @@
<?php
-// Supported hosts
-// -----------------------
-// Array of hosts that support password changing.
-// Default is NULL. Supported hosts will feature
-// a Password option in Settings; others will not.
-// Example:
-//$rcmail_config['password_supported_hosts'] = array( 'mail.example.com', 'mail2.example.org' );
-$rcmail_config['password_supported_hosts'] = NULL;
-
// Password Plugin options
// -----------------------
// A driver to use for password change. Default: "sql".
@@ -34,6 +25,12 @@ $rcmail_config['password_log'] = false;
// will be not available (no Password tab in Settings)
$rcmail_config['password_login_exceptions'] = null;
+// Array of hosts that support password changing. Default is NULL.
+// Listed hosts will feature a Password option in Settings; others will not.
+// Example:
+//$rcmail_config['password_hosts'] = array('mail.example.com', 'mail2.example.org');
+$rcmail_config['password_hosts'] = null;
+
// SQL Driver options
// ------------------
diff --git a/plugins/password/package.xml b/plugins/password/package.xml
index e639a04ef..9a056dec6 100644
--- a/plugins/password/package.xml
+++ b/plugins/password/package.xml
@@ -27,6 +27,7 @@
<license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
<notes>
- Fix wrong (non-specific) error message on crypt or connection error (#1488808)
+- Added option to define IMAP hosts that support password changes - password_hosts
</notes>
<contents>
<dir baseinstalldir="/" name="/">
diff --git a/plugins/password/password.php b/plugins/password/password.php
index cd0f5f1e0..028a58d3e 100644
--- a/plugins/password/password.php
+++ b/plugins/password/password.php
@@ -55,14 +55,14 @@ class password extends rcube_plugin
$rcmail = rcmail::get_instance();
$this->load_config();
-
- $host = isset( $_SESSION['imap_host'] ) ? $_SESSION['imap_host'] : NULL;
- $hosts = $rcmail->config->get( 'password_supported_hosts' );
- if ( !empty( $hosts ) and !in_array( $host, $hosts ) ) {
+
+ // Host exceptions
+ $hosts = $rcmail->config->get('password_hosts');
+ if (!empty($hosts) && !in_array($_SESSION['storage_host'], $hosts)) {
return;
}
- // Exceptions list
+ // Login exceptions
if ($exceptions = $rcmail->config->get('password_login_exceptions')) {
$exceptions = array_map('trim', (array) $exceptions);
$exceptions = array_filter($exceptions);