2 if(!RedactorPlugins
){var RedactorPlugins
={}}RedactorPlugins
.wbbcode
={init:function(){this._createSmileyDropdown();this.buttonReplace("smiley","wsmiley","Smiley",$.proxy(function(d
,b
,a
,c
){this.dropdownShow(c
,d
)},this));this.buttonAwesome("wsmiley","fa-smile-o");this.opts
.initCallback
=$.proxy(function(){if(this.$source
.val().length
){this.toggle();this.toggle()}},this)},_createSmileyDropdown:function(){var d
=$('<div class="redactor_dropdown redactor_dropdown_box_wsmiley" style="display: none; width: 195px;" />');var c
=$('<ul class="smileyList" />').appendTo(d
);for(var a
in __REDACTOR_SMILIES
){var b
=$('<li><img src="'+__REDACTOR_SMILIES
[a
]+'" class="smiley" /></li>').data("smileyCode",a
);b
.appendTo(c
).click($.proxy(this._onSmileyPick
,this))}$(this.$toolbar
).append(d
)},_onSmileyPick:function(b
){var a
=$(b
.currentTarget
).data("smileyCode");this.insertSmiley(a
,__REDACTOR_SMILIES
[a
],false)},insertSmiley:function(a
,b
,c
){if(c
){this.registerSmiley(a
,b
)}if(this.opts
.visual
){this.bufferSet();this.$editor
.focus();this.insertHtml(' <img src="'+b
+'" class="smiley" alt="'+a
+'" /> ');if(this.opts
.air
){this.$air
.fadeOut(100)}this.sync()}else{this.insertAtCaret(" "+a
+" ")}},registerSmiley:function(a
,b
){if(__REDACTOR_SMILIES
[a
]){return false}__REDACTOR_SMILIES
[a
]=b
;return true},toggle:function(a
){if(this.opts
.visual
){this._convertParagraphs();this.toggleCode(a
);this._convertFromHtml();this.buttonGet("html").children("i").removeClass("fa-square-o").addClass("fa-square")}else{this._convertToHtml();this.toggleVisual();this.buttonGet("html").children("i").removeClass("fa-square").addClass("fa-square-o")}},_convertParagraphs:function(){this.$editor
.find("p").replaceWith(function(){var a
=$(this).html();if(a
=="<br>"){return a
}return a
+"<br>"});this.sync()},_convertFromHtml:function(){var g
=this.$source
.val();g
=g
.replace(/<br
>\n<pre
>\n/g,"");g=g.replace(/<\/pre>\n<br>\n/g,"");g
=g
.replace(/<br>/g,"");g
=g
.replace(/ /gi," ");g
=g
.replace(/<a [^>]*?href=(["'])mailto:(.+?)\1.*?>([\s\S]+?)<\/a>/gi,"[email=$2]$3[/email]");g
=g
.replace(/<a
[^>]*?href
=(["'])(.+?)\1.*?>([\s\S]+?)<\/a>/gi,function(m,k,l,n){if(l==n){return"[url
]"+l+"[/url]"}return"[url='"+l+"']"+n+"[/url]"});g=g.replace(/<(?:b|strong)>/gi,"[b
]");g=g.replace(/<\/(?:b|strong)>/gi,"[/b]");g=g.replace(/<(?:i
|em
)>/gi,"[i]");g=g.replace(/<\/(?:i|em)>/gi,"[/i]");g
=g
.replace(/<u
>/gi,"[u]");g=g.replace(/<\/u>/gi,"[/u]");g
=g
.replace(/<(?:s(trike
)?|del
)>/gi,"[s]");g=g.replace(/<\/(?:s(trike)?|del)>/gi,"[/s]");g
=g
.replace(/<sub
>/gi,"[sub]");g=g.replace(/<\/sub>/gi,"[/sub]");g
=g
.replace(/<sup
>/gi,"[sup]");g=g.replace(/<\/sup>/gi,"[/sup]");g
=g
.replace(/<img
[^>]*?alt
="([^"]+?)" class="smiley
".*?>/gi,"$1");g=g.replace(/<img [^>]*?class="smiley
" alt="([^"]+?)".*?>/gi,"$1");g=g.replace(/<img
[^>]*?src
=(["'])([^"']+?)\1 style="float: (left|right)[^"]*".*?>/gi,"[img='$2',$3][/img]");g=g.replace(/<img [^>]*?src=(["'])([^"']+?)\1.*?>/gi,"[img
]$2[/img]");g=g.replace(/<span style
="color: ?rgb\((\d{1,3}), ?(\d{1,3}), ?(\d{1,3})\);?">([\s
\S
]*?)<\/span>/gi,function(l
,n
,m
,k
,p
){var o
=("0123456789ABCDEF".charAt((n
-n
%16)/16)+""+"0123456789ABCDEF".charAt(n%16))+""+("0123456789ABCDEF".charAt((m-m%16)/16)+""+"0123456789ABCDEF".charAt(m
%16))+""+("0123456789ABCDEF".charAt((k
-k
%16)/16)+""+"0123456789ABCDEF".charAt(k%16));return"[color=#"+o+"]"+p+"[/color]"});g=g.replace(/<span style="color
: ?(.*?);?">([\s\S]*?)<\/span>/gi,"[color
=$1]$2[/color]");g=g.replace(/<span style
="font-size: ?(\d+)pt;?">([\s
\S
]*?)<\/span>/gi,"[size=$1]$2[/size]");g
=g
.replace(/<span style
="font-family: ?(.*?);?">([\s
\S
]*?)<\/span>/gi,function(l
,k
,m
){return"[font='"+k
.replace(/'/g,"")+"']"+m+"[/font
]"});g=g.replace(/<div style="text
-align
: ?(left
|center
|right
|justify
);? ?">([\s\S]*?)<\/div>/gi,"[align
=$1]$2[/align]");g=g.replace(/<li
>/gi,"[*]");g=g.replace(/<\/li>/gi,"");g
=g
.replace(/<ul>/gi,"[list]");g
=g
.replace(/<(ol|ul style="list-style-type: decimal")>/gi,"[list=1]");g
=g
.replace(/<ul style="list-style-type: (none|circle|square|disc|decimal|lower-roman|upper-roman|decimal-leading-zero|lower-greek|lower-latin|upper-latin|armenian|georgian)">/gi,"[list=$1]");g
=g
.replace(/<\/(ul|ol)>/gi,"[/list]");g
=g
.replace(/<table
[^>]*>/gi,"[table]");g=g.replace(/<\/table>/gi,"[/table]");g
=g
.replace(/<tr
><\/tr>/gi,"");g
=g
.replace(/<tr>/gi,"[tr]");g
=g
.replace(/<\/tr>/gi,"[/tr]");g
=g
.replace(/<td style
="text-align: ?(left|center|right|justify);? ?">([\s
\S
]*?)<\/td>/gi,"[td][align=$1]$2[/align][/td]");g
=g
.replace(/<td>/gi,"[td]");g
=g
.replace(/<\/td>/gi,"[/td]");var b
={};g
.replace(/<span id
="selection-marker-\d+" class="redactor-selection-marker"><\/span>/,function(k
){var l
=k
.hashCode();b
[l
]=k
.replace(/\$/g,"$$$$");return"@@"+l
+"@@"});g
=g
.replace(/<[^>]+>/g,"");if($.getLength(b
)){for(var f
in b
){var i
=new RegExp("@@"+f
+"@@","g");data
=data
.replace(i
,b
[f
])}}g
=g
.replace(/</g,"<");g
=g
.replace(/>/g,">");g
=g
.replace(/&/g,"&");g
=g
.replace(/%28/g,"(");g
=g
.replace(/%29/g,")");g
=g
.replace(/%20/g," ");var c
={};for(var j
=0,h
=__REDACTOR_SOURCE_BBCODES
.length
;j
<h
;j
++){var e
=__REDACTOR_SOURCE_BBCODES
[j
];var d
=new RegExp("\\["+e
+"([\\S\\s]+?)\\[\\/"+e
+"\\]","gi");g
=g
.replace(d
,function(k
){var l
=k
.hashCode();c
[l
]=k
.replace(/\$/g,"$$$$");return"@@"+l+"@@"})}var a=g.split("\n");for(var j=0,h=a.length;j<h;j++){a[j]=a[j].replace(/^\s*/
,"")}g
=a
.join("\n");if($.getLength(c
)){for(var f
in c
){var i
=new RegExp("@@"+f
+"@@","g");g
=g
.replace(i
,c
[f
])}}this.$source
.val(g
)},_convertToHtml:function(){var e
=this.$source
.val();e
=this.removeZeroWidthSpace(e
);e
=e
.replace(/&/g,"&");e=e.replace(/</g,"<");e=e.replace(/>/g,">");var b={};for(var k=0,i=__REDACTOR_SOURCE_BBCODES.length;k<i;k++){var c=__REDACTOR_SOURCE_BBCODES[k];var d=new RegExp("\\["+c+"([\\S\\s]+?)\\[\\/"+c+"\\]","gi");e=e.replace(d,function(m){var n=m.hashCode();b[n]=m.replace(/\$/g,"$$$$");return"@@"+n+"@@"})}e=e.replace(/\[url
\]([^"]+?)\[\/url]/gi,'<a href="$1">$1</a>');e=e.replace(/\[url\='([^'"]+)'](.+?)\[\/url]/gi,'<a href
="$1">$2</a>');e=e.replace(/\[url
\=([^'"\]]+)](.+?)\[\/url]/gi,'<a href
="$1">$2</a>');e=e.replace(/\[email
\]([^"]+?)\[\/email]/gi,'<a href="mailto
:$1">$1</a>');e=e.replace(/\[email\=([^"\]]+)](.+?)\[\/email]/gi,'<a href="mailto:$1">$2</a>');e
=e
.replace(/\[b
\](.*?)\[\/b]/gi,"<b>$1</b>");e
=e
.replace(/\[i
\](.*?)\[\/i]/gi,"<i>$1</i>");e
=e
.replace(/\[u
\](.*?)\[\/u]/gi,"<u>$1</u>");e
=e
.replace(/\[s
\](.*?)\[\/s]/gi,"<strike>$1</strike>");e
=e
.replace(/\[sub
\](.*?)\[\/sub]/gi,"<sub>$1</sub>");e
=e
.replace(/\[sup
\](.*?)\[\/sup]/gi,"<sup>$1</sup>");e
=e
.replace(/\[img
\]([^"]+?)\[\/img\]/gi,'<img src="$1" />');e=e.replace(/\[img='?([^"]*?)'?,'?(left
|right
)'?\]\[\/img\]/gi,'<img src
="$1" style
="float: $2" />');e=e.replace(/\[img
='?([^"]*?)'?\]\[\/img\]/gi,'<img src="$1" />');e
=e
.replace(/\[size
=(\d
+)\](.*?)\[\/size\]/gi,'<span style="font-size: $1pt">$2</span>');e
=e
.replace(/\[color
=([#a
-z0
-9]*?)\](.*?)\[\/color\]/gi,'<span style="color: $1">$2</span>');e
=e
.replace(/\[font
='?([a-z,\- ]*?)'?\](.*?)\[\/font\]/gi,'<span style="font-family: $1">$2</span>');e
=e
.replace(/\[align
=(left
|right
|center
|justify
)\](.*?)\[\/align\]/gi,'<div style="text-align: $1">$2</div>');e
=e
.replace(/\[\*\](.*?)(?=\[\*\]|\[\/list\])/gi,"<li>$1</li>");e
=e
.replace(/\[list
\]/gi,"<ul>");e=e.replace(/\[list
=1\]/gi,'<ul style="list-style-type: decimal">');e=e.replace(/\[list
=a
\]/gi,'<ul style="list-style-type: lower-latin">');e=e.replace(/\[list
=(none
|circle
|square
|disc
|decimal|lower
-roman
|upper
-roman
|decimal-leading
-zero
|lower
-greek
|lower
-latin
|upper
-latin
|armenian
|georgian
)\]/gi,'<ul style="list-style-type: $1">');e=e.replace(/\[\/list]/gi,"</ul>");e
=e
.replace(/\[table
\]/gi,'<table border="1" cellspacing="1" cellpadding="1" style="width: 500px;">');e=e.replace(/\[\/table\]/gi,"</table>");e
=e
.replace(/\[tr
\]/gi,"<tr>");e=e.replace(/\[\/tr\]/gi,"</tr>");e
=e
.replace(/\[td
\]/gi,"<td>");e=e.replace(/\[\/td\]/gi,"</td>");for(var l
in __REDACTOR_SMILIES
){$smileyCode
=l
.replace(/</g,"<").replace(/>/g,">");var g=new RegExp("(\\s|>|^)"+WCF.String.escapeRegExp($smileyCode)+"(?=\\s|<|$)","gi");e=e.replace(g,'$1<img src="'+__REDACTOR_SMILIES[l]+'" class="smiley" alt="'+$smileyCode+'" />')}e=e.replace(/(javascript):/gi,"$1<span></span>:");e=e.replace(/(\r|\r\n)/,"\n");var a=e.split("\n");e="";for(var k=0,i=a.length;k<i;k++){var j=$.trim(a[k]);if(!j){j="<br>"}e+="<p>"+j+"</p>"}if($.getLength(b)){for(var f in b){var h=new RegExp("@@"+f+"@@","g");e=e.replace(h,b[f])}}e=e.replace(/\[code\][\S\s]*?\[\/code\]/,"<pre>$&</pre>");this.$source.val(e)}};
4 if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wbutton={_bbcodes:{},init:function(){this._bbcodes={};for(var g=0,d=__REDACTOR_BUTTONS.length;g<d;g++){this._addBBCodeButton(__REDACTOR_BUTTONS[g])}var a={html:"fa-square-o",bold:"fa-bold",italic:"fa-italic",underline:"fa-underline",deleted:"fa-strikethrough",subscript:"fa-subscript",superscript:"fa-superscript",orderedlist:"fa-list-ol",unorderedlist:"fa-list-ul",outdent:"fa-outdent",indent:"fa-indent",link:"fa-link",alignment:"fa-align-left",table:"fa-table"};var b=this.getOption("buttons");var f="";for(var g=0,d=b.length;g<d;g++){var c=b[g];if(c=="separator"){this.buttonGet(f).parent().addClass("separator");continue}var e=this.buttonGet(c);if(e.length){if(a[c]){this.buttonAwesome(c,a[c])}}else{this._addCoreButton(c,(a[c]?a[c]:null),f)}f=c}},_addCoreButton:function(b,a,c){var d=this.buttonBuild(b,{title:b,exec:b},false);$("<li />").append(d).insertAfter(this.buttonGet(c).parent());if(a!==null){this.buttonAwesome(b,a)}},_addBBCodeButton:function(b){var c="__wcf_"+b.name;var a=this.buttonAdd(c,b.label,this._insertBBCode);this._bbcodes[c]=b.name;if(b.icon.match(/^fa\-[a-z\-]+$/)){this.buttonAwesome(c,b.icon)}else{a.css("background-image","url("+__REDACTOR_ICON_PATH+b.icon+")")}},_insertBBCode:function(a,f,b,e){var d=this._bbcodes[a];var c=this.getSelectionHtml();this.insertHtml("["+d+"]"+c+"[/"+d+"]");this.sync()}};
6 if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wfontcolor={init:function(){this._createFontColorDropdown();this.buttonReplace("fontcolor","fontcolor",this.opts.curLang.fontcolor,$.proxy(function(d,b,a,c){this.dropdownShow(c,d)},this))},_createFontColorDropdown:function(){var d=$('<div
class="redactor_dropdown redactor_dropdown_box_fontcolor" style
="display: none;">');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"];for(var g=0,e=b.length;g<e;g++){var f=b[g];var c=$("<a />").data("color",f).css("background-color",f);d.append(c);c.click($.proxy(this._onColorPick,this))}var a=$("<a />").html(this.opts.curLang.none).data("color","none");a.click($.proxy(this._onColorPick,this));d.append(a);$(this.$toolbar).append(d)},_onColorPick:function(a){a.preventDefault();var b=$(a.currentTarget).data("color");if(b==="none"){this.inlineRemoveStyle("color")}else{this.inlineSetStyle("color",b)}}};
8 if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wfontfamily={init:function(){var b={Arial:"Arial, Helvetica, sans-serif","Comic Sans MS":"Comic Sans MS, cursive","Courier New":"Consolas, Courier New, Courier, monospace",Georgia:"Georgia, serif","Lucida Sans Unicode":"Lucida Sans Unicode, Lucida Grande, sans-serif",Tahoma:"Tahoma, Geneva, sans-serif","Times New Roman":"Times New Roman, Times, serif","Trebuchet MS":"Trebuchet MS, Helvetica, sans-serif",Verdana:"Verdana, Geneva, sans-serif"};var c={};var d=0;var a=this;$.each(b,function(f,e){c["fontFamily"+d]={title:f,className:"wfontfamily-"+d,callback:function(){a.inlineSetStyle("font-family",e)}};d++});c.separator={name:"separator"};c.remove={title:"remove font",callback:function(){this.inlineRemoveStyle("font-family")}};this.buttonReplace("fontfamily","wfontfamily","Change font family",false,c);this.buttonGet("wfontfamily").addClass("re-fontfamily");c=this.$toolbar.find(".redactor_dropdown_box_wfontfamily");d=0;$.each(b,function(f,e){c.children(".wfontfamily-"+d).removeClass("wfontfamily-"+d).css("font-family",e);d++})}};
10 if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wfontsize={init:function(){var d=[8,10,12,14,18,24,36];var e={};var a=this;for(var g=0,f=d.length;g<f;g++){var b=d[g];e["fontSize"+g]={title:b,className:"wfontsize-"+b,callback:function(){a.inlineSetStyle("font-size",b+"pt")}}}e.separator={name:"separator"};e.remove={title:"remove font size",callback:function(){this.inlineRemoveStyle("font-size")}};this.buttonReplace("fontsize","wfontsize","Change font size",false,e);this.buttonGet("wfontsize").addClass("re-fontsize");e=this.$toolbar.find(".redactor_dropdown_box_wfontsize");for(var g=0,f=d.length;g<f;g++){var b=d[g];var c=e.children("a.wfontsize-"+b).removeClass("wfontsize-"+d).css("font-size",b+"pt");if(b>18){c.css("line-height","1em")}}}};
12 if(!RedactorPlugins){var RedactorPlugins={}}RedactorPlugins.wmonkeypatch={init:function(){var d=this;var c=this.indentingStart;this.indentingStart=function(g){c.call(d,g);d.mpIndentingStart(g)};var b=this.buildEventKeydown;this.buildEventKeydown=function(g){if(d.callback("wkeydown",g)!==false){b.call(d,g)}};var f=this.toggleCode;this.toggleCode=function(h){var g=d.normalize(d.$editor.css("height"));f.call(d,h);d.$source.height(g)};var e=this.modalInit;this.modalInit=function(i,h,g,j){d.mpModalInit();e.call(d,i,h,g,j)};var a=this.imageResizeControls;this.imageResizeControls=function(g){return a.call(d,g).hide()};this.setOption("modalOpenedCallback",$.proxy(this.modalOpenedCallback,this));this.modalTemplatesInit()},cleanRemoveSpaces:function(b,a){return b},inlineRemoveStyle:function(a){this.selectionSave();this.inlineEachNodes(function(b){$(b).css(a,"");this.removeEmptyAttr(b,"style")});this.$editor.find("inline").each(function(c,d){if(!d.attributes.length){var b=$(d);b.replaceWith(b.html())}});this.selectionRestore();this.sync()},mpIndentingStart:function(a){if(a==="indent"){var b=this.getBlock();if(b.tagName==="DIV"&&b.getAttribute("data-tagblock")!==null){this.selectionSave();b=$(b);b.replaceWith(b.html());this.selectionRestore();this.sync()}}},modalTemplatesInit:function(){this.setOption("modal_image",'<fieldset
><dl
><dt
><label
for="redactor_file_link">'+this.opts.curLang.image_web_link+'</label></dt><dd
><input type
="text" name
="redactor_file_link" id
="redactor_file_link" class="long" /></dd></dl><dl><dt><label for="redactor_form_image_align">'+this.opts.curLang.image_position+'</label></dt><dd><select id="redactor_form_image_align"><option value="none">'+this.opts.curLang.none+'</option><option value
="left">'+this.opts.curLang.left+'</option><option value="right">'+this.opts.curLang.right+'</option></select></dd></dl></fieldset
><div
class="formSubmit"><button id
="redactor_upload_btn">'+this.opts.curLang.insert+"</button></div>");this.setOption("modal_image_edit",this.getOption("modal_image").replace('<button id
="redactor_upload_btn">'+this.opts.curLang.insert+"</button>",'<button id
="redactorSaveBtn">'+this.opts.curLang.save+"</button>"));this.setOption("modal_link",'<fieldset
><dl
><dt
><label
for="redactor_link_url">URL
</label></dt><dd
><input type
="text" id
="redactor_link_url" class="long" /></dd></dl><dl><dt><label for="redactor_link_url_text">'+this.opts.curLang.text+'</label></dt><dd><input type="text" id="redactor_link_url_text" class="long" /></dd></dl></fieldset><div class="formSubmit"><button id="redactor_insert_link_btn">'+this.opts.curLang.insert+"</button
></div>");this.setOption("modal_table",'<fieldset><dl><dt><label for="redactor_table_rows">'+this.opts.curLang.rows+'</label></dt><dd><input type="number" size="5" value="2" min="0" id="redactor_table_rows" class="tiny" /></dd></dl><dl
><dt
><label
for="redactor_table_columns">'+this.opts.curLang.columns+'</label></dt><dd
><input type
="number" size
="5" value
="3" min
="0" id
="redactor_table_columns" class="tiny" /></dd></dl></fieldset
><div
class="formSubmit"><button id
="redactor_insert_table_btn">'+this.opts.curLang.insert+"</button></div>");$.extend(this.opts,{modal_file:String()+'<section id
="redactor-modal-file-insert"><div id
="redactor-progress" class="redactor-progress-inline" style
="display: none;"><span
></span></div><form id
="redactorUploadFileForm" method
="post" action
="" enctype
="multipart/form-data"><label
>'+this.opts.curLang.filename+'</label
><input type
="text" id
="redactor_filename" class="redactor_input" /><div style="margin-top: 7px;"><input type="file" id="redactor_file" name="'+this.opts.fileUploadParam+'" /></div></form
></section>',modal_video:String()+'<section id="redactor-modal-video-insert"><form id="redactorInsertVideoForm"><label>'+this.opts.curLang.video_html_code+'</label><textarea id
="redactor_insert_video_area" style
="width: 99%; height: 160px;"></textarea></form
></section><footer><button class="redactor_modal_btn redactor_btn_modal_close">'+this.opts.curLang.cancel+'</button
><button id
="redactor_insert_video_btn" class="redactor_modal_btn redactor_modal_action_btn">'+this.opts.curLang.insert+"</button></footer>"})},mpModalInit:function(){if(!$("#redactor_modal_overlay").length){this.$overlay=$('<div id
="redactor_modal_overlay" class="dialogOverlay" />').css({height:"100%",zIndex:50000}).hide().appendTo(document.body)}if(!$("#redactor_modal").length){this.$modal=$('<div id="redactor_modal" class="dialogContainer" />').css({display:"none",zIndex:50001}).appendTo(document.body);$('<header
class="dialogTitlebar"><span id
="redactor_modal_header" class="dialogTitle" /><a id="redactor_modal_close" class="dialogCloseButton" /></header>').appendTo(this.$modal);$('<div class="dialogContent"><div id="redactor_modal_inner" /></div>').appendTo(this.$modal)}this.$modal.children(".dialogContent").removeClass("dialogForm")},modalOpenedCallback:function(){var a=0;if(this.$modal.find(".formSubmit").length){a=this.$modal.find(".formSubmit").outerHeight();this.$modal.children(".dialogContent").addClass("dialogForm").css({marginBottom:a+"px"})}else{this.$modal.children(".dialogContent").removeClass("dialogForm").css({marginBottom:"0px"})}var b=this.$modal.getDimensions("outer");this.$modal.css({marginLeft:-1*Math.round(b.width/2)+"px",marginTop
:-1*Math
.round(b
.height
/2)+"px"})},inlineEachNodes:function(e
){var b
=this.getRange(),c
=this.getElement(),a
=this.getNodes(),d
;if(b
.collapsed
||b
.startContainer
===b
.endContainer
&&c
){a
=$(c
);d
=true}$.each(a
,$.proxy(function(g
,j
){if(!d
&&j
.tagName
!=="INLINE"){var f
=this.getSelectionText();var k
=$(j
).parent().text();var h
=this.removeZeroWidthSpace(f
)==this.removeZeroWidthSpace(k
);if(h
&&j
.parentNode
.tagName
==="INLINE"&&!$(j
.parentNode
).hasClass("redactor_editor")){j
=j
.parentNode
}else{return}}e
.call(this,j
)},this))}};
14 if(!RedactorPlugins
){var RedactorPlugins
={}}RedactorPlugins
.wupload
={_attachmentsContainer
:null,init:function(){var a
=this;this.buttonReplace("upload","upload","Upload",function(){a
._attachmentsContainer
.toggle()});this.buttonAwesome("upload","fa-upload");this._initAttachments()},_initAttachments:function(){this._attachmentsContainer
=$('<div class="redactorAttachmentContainer" />').hide().appendTo(this.$box
);var f
=$('<ul class="formAttachmentList clearfix" />').hide().appendTo(this._attachmentsContainer
);$('<dl class="wide"><dt></dt><dd><div data-max-size="{@$attachmentHandler->getMaxSize()}"></div><small>'+WCF
.String
.unescapeHTML(WCF
.Language
.get("wcf.attachment.upload.limits"))+"</small></dd></dl>").appendTo(this._attachmentsContainer
);var a
=this.getOption("wattachment");if(a
.attachments
.length
){for(var g
=0;g
<a
.attachments
.length
;g
++){var e
=a
.attachments
[g
];var d
=$('<li class="box48" />');if(e
.tinyThumbnailUrl
){$('<img src="'+e
.tinyThumbnailUrl
+'" alt="" class="attachmentTinyThumbnail" />').appendTo(d
)}else{$('<span class="icon icon48 icon-paper-clip" />').appendTo(d
)}var b
=$("<div />").appendTo(d
);$('<div><p><a href="'+e
.url
+'"'+(e
.isImage
?' title="'+e
.filename
+'" class="jsImageViewer"':"")+">"+e
.filename
+"</a></p></div>").appendTo(b
);var c
=$("<ul />").appendTo(b
);$('<li><span class="icon icon16 icon-remove pointer jsTooltip jsDeleteButton " title="'+WCF
.Language
.get("wcf.global.button.delete")+'" data-object-id="'+e
.attachmentID
+'" data-confirm-message="'+WCF
.Language
.get("wcf.attachment.delete.sure")+'"></span></li>').appendTo(c
);$('<li><span class="icon icon16 icon-paste pointer jsTooltip jsButtonInsertAttachment" title="'+WCF
.Language
.get("wcf.attachment.insert")+'" data-object-id="'+e
.attachmentID
+'"></span></li>').appendTo(c
);d
.appendTo(f
);this._attachmentsContainer
.show();f
.show()}}new WCF
.Attachment
.Upload(this._attachmentsContainer
.find("> dl > dd > div"),this._attachmentsContainer
.children("ul"),a
.objectType
,a
.objectID
,a
.tmpHash
,a
.parentObjectID
,a
.maxCount
,this.$source
.wcfIdentify());new WCF
.Action
.Delete("wcf\\data\\attachment\\AttachmentAction",".formAttachmentList > li")}};
16 if(!RedactorPlugins
){var RedactorPlugins
={}}RedactorPlugins
.wutil
={_autosaveWorker
:null,init:function(){this.$source
.parents("form").submit($.proxy(this.submit
,this));if(this.getOption("wautosave").active
){this.autosaveEnable();if(this.getOption("wautosave").saveOnInit
||this.$source
.data("saveOnInit")){this._saveTextToStorage()}else{this.autosaveRestore()}}this.setOption("autosave",false);var b
=this.destroy
;var a
=this;this.destroy=function(){a
.autosaveDisable();b
.call(a
)}},insertAtCaret:function(b
){if(this.opts
.visual
){console
.debug("insertAtCaret() failed: Editor is in WYSIWYG-mode.");return false}this.$source
.focus();var c
=this.$source
.getCaret();if(c
==-1){console
.debug("insertAtCaret() failed: Source is not input[type=text], input[type=password] or textarea.")}var a
=this.$source
.val();a
=a
.substr(0,c
)+b
+a
.substr(c
);this.$source
.val(a
);return true},insertDynamic:function(a
,b
){if(this.inWysiwygMode()){this.insertHtml(a
)}else{if(b
===undefined||b
===null){b
=a
}this.insertAtCaret(b
)}},setOption:function(a
,b
){this.opts
[a
]=b
},getOption:function(a
){if(this.opts
[a
]){return this.opts
[a
]}return null},inPlainMode:function(){return !this.opts
.visual
},inWysiwygMode:function(){return(this.opts
.visual
)},replaceRangesWith:function(a
){getSelection().removeAllRanges();getSelection().addRange(a
)},getText:function(){if(this.inWysiwygMode()){this.toggle();var a
=this.$source
.val();this.toggle();return a
}return this.$source
.val()},submit:function(){if(this.inWysiwygMode()){this.toggle();var a
=this.$source
.val();this.toggle();this.$source
.val(a
)}this.autosavePurge()},reset:function(){if(this.inWysiwygMode()){this.$editor
.empty();this.sync()}else{this.$source
.val("")}},autosaveEnable:function(b
){if(!this.getOption("wautosave").active
){this.setOption("wautosave",{active
:true,key
:b
})}if(this._autosaveWorker
===null){var a
=this;this._autosaveWorker
=new WCF
.PeriodicalExecuter($.proxy(this._saveTextToStorage
,this),60*1000)}return true},_saveTextToStorage:function(){localStorage
.setItem(this.getOption("wautosave").key
,this.getText())},autosaveDisable:function(){if(!this.getOption("wautosave").active
){return false}this._autosaveWorker
.stop();this._autosaveWorker
=null;this.setOption("wautosave",{active
:false,key
:""});return true},autosavePurge:function(){localStorage
.removeItem(this.getOption("wautosave").key
)},autosaveRestore:function(){var a
=this.getOption("wautosave");var b
=localStorage
.getItem(a
.key
);if(b
!==null){if(this.inWysiwygMode()){this.toggle(false);this.$source
.val(b
);this.toggle(false);this.focusEnd()}else{this.$source
.val(b
)}return true}return false},buttonReplace:function(d
,b
,e
,g
,f
){var a
=this.buttonGet(d
);var c
=this.buttonAddAfter(d
,b
,e
,g
,f
);if(a
.parent().hasClass("separator")){c
.parent().addClass("separator")}a
.parent().remove();return c
},removeZeroWidthSpace:function(a
){var b
="";for(var e
=0,d
=a
.length
;e
<d
;e
++){var c
=a
.charCodeAt(e
).toString(16);if(c
!="200b"){b
+=a
[e
]}}return b
},};