summaryrefslogtreecommitdiff
path: root/plugins/managesieve/skins/default
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-02-10 08:13:13 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-02-10 08:13:13 +0000
commit552607f5affe961d6c771f38a8eba32044f710b1 (patch)
treedcbfaaa2928edf8f188c46a9fbec8a632090fadf /plugins/managesieve/skins/default
parentb40c338186679c086d25ed5d43553d3216d7190a (diff)
- Added setflag/addflag/removeflag support (#1487449)
git-svn-id: https://svn.roundcube.net/trunk@4522 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'plugins/managesieve/skins/default')
-rw-r--r--plugins/managesieve/skins/default/templates/filteredit.html98
1 files changed, 41 insertions, 57 deletions
diff --git a/plugins/managesieve/skins/default/templates/filteredit.html b/plugins/managesieve/skins/default/templates/filteredit.html
index 556d99621..8e810d453 100644
--- a/plugins/managesieve/skins/default/templates/filteredit.html
+++ b/plugins/managesieve/skins/default/templates/filteredit.html
@@ -11,80 +11,64 @@
function header_select(id)
{
- var obj = document.getElementById('header'+id);
+ var obj = document.getElementById('header' + id),
+ size = document.getElementById('rule_size' + id),
+ op = document.getElementById('rule_op' + id),
+ target = document.getElementById('rule_target' + id),
+ header = document.getElementById('custom_header' + id);
- if (obj.value == 'size')
- {
- document.getElementById('rule_size' + id).style.display = 'inline';
- document.getElementById('rule_op' + id).style.display = 'none';
- document.getElementById('rule_target' + id).style.display = 'none';
- document.getElementById('custom_header' + id).style.display = 'none';
+ if (obj.value == 'size') {
+ size.style.display = 'inline';
+ op.style.display = 'none';
+ target.style.display = 'none';
+ header.style.display = 'none';
}
- else
- {
- if (obj.value != '...')
- document.getElementById('custom_header' + id).style.display = 'none';
- else
- document.getElementById('custom_header' + id).style.display = 'inline';
-
- document.getElementById('rule_size' + id).style.display = 'none';
- document.getElementById('rule_op' + id).style.display = 'inline';
- rule_op_select(id);
+ else {
+ header.style.display = obj.value != '...' ? 'none' : 'inline';
+ size.style.display = 'none';
+ op.style.display = 'inline';
+ rule_op_select(id);
}
}
function rule_op_select(id)
{
- var obj = document.getElementById('rule_op'+id);
+ var obj = document.getElementById('rule_op' + id),
+ target = document.getElementById('rule_target' + id);
- if (obj.value == 'exists' || obj.value == 'notexists')
- {
- document.getElementById('rule_target' + id).style.display = 'none';
- }
- else
- {
- document.getElementById('rule_target' + id).style.display = 'inline';
- }
+ target.style.display = obj.value == 'exists' || obj.value == 'notexists' ? 'none' : 'inline';
}
function action_type_select(id)
{
- var obj = document.getElementById('action_type'+id);
+ var obj = document.getElementById('action_type' + id),
+ enabled = {},
+ elems = {
+ mailbox: document.getElementById('action_mailbox' + id),
+ target: document.getElementById('action_target' + id),
+ target_area: document.getElementById('action_target_area' + id),
+ flags: document.getElementById('action_flags' + id),
+ vacation: document.getElementById('action_vacation' + id)
+ };
- if (obj.value == 'fileinto' || obj.value == 'fileinto_copy')
- {
- document.getElementById('action_mailbox' + id).style.display = 'inline';
- document.getElementById('action_target' + id).style.display = 'none';
- document.getElementById('action_target_area' + id).style.display = 'none';
- document.getElementById('action_vacation' + id).style.display = 'none';
+ if (obj.value == 'fileinto' || obj.value == 'fileinto_copy') {
+ enabled.mailbox = 1;
}
- else if (obj.value == 'redirect' || obj.value == 'redirect_copy')
- {
- document.getElementById('action_target' + id).style.display = 'inline';
- document.getElementById('action_mailbox' + id).style.display = 'none';
- document.getElementById('action_target_area' + id).style.display = 'none';
- document.getElementById('action_vacation' + id).style.display = 'none';
+ else if (obj.value == 'redirect' || obj.value == 'redirect_copy') {
+ enabled.target = 1;
}
- else if (obj.value.match(/^reject|ereject$/))
- {
- document.getElementById('action_target_area' + id).style.display = 'inline';
- document.getElementById('action_vacation' + id).style.display = 'none';
- document.getElementById('action_target' + id).style.display = 'none';
- document.getElementById('action_mailbox' + id).style.display = 'none';
+ else if (obj.value.match(/^reject|ereject$/)) {
+ enabled.target_area = 1;
}
- else if (obj.value == 'vacation')
- {
- document.getElementById('action_vacation' + id).style.display = 'inline';
- document.getElementById('action_target_area' + id).style.display = 'none';
- document.getElementById('action_target' + id).style.display = 'none';
- document.getElementById('action_mailbox' + id).style.display = 'none';
+ else if (obj.value.match(/^(add|set|remove)flag$/)) {
+ enabled.flags = 1;
}
- else // discard, keep, stop
- {
- document.getElementById('action_target_area' + id).style.display = 'none';
- document.getElementById('action_vacation' + id).style.display = 'none';
- document.getElementById('action_target' + id).style.display = 'none';
- document.getElementById('action_mailbox' + id).style.display = 'none';
+ else if (obj.value == 'vacation') {
+ enabled.vacation = 1;
+ }
+
+ for (var x in elems) {
+ elems[x].style.display = !enabled[x] ? 'none' : 'inline';
}
}