var MMO=window.MMO||{};MMO.Hide=MMO.Hide||{};
!function(c,k,h,l){MMO.Hide.editorConfig={dialog:[]};MMO.Hide.EditorButtons={init:function(){c.parseJSON(c(".js-mhHideEditorConfig").first().html())&&(MMO.Hide.editorConfig.dialog=c.parseJSON(c(".js-mhHideEditorConfig").first().html())||[]);Array.isArray(MMO.Hide.editorConfig.dialog)&&MMO.Hide.editorConfig.dialog.forEach(function(a){MMO.Hide[a]=MMO.Hide[a]||{};MMO.Hide[a].editorButton||(MMO.Hide[a].editorButton={init:function(){MMO.Hide[a].EditorDialog=XF.extend(XF.EditorDialog,{cache:!1,$container:null,
_beforeShow:function(b){this.ed.$el.blur()},_init:function(b){b.$overlay.find("form").submit(XF.proxy(this,"submit"))},_afterShow:function(b){},submit:function(b){b.preventDefault();b=c("#editor_hide_count");var d=c("#editor_hide_id_count input:checked"),e=c("#editor_hide_text"),g=!1;if(d){var f=[];d.length&&(g=!0,d.each(function(m){f.push(c(this).val())}));d=f.length?""+f.join(","):""}this.ed.selection.restore();MMO.Hide.EditorButtons.insertHide(this.ed,a.toString().toUpperCase(),g?d:b.val(),XF.unparseBbCode(e.val()));
this.overlay.hide();e.val("");b.val("")}})},callback:function(){XF.EditorHelpers.loadDialog(this,a)}});MMO.Hide[a].editorButton.init();XF.EditorHelpers.dialogs[a]=new MMO.Hide[a].EditorDialog(a);c.FE.COMMANDS["xfCustom_"+a]&&(c.FE.COMMANDS["xfCustom_"+a].callback=MMO.Hide[a].editorButton.callback)})},insertHide:function(a,b,d,e){e=e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/\t/g," ").replace(/\n /g,"\n ").replace(/ /g," ").replace(/ /g,
" ").replace(/\n/g,"</p><p>");b="["+b+(d?"="+d:"")+"]"+e+"[/"+b+"]";b.match(/\n/)&&(b=("<p>"+b+"</p>").replace(/<p><\/p>/g,"<p><br></p>"));a.html.insert(b)}};MMO.Hide.Reaction=XF.extend(XF.Reaction,{__backup:{actionComplete:"__mhHide_actionComplete"},actionComplete:function(a){this.__mhHide_actionComplete(a);"< .js-post | .js-reactionsList"===this.options.reactionList&&this.$target.closest(".message").find(".message-body").length&&setTimeout(function(){this.reloadPost()}.bind(this),100)},reloadPost:function(){XF.ajax("GET",
this.$target.attr("href").replace("react","show"),{},XF.proxy(this,"postUpdate"),{skipDefaultSuccessError:!0})},postUpdate:function(a){a.errors||a.exception||XF.setupHtmlInsert(a.html,function(b,d){var e=b.find(".message-body");this.$target.closest(".message-cell--main").find(".message-body").replaceWith(e);XF.activate(e);XF.layoutChange()}.bind(this))}});XF.SelectToQuote&&(MMO.Hide.SelectToQuote=XF.extend(XF.SelectToQuote,{__backup:{getValidSelectionContainer:"__mhHide_getValidSelectionContainer"},
getValidSelectionContainer:function(a){if(a.isCollapsed||!a.rangeCount)return null;var b=a.getRangeAt(0);return c(b.startContainer).closest(".bbCodeBlock--hide, .js-noSelectToQuote").length||c(b.endContainer).closest(".bbCodeBlock--hide, .js-noSelectToQuote").length?null:this.__mhHide_getValidSelectionContainer(a)}}),XF.Element.register("select-to-quote","MMO.Hide.SelectToQuote"));c(h).on("editor:first-start",MMO.Hide.EditorButtons.init);XF.Element.register("reaction","MMO.Hide.Reaction")}(jQuery,
window,document);