/** * Roundcube functions for default skin interface * * Copyright (c) The Roundcube Dev Team * * The contents are subject to the Creative Commons Attribution-ShareAlike * License. It is allowed to copy, distribute, transmit and to adapt the work * by keeping credits to the original autors in the README file. * See http://creativecommons.org/licenses/by-sa/3.0/ for details. * * @license magnet:?xt=urn:btih:90dc5c0be029de84e523b9b3922520e79e0e6f08&dn=cc0.txt CC0-1.0 */ /* magnet:?xt=urn:btih:90dc5c0be029de84e523b9b3922520e79e0e6f08&dn=cc0.txt CC0-1.0 */ function rcube_mail_ui(){function k(a){u||(u=rcmail.local_storage_get_item("prefs.larry",{}));if(null==u[a]){var c=rcmail.get_cookie(a);null!=c&&(u[a]=c,rcmail.local_storage_set_item("prefs.larry",u)&&rcmail.set_cookie(a,c,new Date))}return u[a]}function v(a,c){u[a]=c;if(!rcmail.local_storage_set_item("prefs.larry",u)){var b=new Date;b.setYear(b.getFullYear()+1);rcmail.set_cookie(a,c,b)}}function w(a){a=a?10:0;rcmail.resize_timeout&&window.clearTimeout(rcmail.resize_timeout);rcmail.resize_timeout= window.setTimeout(function(){"mail"==rcmail.env.task&&("show"==rcmail.env.action||"preview"==rcmail.env.action?e():"compose"==rcmail.env.action&&x());$("body.iframe .footerleft").each(function(){var c=$(this),b=$(document.body),d=c.hasClass("floating"),f=b.outerHeight(!0)>$(window).height();f!=d&&(d=f?"addClass":"removeClass",c[d]("floating"),b[d]("floatingbuttons"))})},a)}function p(a){var c=$(a.object).siblings("div");c.length&&$(a.object).insertBefore(c.first());if("error"==a.type&&"login"!=rcmail.env.task){rcmail.hide_message(a.object); r.message_timer&&window.clearTimeout(r.message_timer);r.messagedialog||(r.messagedialog=$("
").addClass("popupdialog").hide());c=a.message;var b=function(){r.messagedialog.is(":visible")&&r.messagedialog.dialog("destroy").hide()};r.messagedialog.is(":visible")&&r.messagedialog.text()!=c&&(c=r.messagedialog.html()+"

"+a.message+"

");r.messagedialog.html(c).dialog({resizable:!1,closeOnEscape:!0,dialogClass:a.type,title:rcmail.gettext("errortitle"),close:b,hide:{effect:"fadeOut"},width:420, minHeight:90}).show();r.messagedialog.closest("div[role=dialog]").attr("role","alertdialog");0 .mailvelope");if(a.length){var c=$("#messagecontent").length?$("#messagecontent").height()-16:$(window).height()-a.offset().top-2;a.height(c)}}function g(a){}function n(a){}function t(){var a,c=["cc","bcc","replyto","followupto"];for(a=0;a div").width(c+ 8);$("#composebody_ifr").height(b+4-$("div.mce-toolbar").height());$("#googie_edit_layer").width(c).height(b);a=$("#directorylist");a.length&&$("#compose-contacts .scroller").css("top",a.position().top+a.outerHeight())}}function J(a){var c=$("#quotadisplay"),b=$("#quotamenu"),d=a.total?24*Math.ceil(a.percent/100*20):0;a.total&&480==d&&100>a.percent&&(d-=24);c.css("background-position","0 -"+d+"px");c.attr("class","countdisplay p"+10*Math.round(a.percent/10));a.table&&(b.length||(b=$('
').appendTo($("body"))), b.html(a.table),c.css("cursor","pointer").off("click").on("click",function(f){return rcmail.command("menu-open","quotamenu",f.target,f)}))}function N(a){$(".boxtitle a.search",a).click(function(c){var b=$(".boxtitle",a),d=$(".listsearchbox",a),f=d.is(":visible")?-1:1,l=34+($("select",d).length?22:0);d.slideToggle({duration:160,progress:function(m,q){0>f&&(q=1-q);$(".scroller",a).css("top",b.outerHeight()+l*q+"px")},complete:function(){d.toggleClass("expanded");d.is(":visible")?(d.find("input[type=text]").focus(), l=34+($("select",d).length?$("select",d).outerHeight()+4:0),$(".scroller",a).css("top",b.outerHeight()+l+"px")):$("a.reset",d).click()}});return!1})}function R(a){"reply-list"==a.command&&1==rcmail.env.reply_all_mode?(a=rcmail.gettext(a.status?"replylist":"replyall"),"preview"==rcmail.env.action?$("a.button.replyall").attr("title",a):$("a.button.reply-all").text(a).attr("title",a)):"compose-encrypted"==a.command?$("a.button.encrypt").parent().show():"compose-encrypted-signed"==a.command&&$("#encryptionmenulink").show()} function K(a,c){var b=F[a]=$("#"+a);b.appendTo(document.body);b.length&&(z[a]=$.extend(z[a]||{},c||{}))}function O(){$("#preview-shortheaders").toggle();var a=$("#preview-allheaders").toggle(),c=$("a#previewheaderstoggle");a.is(":visible")?c.attr("href","#hide").removeClass("add").addClass("remove").attr("aria-expanded","true"):c.attr("href","#details").removeClass("remove").addClass("add").attr("aria-expanded","false");v("previewheaders",a.is(":visible")?"1":"0")}function G(a,c){if(c||!$("#mail"+ a+"mode").hasClass("disabled"))$("#maillistmode, #mailthreadmode").removeClass("selected").attr("tabindex","0").attr("aria-disabled","false"),$("#mail"+a+"mode").addClass("selected").attr("tabindex","-1").attr("aria-disabled","true")}function H(a){if(a&&"messagelistmenu"==a.name)S(a);else if(a){var c=z[a.name]||{},b=$(c.link||"#"+a.name+"link"),d=a.obj&&a.obj.is(":visible");if(a.obj&&d&&b.length){var f=b.parent();$(window);f.hasClass("dropbutton")&&(b=f);if(c.above||b.hasClass("dropbutton"))f=b.offset(), a.obj.css({left:f.left+"px",top:f.top+(c.above?-a.obj.height():b.outerHeight())+"px"})}a.obj&&c.iconized&&a.obj.children("ul").addClass("iconized");a.obj&&c.editable&&a.obj.attr("data-editable","true");"function"==typeof c.callback&&c.callback(d,a)}}function T(a,c){var b=a.parentNode.id.replace(/^attach/,"");$.each(["open","download","rename"],function(){var d=this;$("#attachmenu"+d).off("click").attr("onclick","").click(function(f){return rcmail.command(d+"-attachment",b,this)})});z.attachmentmenu.link= a;rcmail.command("menu-open",{menu:"attachmentmenu",id:b},a,c)}function L(a){a=$(a);if(!a.children(".drop").length){var c=rcmail.gettext("options"),b=a.find("a.filename"),d=b.attr("tabindex")||0;c=$("").attr({"class":"drop skip-content",tabindex:d,"aria-haspopup":!0,title:c}).text(c).on("click keypress",function(f){if("keypress"!=f.type||13==rcube_event.get_keycode(f))return T(this,f),!1});b.length?c.insertAfter(b):c.appendTo(a)}}function S(a){var c=$("#listoptions");c.is(":visible")?c.dialog("close", a.originalEvent):($('input[name="sort_col"][value="'+rcmail.env.sort_col+'"]').prop("checked",!0),$('input[name="sort_ord"][value="DESC"]').prop("checked","DESC"==rcmail.env.sort_order),$('input[name="sort_ord"][value="ASC"]').prop("checked","DESC"!=rcmail.env.sort_order),$.each(["widescreen","desktop","list"],function(){$('input[name="layout"][value="'+this+'"]').prop("checked",rcmail.env.layout==this)}),$("#listoptions-columns",c)["widescreen"==rcmail.env.layout?"hide":"show"](),$('input[name="list_col[]"]').each(function(){$(this).prop("checked", -1!=$.inArray(this.value,rcmail.env.listcols))}),c.dialog({modal:!0,resizable:!1,closeOnEscape:!0,title:null,open:function(b){setTimeout(function(){c.find("a, input:not(:disabled)").not("[aria-disabled=true]").first().focus()},100)},close:function(b){c.dialog("destroy").hide();b.originalEvent&&rcube_event.is_keyboard(b.originalEvent)&&$("#listmenulink").focus()},minWidth:500,width:c.width()+25}).show())}function U(a){$("#listoptions").dialog("close");rcube_event.is_keyboard(a.originalEvent)&&$("#listmenulink").focus(); a=$('input[name="sort_col"]:checked').val();var c=$('input[name="sort_ord"]:checked').val(),b=$('input[name="layout"]:checked').val(),d=$('input[name="list_col[]"]:checked').map(function(){return this.value}).get();rcmail.set_list_options(d,a,c,rcmail.env.threading,b)}function V(a){a=$("#contacts-table");var c=a.parent().css("overflow","hidden");a.clone().css({position:"absolute",top:"0",left:"0",width:a.width()+"px","z-index":10}).appendTo(c).animate({left:-(a.width()+5)+"px"},300,"swing",function(){$(this).remove(); c.css("overflow","auto")})}function W(a){a=$("#contacts-table");var c=a.parent().css("overflow","hidden"),b=a.clone().appendTo(c);a.css({position:"absolute",top:"0",left:-(a.width()+5)+"px",width:a.width()+"px",height:a.height()+"px","z-index":10}).animate({left:"0"},300,"linear",function(){b.remove();$(this).css({position:"relative",left:"0",width:"100%",height:"auto","z-index":1});c.css("overflow","auto")})}function I(a,c){var b=$("#compose-"+a);if(!b.is(":visible"))return M[a]&&!c&&$("#_"+a).val(M[a]), b.show(),$("#"+a+"-link").hide(),x(),$("input,textarea",b).focus(),!1}function P(a,c){a=$(a);var b=a.get(0).id,d=a.children("fieldset");if(d.length){b||(b="rcmtabcontainer",a.attr("id",b));var f=$("
    ").addClass("tabsbar").prependTo(a);d.each(function(l){var m=$(this),q=m.children("legend"),A=b+"-t"+l;var X=$("").text(q.text()).attr("href","#"+A);l=$("
  • ").addClass("tablink");q.remove();m.attr("id",A);l.append(X).appendTo(f)});a.tabs({active:c||0,heightStyle:"content",activate:function(l,m){w()}})}} var C={},F={},z={forwardmenu:{editable:1},searchmenu:{editable:1,callback:function(a){if(a&&rcmail.env.search_mods){var c;a=$('input:checkbox[name="s_mods[]"]',F.searchmenu);var b=rcmail.env.mailbox,d=rcmail.env.search_mods,f=rcmail.env.search_scope||"base";if("mail"==rcmail.env.task){"all"==f&&(b="*");d=d[b]?d[b]:d["*"];var l="text";$('input:radio[name="s_scope"]').prop("checked",!1).filter("#s_scope_"+f).prop("checked",!0)}else l="*";if(d[l])a.map(function(){this.checked=!0;this.disabled=this.value!= l});else for(c in a.prop("disabled",!1).prop("checked",!1),d)$("#s_mod_"+c).prop("checked",!0)}}},attachmentmenu:{},listoptions:{editable:1},groupmenu:{above:1},mailboxmenu:{above:1},spellmenu:{callback:function(a,c){var b,d=rcmail.spellcheck_lang(),f=$("ul",c.obj);if(!f.length){f=$('