From: woltlab.com Date: Tue, 6 Jan 2015 00:36:46 +0000 (+0100) Subject: Updating minified JavaScript files X-Git-Tag: 2.1.0_Beta_3~26 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=00e9d20830017238d81836fdca16ceaf6a588e89;p=GitHub%2FWoltLab%2FWCF.git Updating minified JavaScript files --- diff --git a/wcfsetup/install/files/js/3rdParty/redactor/plugins/wcombined.min.js b/wcfsetup/install/files/js/3rdParty/redactor/plugins/wcombined.min.js index d07663c5d8..95754a52e0 100644 --- a/wcfsetup/install/files/js/3rdParty/redactor/plugins/wcombined.min.js +++ b/wcfsetup/install/files/js/3rdParty/redactor/plugins/wcombined.min.js @@ -3,7 +3,7 @@ if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.table=function(){ret // wbbcode.js if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wbbcode=function(){return{init:function(){var d=this.$textarea.wcfIdentify();this.opts.initCallback=(function(){if($.browser.msie){this.$editor.addClass("msie")}var h=$.trim(this.wutil.getOption("woltlab.originalValue"));if(h.length){this.wutil.replaceText(h);this.wutil.selectionEndOfEditor()}delete this.opts.woltlab.originalValue;$(document).trigger("resize");this.wutil.saveSelection()}).bind(this);this.opts.pasteBeforeCallback=$.proxy(this.wbbcode._pasteBeforeCallback,this);this.opts.pasteCallback=$.proxy(this.wbbcode._pasteCallback,this);var c=this.clean.onSync;this.clean.onSync=function(h){h=h.replace(/

]+)?><\/p>/g,"

@@@wcf_empty_line@@@

");return c.call(self,h)};if(this.wutil.getOption("woltlab.autosaveOnce")){this.wutil.saveTextToStorage();delete this.opts.woltlab.autosaveOnce}var b=this.button.get("table");if(b.length){var g=b.data("dropdown");g.find(".redactor-dropdown-add_head").parent().remove();g.find(".redactor-dropdown-delete_head").parent().remove();$('"}return'

"+__REDACTOR_CODE_HIGHLIGHTERS[K]+(N?": "+WCF.String.escapeHTML(N):"")+'

    '+R+"
"});F=F.replace(w,h)}}F=F.replace(/

<(blockquote|div)/g,"<$1");F=F.replace(/<\/(blockquote|div)><\/p>/g,"");WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","afterConvertToHtml",{data:F});return F},_pasteBeforeCallback:function(a){var b={1:24,2:22,3:18,4:14,5:12,6:10};console.debug(a);a=a.replace(/]+>/g,function(c,d){return"[size="+b[d]+"]"});a=a.replace(/<\/h[1-6]>/g,"[/size]");a=a.replace(/<(article|header)[^>]+>/g,"

");a=a.replace(/<\/(article|header)>/g,"
");a=a.replace(/<(div|p)([^>]+)?><(div|p)([^>]+)?>/g,"

");a=a.replace(/<\/(div|p)><\/(div|p)>/g,"

");WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","beforePaste",{html:a});return a},_pasteCallback:function(a){console.debug(a);a=a.replace(/\[size=(\d+)\]/g,'

');a=a.replace(/\[\/size\]/g,"

");WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","afterPaste",{html:a});return a;a=a.replace(/]+)>/g,function(b,c){b=b.replace(/data-mozilla-paste-image="0"/,'data-mozilla-paste-image="0" style="display:none"');return b});return a},insertAttachment:function(e,c){e=parseInt(e);var a=this.wutil.getOption("woltlab.attachment"+(!c?"Thumbnail":"")+"Url");var d=this.wbbcode._getImageAttachments();if(a&&d[e]!==undefined){var b="";if(c){b=' style="width: '+d[e].width+"px; max-height: "+d[e].height+"px; max-width: "+d[e].width+'px;"'}this.wutil.insertDynamic('","[attach="+e+(c?",none,"+d[e].width:"")+"][/attach]")}else{this.wutil.insertDynamic("[attach="+e+"][/attach]")}},removeAttachment:function(a){if(!this.opts.visual){return}this.$editor.find("img.redactorEmbeddedAttachment").each(function(b,d){var c=$(d);if(c.data("attachmentID")==a){c.remove()}})},_getImageAttachments:function(){var b=this.wutil.getOption("woltlab.attachmentImages")||[];if(b.length){delete this.opts.attachmentImages;return b}var a={imageAttachments:{}};WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","getImageAttachments_"+this.$textarea.wcfIdentify(),a);return a.imageAttachments},_keydownCallback:function(g){switch(g.event.which){case $.ui.keyCode.BACKSPACE:case $.ui.keyCode.DELETE:case $.ui.keyCode.DOWN:case $.ui.keyCode.ENTER:case $.ui.keyCode.UP:case 83:break;default:return;break}this.selection.get();var a=$(this.selection.getCurrent());var f=this.selection.getParent();f=(f)?$(f):f;var l=(f)?f.closest("blockquote.quoteBox",this.$editor.get()[0]):{length:0};switch(g.event.which){case $.ui.keyCode.BACKSPACE:if(this.wutil.isCaret()){if(l.length){var c=true;l.find("div > div").each(function(){if($(this).text().replace(/\u200B/,"").length){c=false;return false}});if(c){var h=window.getSelection();if(h.rangeCount){h.removeAllRanges()}var i=document.createRange();i.selectNode(l[0]);h.addRange(i);g.cancel=true}}}break;case $.ui.keyCode.DELETE:if(this.wutil.isCaret()){if(this.wutil.isEndOfElement(a[0])&&a.next("blockquote").length){var h=window.getSelection();if(h.rangeCount){h.removeAllRanges()}var i=document.createRange();i.selectNode(a.next()[0]);h.addRange(i);g.cancel=true}}break;case $.ui.keyCode.DOWN:if(a.next("blockquote").length){this.caret.setStart(a.next().find("> div > div:first"));g.cancel=true}else{if(f){if(f.next("blockquote").length){this.caret.setStart(f.next().find("> div > div:first"));g.cancel=true}else{if(l.length){var k=a.closest("div",l[0]);if(!k.next().length){if(l.next().length){this.caret.setStart(l.next())}else{this.wutil.setCaretAfter(l)}g.cancel=true}}}}}break;case $.ui.keyCode.ENTER:if(l.length){this.keydown.blockquote=false;this.keydown.enterWithinBlockquote=true}break;case $.ui.keyCode.UP:if(!f||!l.length){return}var k=a.closest("div",l[0]);var b=k.prev();if(b[0].tagName==="DIV"){return}else{if(b[0].tagName==="BLOCKQUOTE"){return}}var j=l.prev();if(j.length===0){this.wutil.setCaretBefore(l)}else{if(j[0].tagName==="BLOCKQUOTE"){this.caret.sendEnd(j.find("> div > div:last"))}else{if($.trim(j.html())==""){j.html(this.opts.invisibleSpace)}this.caret.setEnd(j)}}g.cancel=true;break;case 83:if($.browser.mobile){return}var e=false;if(navigator.platform.match(/^Mac/)){if(g.event.ctrlKey&&g.event.altKey){e=true}}else{if(g.event.altKey){e=true}}if(e){var d={cancel:false};WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","submitEditor_"+this.$textarea.wcfIdentify(),d);if(d.cancel){g.cancel=true}}break}},_keyupCallback:function(a){if(a.event.which!==$.ui.keyCode.BACKSPACE&&a.event.which!==$.ui.keyCode.DELETE){return}this.$editor.find("blockquote").each(function(b,d){var c=$(d);if(!c.children("header").length){c.remove()}})},observeQuotes:function(){var a=this.$editor.find(".redactorQuoteEdit:not(.jsRedactorQuoteEdit)");if(a.length){a.each((function(d,c){var b=$(c);b.addClass("jsRedactorQuoteEdit").click($.proxy(this.wbbcode._observeQuotesClick,this))}).bind(this))}},_observeQuotesClick:function(d){var b=$(d.currentTarget).closest("header");var c=$('');$(''+WCF.Language.get("wcf.bbcode.quote.edit")+"").click($.proxy(function(f){f.preventDefault();this.wbbcode._openQuoteEditOverlay($(d.currentTarget).closest("blockquote.quoteBox"),false);$(".redactor-link-tooltip").remove()},this)).appendTo(c);var a=b.offset();c.css({left:a.left+"px",top:(a.top+20)+"px"});$(".redactor-link-tooltip").remove();c.appendTo(document.body);this.selection.remove()},observeCodeListings:function(){this.$editor.find(".codeBox:not(.jsRedactorCodeBox)").each((function(a,d){var b=$(d).addClass("jsRedactorCodeBox");var c=$('
'+WCF.Language.get("wcf.bbcode.code.edit")+"
").insertAfter(b.find("> div > div > h3"));c.click((function(){this.wbbcode._handleInsertCode(b,false)}).bind(this))}).bind(this))},_openQuoteEditOverlay:function(a,c){this.modal.load("quote",WCF.Language.get("wcf.bbcode.quote."+(c?"insert":"edit")),400);var b=this.modal.createActionButton(this.lang.get("save"));if(c){this.selection.save();b.click($.proxy(function(){var f=$("#redactorQuoteAuthor").val();var e=WCF.String.escapeHTML($("#redactorQuoteLink").val());this.selection.restore();var d=this.selection.getHtml();if(this.utils.isEmpty(d)){d=""}var g=this.wbbcode.insertQuoteBBCode(f,e,d);if(g!==null){if(!d.length){this.caret.setStart(g.find("> div")[0])}}this.modal.close()},this))}else{$("#redactorQuoteAuthor").val(a.data("author"));$("#redactorQuoteLink").val(WCF.String.unescapeHTML(a.attr("cite")));b.click($.proxy(function(){var d=$("#redactorQuoteAuthor").val();a.data("author",d);a.attr("data-author",d);a.prop("cite",WCF.String.escapeHTML($("#redactorQuoteLink").val()));this.wbbcode._updateQuoteHeader(a);this.modal.close()},this))}this.modal.show()},_updateQuoteHeader:function(b){var c=b.data("author");var a=b.attr("cite");if(a){a=WCF.String.escapeHTML(a)}b.find("> div > header > h3").empty().append(this.wbbcode._buildQuoteHeader(c,a))},insertQuoteBBCode:function(c,h,d,e){var g="[quote]";var a="[/quote]";if(c){if(h){g="[quote='"+c+"','"+h+"']"}else{g="[quote='"+c+"']"}}var l=null;if(this.wutil.inWysiwygMode()){var f=(e)?this.wbbcode.convertToHtml(e):d;var k=WCF.getUUID();var b=this.wbbcode.convertToHtml(g+k+a);b=b.replace(k,f.replace(/^

/,"").replace(/<\/p>$/,""));b=b.replace(/^

/,"").replace(/<\/p>$/,"");b=b.replace(/

div");if(j.length==1){if(j[0].innerHTML===""){j[0].innerHTML=this.opts.invisibleSpace}}else{if($.browser.mozilla){var i=l.find("> div > br[type=_moz]");if(i.length){$("
"+this.opts.invisibleSpace+"
").insertBefore(i);i.remove()}}}l.removeAttr("id");this.wutil.setCaretAfter(l[0])}this.wbbcode.observeQuotes();this.wbbcode.fixBlockLevelElements();this.$toolbar.find("a.re-__wcf_quote").removeClass("redactor-button-disabled")}else{this.wutil.insertAtCaret(g+e+a)}this.wutil.saveSelection();return l},_buildQuoteHeader:function(b,c){var a="";if(!b&&c){b=c;c=""}if(b){if(c){a+=''}a+=WCF.Language.get("wcf.bbcode.quote.title.javascript",{quoteAuthor:WCF.String.unescapeHTML(b)});if(c){a+=""}}else{a=""+WCF.Language.get("wcf.bbcode.quote.title.clickToSet")+""}return a},_handleInsertQuote:function(){this.wbbcode._openQuoteEditOverlay(null,true)},_handleInsertCode:function(c,e){this.modal.load("code",WCF.Language.get("wcf.bbcode.code."+(e?"insert":"edit")),400);var a=this.modal.createActionButton(this.lang.get("save")).addClass("buttonPrimary");if(e){this.selection.get();var b=this.selection.getText();this.selection.save();this.modal.show();var i=$("#redactorCodeBox").focus();i.val(b);a.click($.proxy(function(){var p=$("#redactorCodeBox");var m=$("#redactorCodeFilename");var r=$("#redactorCodeHighlighter");var s=$("#redactorCodeLineNumber");var o=p.val().replace(/^\n+/,"").replace(/\n+$/,"");if($.trim(o).length===0){if(!p.next("small.innerError").length){$(''+WCF.Language.get("wcf.global.form.error.empty")+"").insertAfter(p)}return}var n=$.trim(m.val().replace(/['"]/g,""));var q="[code="+r.val()+","+s.val()+(n.length?",'"+n+"'":"")+"]";q+=o;q+="[/code]";this.wutil.adjustSelectionForBlockElement();this.wutil.saveSelection();var l=this.wbbcode.convertToHtml(q);this.buffer.set();this.insert.html(l,false);var p=this.$editor.find(".codeBox:not(.jsRedactorCodeBox)");this.wbbcode.observeCodeListings();this.wbbcode.fixBlockLevelElements();p.attr("contenteditable","false");this.caret.setAfter(p);this.modal.close()},this))}else{var g=this.modal.createActionButton(WCF.Language.get("wcf.global.button.delete"));g.click((function(){this.buffer.set();c.remove();this.modal.close()}).bind(this));this.modal.show();var i=$("#redactorCodeBox").focus();var h=$("#redactorCodeFilename");var f=$("#redactorCodeHighlighter");var j=$("#redactorCodeLineNumber");f.val(c.data("highlighter"));h.val(c.data("filename")||"");var d=c.find("> div > ol");j.val(parseInt(d.prop("start")));var k="";d.children("li").each(function(l,m){k+=$(m).text()+"\n"});i.val(k.replace(/^\n+/,"").replace(/\n+$/,""));a.click($.proxy(function(){var m=i.val().replace(/^\n+/,"").replace(/\n+$/,"");if($.trim(m).length===0){if(!i.next("small.innerError").length){$(''+WCF.Language.get("wcf.global.form.error.empty")+"").insertAfter(i)}return}var q=f.val();c.data("highlighter",q);c.attr("data-highlighter",q);var n=__REDACTOR_CODE_HIGHLIGHTERS[q];var l=$.trim(h.val().replace(/['"]/g,""));if(l){n+=": "+WCF.String.escapeHTML(l);c.data("filename",l);c.attr("data-filename",l)}else{c.removeAttr("data-filename");c.removeData("filename")}c.data("highlighter",f.val());c.find("> div > div > h3").html(n);var o=c.find("> div > ol").empty();var r=parseInt(j.val());o.prop("start",(r>1?r:1));m=m.split("\n");var p="";for(var s=0;s"+WCF.String.escapeHTML(m[s])+""}o.append($(p));this.modal.close()},this))}},fixBlockLevelElements:function(){var a=(function(d,c){var b="P";if(d.parentElement.tagName==="DIV"&&d.parentElement!==this.$editor[0]){d=d.parentElement;b="DIV"}if(d[c]===null||d[c].tagName!==b){$("<"+b+">"+this.opts.invisibleSpace+"")[(c==="previousElementSibling"?"insertBefore":"insertAfter")](d)}else{if(d.previousElementSibling.tagName===b){if(!d[c].innerHTML.length||d[c].innerHTML.toLowerCase()==="

"){$(d[c]).html(this.opts.invisibleSpace)}}}}).bind(this);this.$editor.find("blockquote, .codeBox").each((function(b,c){a(c,"previousElementSibling");a(c,"nextElementSibling")}).bind(this))}}}; // wbutton.js -if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wbutton=function(){return{_bbcodes:{},init:function(){this._bbcodes={};for(var h=0,e=__REDACTOR_BUTTONS.length;h").append(e).insertAfter(this.button.get(d).parent());if(a!==null){this.button.setAwesome(b,a)}},_addBBCodeButton:function(b){var c="__wcf_"+b.name;var a=this.button.add(c,b.label);this.button.addCallback(a,this.wbutton._insertBBCode);this._bbcodes[c]={name:b.name,voidElement:(b.voidElement===true)};if(b.icon.match(/^fa\-[a-z\-]+$/)){this.button.setAwesome(c,b.icon)}else{a.css("background-image","url("+__REDACTOR_ICON_PATH+b.icon+")")}},_insertBBCode:function(a){var d=this._bbcodes[a].name;var b={buttonName:a,cancel:false};WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","insertBBCode_"+d+"_"+this.$textarea.wcfIdentify(),b);if(b.cancel===false){var c=this.selection.getHtml();if(false&&d==="tt"){var e=(this.selection.getParent())?$(this.selection.getParent()):null;if(e&&e.closest("inline.inlineCode",this.$editor.get()[0]).length){this.inline.toggleClass("inlineCode")}else{this.inline.toggleClass("inlineCode")}}else{this.buffer.set();if(this._bbcodes[a].voidElement){this.insert.html(c+this.selection.getMarkerAsHtml()+"["+d+"]",false)}else{this.insert.html("["+d+"]"+c+this.selection.getMarkerAsHtml()+"[/"+d+"]",false)}this.selection.restore()}}event.preventDefault();return false},insertImage:function(){this.image.show()},_insertImage:function(){var d=$("#redactor-image-link-source");var b=d.val().trim();if(b.length){this.buffer.set();var c=$("#redactor-image-align").val();var a="";if(c==="left"||c==="right"){a=' style="float: '+c+'"'}this.insert.html('",false);this.modal.close();this.observe.images()}else{if(!d.next("small.innerError")){$(''+WCF.Language.get("wcf.global.form.error.empty")+"").insertAfter(d)}}}}}; +if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wbutton=function(){return{_bbcodes:{},init:function(){this._bbcodes={};for(var h=0,e=__REDACTOR_BUTTONS.length;h").append(e).insertAfter(this.button.get(d).parent());if(a!==null){this.button.setAwesome(b,a)}},_addBBCodeButton:function(b){var c="__wcf_"+b.name;var a=this.button.add(c,b.label);this.button.addCallback(a,this.wbutton._insertBBCode);this._bbcodes[c]={name:b.name,voidElement:(b.voidElement===true)};if(b.icon.match(/^fa\-[a-z\-]+$/)){this.button.setAwesome(c,b.icon)}else{a.css("background-image","url("+__REDACTOR_ICON_PATH+b.icon+")")}},_insertBBCode:function(a){var d=this._bbcodes[a].name;var b={buttonName:a,cancel:false};WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","insertBBCode_"+d+"_"+this.$textarea.wcfIdentify(),b);if(b.cancel===false){var c=this.selection.getHtml();if(false&&d==="tt"){var e=(this.selection.getParent())?$(this.selection.getParent()):null;if(e&&e.closest("inline.inlineCode",this.$editor.get()[0]).length){this.inline.toggleClass("inlineCode")}else{this.inline.toggleClass("inlineCode")}}else{this.buffer.set();if(this.utils.browser("mozilla")&&!c.length){var f=getSelection().getRangeAt(0).startContainer;if(f.nodeType===Node.ELEMENT_NODE&&f.tagName==="P"&&f.innerHTML==="
"){f.removeChild(f.children[0])}}if(this._bbcodes[a].voidElement){this.insert.html(c+this.selection.getMarkerAsHtml()+"["+d+"]",false)}else{this.insert.html("["+d+"]"+c+this.selection.getMarkerAsHtml()+"[/"+d+"]",false)}this.selection.restore()}}},insertImage:function(){this.image.show()},_insertImage:function(){var d=$("#redactor-image-link-source");var b=d.val().trim();if(b.length){this.buffer.set();var c=$("#redactor-image-align").val();var a="";if(c==="left"||c==="right"){a=' style="float: '+c+'"'}this.insert.html('",false);this.modal.close();this.observe.images()}else{if(!d.next("small.innerError")){$(''+WCF.Language.get("wcf.global.form.error.empty")+"").insertAfter(d)}}}}}; // wfontcolor.js if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wfontcolor=function(){return{init:function(){var a=this.button.addDropdown(this.button.get("fontcolor"));this.wfontcolor._createDropdown(a)},_createDropdown:function(h){var b=["#000000","#800000","#8B4513","#2F4F4F","#008080","#000080","#4B0082","#696969","#B22222","#A52A2A","#DAA520","#006400","#40E0D0","#0000CD","#800080","#808080","#FF0000","#FF8C00","#FFD700","#008000","#00FFFF","#0000FF","#EE82EE","#A9A9A9","#FFA07A","#FFA500","#FFFF00","#00FF00","#AFEEEE","#ADD8E6","#DDA0DD","#D3D3D3","#FFF0F5","#FAEBD7","#FFFFE0","#F0FFF0","#F0FFFF","#F0F8FF","#E6E6FA","#FFFFFF"];var e=$('
  • ');for(var g=0,d=b.length;g').data("color",f).css("background-color",f);e.append(c);c.click($.proxy(this.wfontcolor._onColorPick,this))}var a=$('').html(this.lang.get("none")).data("color","none");a.click($.proxy(this.wfontcolor._onColorPick,this));e.appendTo(h);$('
  • ")},_onColorPick:function(a){a.preventDefault();var b=$(a.currentTarget).data("color");if(b==="none"){this.inline.removeStyleRule("color")}else{this.inline.format("span","style","color: "+b+";")}}}}; // wfontfamily.js @@ -15,4 +15,4 @@ if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wmonkeypatch=functio // wupload.js if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wupload=function(){return{_boundGlobalUploadEvents:false,_dropArea:{},_timer:null,_isDragging:false,_isFile:false,init:function(){var a=".redactor_"+this.$textarea.wcfIdentify();$(document).on("dragover"+a,$.proxy(this.wupload._dragOver,this));$(document).on("dragleave"+a,$.proxy(this.wupload._dragLeave,this));$(document).on("drop"+a,(function(b){b.preventDefault();this.wupload._revertDropArea(undefined,this.$textarea.wcfIdentify())}).bind(this));if(!this.wupload._boundGlobalUploadEvents){this.wupload._boundGlobalUploadEvents=true;$(document).on("dragend",function(b){b.preventDefault()})}WCF.System.Event.addListener("com.woltlab.wcf.attachment","autoInsert_"+this.$textarea.wcfIdentify(),$.proxy(this.wupload.insertPastedImageAttachment,this))},_dragOver:function(d){d=d.originalEvent;if(!d.dataTransfer||!d.dataTransfer.types){return}var e=false;for(var c in d.dataTransfer){if(/^moz/.test(c)){e=true;break}}this.wupload._isFile=false;if(e){if(d.dataTransfer.types[0]==="application/x-moz-file"){this.wupload._isFile=true}}else{for(var g=0;g'+WCF.Language.get("wcf.attachment.dragAndDrop.dropHere")+"").hide().appendTo(document.body);this.wupload._dropArea[b].on("dragover",$.proxy(this.wupload._hoverDropArea,this)).on("dragleave",$.proxy(this.wupload._revertDropArea,this)).on("drop",$.proxy(this.wupload._drop,this))}var a=(this.wutil.inWysiwygMode())?this.$editor.getDimensions("outer"):this.$textarea.getDimensions("outer");var f=(this.wutil.inWysiwygMode())?this.$editor.getOffsets("offset"):this.$textarea.getOffsets("offset");this.wupload._dropArea[b].css({height:a.height+"px",left:f.left+"px",lineHeight:a.height+"px",top:f.top+"px",width:a.width+"px"}).show();this.wupload._isDragging=true}d.preventDefault()},_hoverDropArea:function(a){this.wupload._dropArea[this.$textarea.wcfIdentify()].addClass("active").text(WCF.Language.get("wcf.attachment.dragAndDrop.dropNow"))},_revertDropArea:function(c,a){if(!this.wupload._isFile){return}var b=a||this.$textarea.wcfIdentify();this.wupload._dropArea[b].removeClass("active").text(WCF.Language.get("wcf.attachment.dragAndDrop.dropHere"));if(a){this.wupload._dropArea[b].hide()}},_dragLeave:function(){if(!this.wupload._isDragging||!this.wupload._isFile){return}if(this.wupload._timer===null){this.wupload._timer=new WCF.PeriodicalExecuter((function(a){a.stop();if(!this.wupload._isDragging){this.wupload._dropArea[this.$textarea.wcfIdentify()].hide()}}).bind(this),100)}else{this.wupload._timer.resume()}this.wupload._isDragging=false},_drop:function(c){if(!this.wupload._isFile){return}c=c.originalEvent||c;if(c.dataTransfer&&c.dataTransfer.files.length){c.preventDefault();var b=this.$textarea.wcfIdentify();this.wupload._revertDropArea(undefined,b);for(var d=0;d')},this))},insertPastedImageAttachment:function(b){var a=this.$editor.find("span.redactor-pastedImageFromClipboard-"+b.uploadID);a.before(b.attachment);a.remove()}}}; // wutil.js -if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wutil=function(){var a="";var b=null;return{_autosaveWorker:null,_range:null,init:function(){this.$textarea.parents("form").submit($.proxy(this.wutil.submit,this));if(this.wutil.getOption("woltlab.autosave").active){this.wutil.autosaveEnable();if(this.wutil.getOption("woltlab.autosave").saveOnInit||this.$textarea.data("saveOnInit")){this.wutil.setOption("woltlab.autosaveOnce",true)}else{this.wutil.autosaveRestore()}}this.wutil.setOption("autosave",false);var c=this.core.destroy;this.core.destroy=(function(){this.wutil.autosaveDisable();c.call(this)}).bind(this)},saveSelection:function(){var c=getSelection();if(c.rangeCount){this.wutil._range=c.getRangeAt(0)}},restoreSelection:function(){if(document.activeElement!==this.$editor[0]){this.$editor.focus()}if(this.wutil._range!==null){var c=window.getSelection();c.removeAllRanges();c.addRange(this.wutil._range);this.wutil._range=null}},clearSelection:function(){this._wutil.range=null},insertAtCaret:function(d){if(this.opts.visual){console.debug("insertAtCaret() failed: Editor is in WYSIWYG-mode.");return false}this.$textarea.focus();var e=this.$textarea.getCaret();if(e==-1){console.debug("insertAtCaret() failed: Source is not input[type=text], input[type=password] or textarea.")}var c=this.$textarea.val();c=c.substr(0,e)+d+c.substr(e);this.$textarea.val(c);return true},insertDynamic:function(c,d){if(this.wutil.inWysiwygMode()){this.insert.html(c,false)}else{if(d===undefined||d===null){d=c}this.wutil.insertAtCaret(d)}},setOption:function(c,d){if(c.indexOf(".")!==-1){c=c.split(".",2);this.opts[c[0]][c[1]]=d}else{this.opts[c]=d}},getOption:function(c){if(c.indexOf(".")!==-1){c=c.split(".",2);if(this.opts[c[0]][c[1]]){return this.opts[c[0]][c[1]]}}else{if(this.opts[c]){return this.opts[c]}}return null},inPlainMode:function(){return !this.opts.visual},inWysiwygMode:function(){return(this.opts.visual)},replaceRangesWith:function(c){getSelection().removeAllRanges();getSelection().addRange(c)},getText:function(){if(this.wutil.inWysiwygMode()){this.code.startSync();var c=this.$textarea.val();this.$textarea.val($.trim(this.wbbcode.convertFromHtml(c)))}var d=$.trim(this.$textarea.val());d=d.replace(/\[\/quote\]\n/g,"[/quote]");return d},isEmptyEditor:function(){if(this.opts.visual){return this.utils.isEmpty(this.$editor.html())}return(!$.trim(this.$textarea.val()))},submit:function(){if(this.wutil.inWysiwygMode()){this.code.startSync();this.$textarea.val($.trim(this.wbbcode.convertFromHtml(this.$textarea.val())))}this.wutil.autosavePurge()},reset:function(){if(this.opts.visual){this.$editor.html("

    "+this.opts.invisibleSpace+"

    ");this.wutil.saveSelection()}this.$textarea.val("");WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","reset",{wysiwygContainerID:this.$textarea.wcfIdentify()})},autosaveEnable:function(c){if(!this.wutil.getOption("woltlab.autosave").active){this.wutil.setOption("woltlab.autosave",{active:true,key:c})}if(this.wutil._autosaveWorker===null){this.wutil.autosavePurgeOutdated();this.wutil._autosaveWorker=new WCF.PeriodicalExecuter($.proxy(this.wutil.saveTextToStorage,this),15*1000)}return true},saveTextToStorage:function(d){var c=this.wutil.getText();if(a==c&&!d){return}try{localStorage.setItem(this.wutil.getOption("woltlab.autosave").key,JSON.stringify({content:c,timestamp:Date.now()}));a=c;this.wutil.autosaveShowNotice("saved")}catch(f){console.debug("[wutil.saveTextToStorage] Unable to access local storage: "+f.message)}},autosaveDisable:function(){if(!this.wutil.getOption("woltlab.autosave").active){return false}this.wutil._autosaveWorker.stop();this.wutil._autosaveWorker=null;this.wutil.setOption("woltlab.autosave",{active:false,key:""});return true},autosavePurge:function(){try{localStorage.removeItem(this.wutil.getOption("woltlab.autosave").key)}catch(c){console.debug("[wutil.autosavePurge] Unable to access local storage: "+c.message)}},autosaveRestore:function(){var c=this.wutil.getOption("woltlab.autosave");var d=null;try{d=localStorage.getItem(c.key)}catch(f){console.debug("[wutil.autosaveRestore] Unable to access local storage: "+f.message)}try{d=(d===null)?null:JSON.parse(d)}catch(f){d=null}if(d===null||!d.content){return false}if(this.wutil.inWysiwygMode()){this.wutil.setOption("woltlab.originalValue",d.content)}else{this.$textarea.val(d.content)}this.wutil.autosaveShowNotice("restored",{timestamp:d.timestamp});WCF.DOMNodeInsertedHandler.execute();return true},autosaveShowNotice:function(f,h){if(b===null){b=$('
    ');b.appendTo(this.$box);b.on("transitionend webkitTransitionEnd",(function(i){if(i.originalEvent.propertyName!=="opacity"){return}if(b.hasClass("open")){if(b.data("callbackOpen")){b.data("callbackOpen")()}}else{if(b.data("callbackClose")){b.data("callbackClose")()}b.removeData("callbackClose");b.removeData("callbackOpen");b.removeClass("redactorAutosaveNoticeRestore");b.empty();$('').appendTo(b)}}).bind(this))}var e="";switch(f){case"restored":$('').prependTo(b);var g=$('').appendTo(b);var c=$('').appendTo(b);g.click(function(){b.removeClass("open")});c.click((function(){WCF.System.Confirmation.show(WCF.Language.get("wcf.message.autosave.restored.revert.confirmMessage"),(function(i){if(i==="confirm"){this.wutil.reset();this.wutil.autosavePurge();b.removeClass("open")}}).bind(this))}).bind(this));e=WCF.Language.get("wcf.message.autosave.restored");b.addClass("redactorAutosaveNoticeRestore");var d="";d=WCF.System.Event.addListener("com.woltlab.wcf.redactor","keydown_"+this.$textarea.wcfIdentify(),(function(i){WCF.System.Event.removeListener("com.woltlab.wcf.redactor","keydown_"+this.$textarea.wcfIdentify(),d);setTimeout(function(){g.trigger("click")},3000)}).bind(this));break;case"saved":if(b.hasClass("open")){return}setTimeout(function(){b.removeClass("open")},2000);e=WCF.Language.get("wcf.message.autosave.saved");break}b.children("span.redactorAutosaveMessage").text(e);b.addClass("open")},autosavePurgeOutdated:function(){var h=0;var k=this.wutil.getOption("woltlab.autosave").prefix;var j=k+"_wcf_master";try{h=localStorage.getItem(j)}catch(i){console.debug("[wutil.autosavePurgeOutdated] Unable to access local storage: "+i.message)}if(h===0){return}var c=Date.now()-(7*24*3600*1000);if(h===null||h

    ").insertAfter(c);this.caret.setEnd(d)}}}},isCaret:function(){this.selection.get();return this.range.collapsed},isEndOfElement:function(c){this.selection.get();if(!this.wutil.isCaret()){return false}if(this.range.endContainer.nodeType===Element.TEXT_NODE){if(this.range.endOffset").insertBefore(f)}d.append(f)}}else{if(f.nodeType===Element.TEXT_NODE){if(d===null){if(c){if(c.nodeType===Element.ELEMENT_NODE&&c.tagName==="P"&&c.innerHTML==="\u200B"){var e=c.nextSibling;this.$editor[0].removeChild(c);c=e}}d=$("

    ").insertBefore(f)}d.append(f)}}}}}}; +if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wutil=function(){var b="";var c=null;var a=false;var d=null;return{_autosaveWorker:null,_range:null,init:function(){this.$textarea.parents("form").submit($.proxy(this.wutil.submit,this));if(this.wutil.getOption("woltlab.autosave").active){this.wutil.autosaveEnable();if(this.wutil.getOption("woltlab.autosave").saveOnInit||this.$textarea.data("saveOnInit")){this.wutil.setOption("woltlab.autosaveOnce",true)}else{this.wutil.autosaveRestore()}}this.wutil.setOption("autosave",false);var e=this.core.destroy;this.core.destroy=(function(){this.wutil.autosaveDisable();e.call(this)}).bind(this)},saveSelection:function(){var e=getSelection();if(e.rangeCount){this.wutil._range=e.getRangeAt(0)}},restoreSelection:function(){if(document.activeElement!==this.$editor[0]){this.$editor.focus()}if(this.wutil._range!==null){var e=window.getSelection();e.removeAllRanges();e.addRange(this.wutil._range);this.wutil._range=null}},clearSelection:function(){this._wutil.range=null},insertAtCaret:function(f){if(this.opts.visual){console.debug("insertAtCaret() failed: Editor is in WYSIWYG-mode.");return false}this.$textarea.focus();var g=this.$textarea.getCaret();if(g==-1){console.debug("insertAtCaret() failed: Source is not input[type=text], input[type=password] or textarea.")}var e=this.$textarea.val();e=e.substr(0,g)+f+e.substr(g);this.$textarea.val(e);return true},insertDynamic:function(e,f){if(this.wutil.inWysiwygMode()){this.insert.html(e,false)}else{if(f===undefined||f===null){f=e}this.wutil.insertAtCaret(f)}},setOption:function(e,f){if(e.indexOf(".")!==-1){e=e.split(".",2);this.opts[e[0]][e[1]]=f}else{this.opts[e]=f}},getOption:function(e){if(e.indexOf(".")!==-1){e=e.split(".",2);if(this.opts[e[0]][e[1]]){return this.opts[e[0]][e[1]]}}else{if(this.opts[e]){return this.opts[e]}}return null},inPlainMode:function(){return !this.opts.visual},inWysiwygMode:function(){return(this.opts.visual)},replaceRangesWith:function(e){getSelection().removeAllRanges();getSelection().addRange(e)},getText:function(){if(this.wutil.inWysiwygMode()){this.code.startSync();var e=this.$textarea.val();this.$textarea.val($.trim(this.wbbcode.convertFromHtml(e)))}var f=$.trim(this.$textarea.val());f=f.replace(/\[\/quote\]\n/g,"[/quote]");return f},isEmptyEditor:function(){if(this.opts.visual){return this.utils.isEmpty(this.$editor.html())}return(!$.trim(this.$textarea.val()))},submit:function(){if(this.wutil.inWysiwygMode()){this.code.startSync();this.$textarea.val($.trim(this.wbbcode.convertFromHtml(this.$textarea.val())))}this.wutil.autosavePurge()},reset:function(){if(this.opts.visual){this.$editor.html("

    "+this.opts.invisibleSpace+"

    ");this.wutil.saveSelection()}this.$textarea.val("");WCF.System.Event.fireEvent("com.woltlab.wcf.redactor","reset",{wysiwygContainerID:this.$textarea.wcfIdentify()})},autosaveEnable:function(e){if(!this.wutil.getOption("woltlab.autosave").active){this.wutil.setOption("woltlab.autosave",{active:true,key:e})}if(this.wutil._autosaveWorker===null){this.wutil.autosavePurgeOutdated();this.wutil._autosaveWorker=new WCF.PeriodicalExecuter((function(f){this.wutil.saveTextToStorage(false)}).bind(this),15*1000)}return true},saveTextToStorage:function(g){var f=this.wutil.getText();if(b==f&&!g){return}try{localStorage.setItem(this.wutil.getOption("woltlab.autosave").key,JSON.stringify({content:f,timestamp:Date.now()}));b=f;a=true;if(d===null){d=new WCF.PeriodicalExecuter((function(e){if(a===false){e.stop();d=null;return}this.wutil.autosaveShowNotice("saved");a=false}).bind(this),120*1000)}}catch(h){console.debug("[wutil.saveTextToStorage] Unable to access local storage: "+h.message)}},autosaveDisable:function(){if(!this.wutil.getOption("woltlab.autosave").active){return false}this.wutil._autosaveWorker.stop();this.wutil._autosaveWorker=null;this.wutil.setOption("woltlab.autosave",{active:false,key:""});return true},autosavePurge:function(){try{localStorage.removeItem(this.wutil.getOption("woltlab.autosave").key)}catch(f){console.debug("[wutil.autosavePurge] Unable to access local storage: "+f.message)}},autosaveRestore:function(){var f=this.wutil.getOption("woltlab.autosave");var g=null;try{g=localStorage.getItem(f.key)}catch(h){console.debug("[wutil.autosaveRestore] Unable to access local storage: "+h.message)}try{g=(g===null)?null:JSON.parse(g)}catch(h){g=null}if(g===null||!g.content){return false}if(this.wutil.inWysiwygMode()){this.wutil.setOption("woltlab.originalValue",g.content)}else{this.$textarea.val(g.content)}this.wutil.autosaveShowNotice("restored",{timestamp:g.timestamp});WCF.DOMNodeInsertedHandler.execute();return true},autosaveShowNotice:function(h,j){if(c===null){c=$('
    ');c.appendTo(this.$box);c.on("transitionend webkitTransitionEnd",(function(k){if(k.originalEvent.propertyName!=="opacity"){return}if(c.hasClass("open")){if(c.data("callbackOpen")){c.data("callbackOpen")()}}else{if(c.data("callbackClose")){c.data("callbackClose")()}c.removeData("callbackClose");c.removeData("callbackOpen");c.removeClass("redactorAutosaveNoticeRestore");c.empty();$('').appendTo(c)}}).bind(this))}var g="";switch(h){case"restored":$('').prependTo(c);var i=$('').appendTo(c);var e=$('').appendTo(c);i.click(function(){c.removeClass("open")});e.click((function(){WCF.System.Confirmation.show(WCF.Language.get("wcf.message.autosave.restored.revert.confirmMessage"),(function(k){if(k==="confirm"){this.wutil.reset();this.wutil.autosavePurge();c.removeClass("open")}}).bind(this))}).bind(this));g=WCF.Language.get("wcf.message.autosave.restored");c.addClass("redactorAutosaveNoticeRestore");var f="";f=WCF.System.Event.addListener("com.woltlab.wcf.redactor","keydown_"+this.$textarea.wcfIdentify(),(function(k){WCF.System.Event.removeListener("com.woltlab.wcf.redactor","keydown_"+this.$textarea.wcfIdentify(),f);setTimeout(function(){i.trigger("click")},3000)}).bind(this));break;case"saved":if(c.hasClass("open")){return}setTimeout(function(){c.removeClass("open")},2000);g=WCF.Language.get("wcf.message.autosave.saved");break}c.children("span.redactorAutosaveMessage").text(g);c.addClass("open")},autosavePurgeOutdated:function(){var j=0;var m=this.wutil.getOption("woltlab.autosave").prefix;var l=m+"_wcf_master";try{j=localStorage.getItem(l)}catch(k){console.debug("[wutil.autosavePurgeOutdated] Unable to access local storage: "+k.message)}if(j===0){return}var f=Date.now()-(7*24*3600*1000);if(j===null||j

    ").insertAfter(e);this.caret.setEnd(f)}}}},isCaret:function(){this.selection.get();return this.range.collapsed},isEndOfElement:function(e){this.selection.get();if(!this.wutil.isCaret()){return false}if(this.range.endContainer.nodeType===Element.TEXT_NODE){if(this.range.endOffset").insertBefore(h)}f.append(h)}}else{if(h.nodeType===Element.TEXT_NODE){if(f===null){if(e){if(e.nodeType===Element.ELEMENT_NODE&&e.tagName==="P"&&e.innerHTML==="\u200B"){var g=e.nextSibling;this.$editor[0].removeChild(e);e=g}}f=$("

    ").insertBefore(h)}f.append(h)}}}}}};