").attr({"class":"actionrow",id:"actionrow"+b}).html(a);this.managesieve_insertrow(d,a,c);$('textarea[data-type="list"]',a).each(function(){smart_field_init(this)});this.managesieve_formbuttons(d)}};
rcube_webmail.prototype.managesieve_actiondel=function(a){$("#actiondel"+a).hasClass("disabled")||this.confirm_dialog(this.get_label("managesieve.actiondeleteconfirm"),"delete",function(b,c){b=document.getElementById("actionrow"+a);b.parentNode.removeChild(b);c.managesieve_formbuttons(document.getElementById("actions"))})};
rcube_webmail.prototype.managesieve_insertrow=function(a,b,c){(c=$("#"+("rules"==$(a).attr("id")?"rulerow":"actionrow")+c)[0])?$(b).insertAfter(c):$(a).append(b);this.triggerEvent("managesieve.insertrow",{obj:b})};rcube_webmail.prototype.managesieve_formbuttons=function(a){a=$("a.delete",a);a.removeClass("disabled");1==a.length&&a.addClass("disabled")};
rcube_webmail.prototype.managesieve_vacation_addresses=function(a){var b=this.set_busy(!0,"loading");this.http_post("plugin.managesieve-action",{_act:"addresses",_aid:a},b)};rcube_webmail.prototype.managesieve_vacation_addresses_update=function(a,b){a=$("#vacation_addresses,#action_addresses"+(a||""));smart_field_reset(a.get(0),b)};
function rule_header_select(a){var b=document.getElementById("header"+a),c=document.getElementById("rule_size"+a),d=document.getElementById("rule_message"+a),f=document.getElementById("rule_op"+a),e=document.getElementById("custom_header"+a+"_list"),g=document.getElementById("custom_var"+a+"_list"),l=document.getElementById("rule_mod"+a),m=document.getElementById("rule_trans"+a),u=document.getElementById("rule_comp"+a),p=document.getElementById("rule_mime"+a),q=document.getElementById("rule_mime_part"+
a),v=document.getElementById("rule_date_part"+a),x=document.getElementById("rule_date_header_div"+a),r=$("#rule_op"+a),k=b.value,t=[f,e,g,l,m,u,c,p,q];if("size"==k)d&&t.push(d),$.each(t,function(){this!=window&&(this.style.display="none")}),c.style.display="";else if("message"==k&&d)$.each(t,function(){this!=window&&(this.style.display="none")}),d.style.display="";else{var n="body"!=k&&"currentdate"!=k&&"date"!=k&&"string"!=k;e.style.display="..."!=k?"none":"";g.style.display="string"!=k?"none":"";
c.style.display="none";f.style.display="";u.style.display="";l.style.display=n?"":"none";m.style.display="body"==k?"":"none";p&&(p.style.display=n?"":"none");q&&(q.style.display=n?"":"none");d&&(d.style.display="message"==k?"":"none")}v&&(v.style.display="currentdate"==k||"date"==k?"inline":"none");x&&(x.style.display="date"==k?"":"none");$('[value="exists"],[value="notexists"]',r).prop("disabled","string"==k);r.val()||r.val("contains");rule_op_select(f,a,k);rule_mod_select(a,k,!n);rule_mime_select(a);
b.style.width="..."==k?"40px":""}function rule_op_select(a,b,c){var d=document.getElementById("rule_target"+b+"_list");c||(c=document.getElementById("header"+b).value);d.style.display=a.value.match(/^(exists|notexists)$/)||c.match(/^(size|message)$/)?"none":""}function rule_trans_select(a){var b=document.getElementById("rule_trans_op"+a);document.getElementById("rule_trans_type"+a).style.display="content"!=b.value?"none":"inline"}
function rule_mod_select(a,b,c){var d=document.getElementById("rule_mod_op"+a),f=document.getElementById("rule_mod_type"+a),e=document.getElementById("rule_duplicate_div"+a),g=document.getElementById("rule_index_div"+a);c&&(d.value="");b||(b=document.getElementById("header"+a).value);f.style.display="address"!=d.value&&"envelope"!=d.value?"none":"";g&&(g.style.display=b.match(/^(body|currentdate|size|message|string)$/)||"envelope"==d.value?"none":"");e&&(e.style.display="message"==b?"":"none")}
function rule_join_radio(a){$("#rules").css("display","any"==a?"none":"block")}function rule_adv_switch(a,b){b=$(b);var c=b.hasClass("hide");a=$("#rule_advanced"+a);c?(a.get(0).style.display="none",b.removeClass("hide").addClass("show")):(a.get(0).style.display="",b.removeClass("show").addClass("hide"))}function rule_mime_select(a){var b=$("#rule_mime_type"+a);a=$("#rule_mime_param"+a+"_list");a.length&&(a[0].style.display="param"==b.val()?"":"none")}
function action_type_select(a){var b=document.getElementById("action_type"+a).value,c={};a={mailbox:document.getElementById("action_mailbox"+a),target:document.getElementById("redirect_target"+a),target_area:document.getElementById("action_target_area"+a),flags:document.getElementById("action_flags"+a),vacation:document.getElementById("action_vacation"+a),forward:document.getElementById("action_forward"+a),set:document.getElementById("action_set"+a),notify:document.getElementById("action_notify"+
a),addheader:document.getElementById("action_addheader"+a),deleteheader:document.getElementById("action_deleteheader"+a)};"fileinto"==b||"fileinto_copy"==b?c.mailbox=1:"redirect"==b||"redirect_copy"==b?c.target=1:b.match(/^reject|ereject$/)?c.target_area=1:b.match(/^(add|set|remove)flag$/)?c.flags=1:b.match(/^(vacation|forward|set|notify|addheader|deleteheader)$/)&&(c[b]=1);for(var d in a)a[d]&&(a[d].style.display=c[d]?"inline":"none")}
function vacation_action_select(){var a=$("#vacation_action").val();$("#action_target_span")["discard"==a||"keep"==a?"hide":"show"]()}
function smart_field_init(a){if(window.UI&&UI.smart_field_init)return UI.smart_field_init(a);var b=a.id+"_list",c=$('
'),d=a.value?a.value.split("\n"):[""];$("#"+b).length||($.each(d,function(f,e){c.append(smart_field_row(e,a.name,f,$(a).data("size")))}),c.attr("id",b),a=$(a),a.attr("disabled")?c.hide():a.prop("disabled",!0),a.data("hidden")&&c.hide(),a.after(c),a.hasClass("error")&&(c.addClass("error"),rcmail.managesieve_tip_register([[b,a.data("tip-class"),a.data("tip-msg")]])))}
function smart_field_row(a,b,c,d){c=$('
');a={value:a,name:b+"[]"};d&&(a.size=d);$("input",c).attr(a).keydown(function(f){var e=$(this);if(13==f.which){f=e.attr("name").replace(/\[\]$/,"");var g=(new Date).getTime();f=smart_field_row("",f,g,d);e.parent().after(f);$("input",f).focus()}else if((8==f.which||46==f.which)&&""==e.val()&&(e=e.parent(),1
").addClass(e.data("tip-class")).text(e.data("tip-msg"));c&&(f=$("mail"==rcmail.env.task?"#sievefilterform > iframe":
"#filter-box",parent.document).offset(),l+=f.top,g+=f.left);d.html("").append(e);l-=d.height();d.css({left:g,top:l,minWidth:m-2+"px"}).show()})};
function sieve_formattime(a,b){var c,d="",f=rcmail.env.time_format||"H:i";for(c=0;ca?"0":"")+a;break;case "G":d+=a;break;case "H":d+=(10>a?"0":"")+a;break;case "i":d+=(10>b?"0":"")+b;break;case "s":d+="00";default:d+=e}}return d}
function sieve_form_init(){var a=rcmail.gui_objects.sieveform;"plugin.managesieve"==rcmail.env.action&&"mail"==rcmail.env.task&&parent.rcmail.managesieve_dialog_resize(a);$('input[type="text"]',a).first().focus();$('textarea[data-type="list"]',a).each(function(){smart_field_init(this)});$('[name^="_header"]',a).each(function(){/([0-9]+)$/.test(this.id)&&rule_header_select(RegExp.$1)});$.datepicker&&rcmail.env.date_format&&($.datepicker.setDefaults({dateFormat:rcmail.env.date_format,changeMonth:!0,
showOtherMonths:!0,selectOtherMonths:!0,onSelect:function(b){$(this).focus().val(b)}}),$("input.datepicker").datepicker());$("#vacation_timefrom, #vacation_timeto").attr("autocomplete","off").autocomplete({delay:100,minLength:1,source:function(b,c){var d=[];for(b=0;24>b;b++)d.push(sieve_formattime(b,0));d.push(sieve_formattime(23,59));return c(d)},open:function(b,c){b=$(this);var d=b.val();c=b.autocomplete("widget").css("width","10em");var f=b.data("ui-autocomplete").menu;d&&d.length&&c.children().each(function(){var e=
$(this);0==e.text().indexOf(d)&&f._scrollIntoView(e)})},select:function(b,c){$(this).val(c.item.value);return!1}}).click(function(){$(this).autocomplete("search",$(this).val()||" ")});$("input.error").each(function(){String(this.id).match(/([0-9]+)$/)&&$("#ruleadv"+RegExp.$1+".show").click()})}var cmeditor;function cmCreateErrorElem(a){var b=document.createElement("div");b.style.color="#822";b.innerHTML="\u25cf";b.title=a;return b}
function cmScrollToError(){var a=$(".CodeMirror-lines .line-error"),b=$(".CodeMirror-scroll");a.parent();b.scrollTop(a.offset().top-b.offset().top-Math.round(b.height()/2))}
function sieve_raw_editor_init(){var a=document.getElementById("rawfiltersettxt");a&&!cmeditor&&(cmeditor=CodeMirror.fromTextArea(a,{mode:"sieve",lineNumbers:!0,gutters:["CodeMirror-linenumbers","errorGutter"],styleActiveLine:!0}),$.each(rcmail.env.sieve_errors||[],function(b,c){var d=Number(c.line)-1;cmeditor.addLineClass(d,"background","line-error");cmeditor.setGutterMarker(d,"errorGutter",cmCreateErrorElem(c.msg));b||cmScrollToError()}))}
rcube_webmail.prototype.managesieve_create=function(a){if(!a&&"show"!=this.env.action){a=this.message_list.get_single_selection();var b=this.set_busy(!0,"loading");this.http_post("plugin.managesieve-action",{_uid:a},b)}else if(this.env.sieve_headers&&this.env.sieve_headers.length){a={};var c=this.get_label("managesieve.newfilter"),d=$('
'),f={minWidth:600,minHeight:250,height:300};d.append($("").append($("").text(this.get_label("managesieve.usedata"))).append($('')));
$.each(this.env.sieve_headers,function(e,g){g={type:"checkbox",name:"headers[]",id:"sievehdr"+e,value:e,checked:!0};var l=rcmail.env.sieve_headers[e][0]+": "+rcmail.env.sieve_headers[e][1];$("ul",d).append($("").append($(" ").attr(g)).append($("").attr("for","sievehdr"+e).text(l)))});a[this.get_label("managesieve.nextstep")]=function(){var e=$('input[name="headers[]"]:checked',d);if(e.length){var g=rcmail.get_task_url("mail");g=rcmail.add_url(g,"_action","plugin.managesieve");g=rcmail.add_url(g,
"_framed",1);e.map(function(){var m=rcmail.env.sieve_headers[this.value];g=rcmail.add_url(g,"r["+this.value+"]",m[0]+":"+m[1])});e={};var l=$("