summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2014-08-05 14:08:17 +0200
committerAleksander Machniak <alec@alec.pl>2014-08-05 14:09:25 +0200
commitf5f056e7f213666d9e9556092795b07df8e8354d (patch)
treee0a7edc8638b9907c95ee87e137651beba57765d
parent8d4b4897df1861c12b033b864f4d7d8fca7e540a (diff)
Fix default vacation status (#1490019) - improve error message
Conflicts: plugins/managesieve/Changelog
-rw-r--r--plugins/managesieve/Changelog1
-rw-r--r--plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php5
-rw-r--r--plugins/managesieve/localization/en_US.inc1
3 files changed, 5 insertions, 2 deletions
diff --git a/plugins/managesieve/Changelog b/plugins/managesieve/Changelog
index 2ce1c5fc9..c10fdeb53 100644
--- a/plugins/managesieve/Changelog
+++ b/plugins/managesieve/Changelog
@@ -1,4 +1,5 @@
- Fix missing css/js scripts in filter form in mail task
+- Fix default vacation status (#1490019)
- Fix bug where non-existing (or unsubscribed) folder wasn't listed in folder selector (#1489956)
- Added optional separate interface for out-of-office management (#1488266)
- Fix disabled "create filter" action
diff --git a/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php b/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php
index aa65966c4..405a8a02c 100644
--- a/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php
+++ b/plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php
@@ -107,8 +107,9 @@ class rcube_sieve_vacation extends rcube_sieve_engine
}
if ($vacation_action['reason'] == '') {
- $error = 'managesieve.cannotbeempty';
+ $error = 'managesieve.emptyvacationbody';
}
+
if ($vacation_action[$interval_type] && !preg_match('/^[0-9]+$/', $vacation_action[$interval_type])) {
$error = 'managesieve.forbiddenchars';
}
@@ -276,7 +277,7 @@ class rcube_sieve_vacation extends rcube_sieve_engine
}
$table->add('title', html::label('vacation_status', $this->plugin->gettext('vacation.status')));
- $table->add(null, $status->show($this->vacation['disabled'] ? 'off' : 'on'));
+ $table->add(null, $status->show(!isset($this->vacation['disabled']) || $this->vacation['disabled'] ? 'off' : 'on'));
$out .= html::tag('fieldset', $class, html::tag('legend', null, $this->plugin->gettext('vacation.reply')) . $table->show($attrib));
diff --git a/plugins/managesieve/localization/en_US.inc b/plugins/managesieve/localization/en_US.inc
index 1ea7d969e..091c96f3e 100644
--- a/plugins/managesieve/localization/en_US.inc
+++ b/plugins/managesieve/localization/en_US.inc
@@ -213,5 +213,6 @@ $messages['nodata'] = 'At least one position must be selected!';
$messages['invaliddateformat'] = 'Invalid date or date part format';
$messages['saveerror'] = 'Unable to save data. Server error occurred.';
$messages['vacationsaved'] = 'Vacation data saved successfully.';
+$messages['emptyvacationbody'] = 'Body of vacation message is required!';
?>