Get the Best IPTV Service
((q,h)=>{XF.AttributionClick=XF.Event.newHandler({eventType:"click",eventNameSpace:"XFAttributionClick",options:{contentSelector:null},init(){},click(a){const b=this.options.contentSelector,c=h.querySelector(b);c&&(a.preventDefault(),XF.smoothScroll(c,b,XF.config.speed.normal))}});XF.LikeClick=XF.Event.newHandler({eventType:"click",eventNameSpace:"XFLikeClick",options:{likeList:null,container:null},processing:!1,container:null,init(){this.options.container&&(this.container=XF.findRelativeIf(this.options.container, this.target))},click(a){a.preventDefault();this.processing||(this.processing=!0,a=this.target.getAttribute("href"),XF.ajax("POST",a,{},this.handleAjax.bind(this),{skipDefaultSuccess:!0}).finally(()=>{setTimeout(()=>{this.processing=!1},250)}))},handleAjax(a){const b=this.target;XF.trigger(b,XF.customEvent(`xf-${this.eventType}:before-handleAjax.${this.eventNameSpace}`,{data:a}));a.addClass&&b.classList.add(a.addClass);a.removeClass&&b.classList.remove(a.removeClass);if(a.text){let d=b.querySelector(".label"); d||(d=b);d.textContent=a.text}XF.hasOwn(a,"isLiked")&&(b.classList.add("is-liked",a.isLiked),this.container&&this.container.classList.toggle("is-liked",a.isLiked));const c=this.options.likeList?XF.findRelativeIf(this.options.likeList,b):null;"undefined"!==typeof a.html&&c&&(a.html.content?XF.setupHtmlInsert(a.html,(d,e)=>{c.innerHTML="";c.append(...d.childNodes);XF.Transition.addClassTransitioned(c,"is-active")}):XF.Transition.removeClassTransitioned(c,"is-active",()=>{for(;c.firstChild;)c.removeChild(c.firstChild)})); XF.trigger(b,XF.customEvent(`xf-${this.eventType}:after-handleAjax.${this.eventNameSpace}`,{data:a}))}});XF.handleSwitchResponse=(a,b,c)=>{let d=!1;if(b.switchKey){var e=a.dataset[XF.toCamelCase("sk-"+b.switchKey)];if(e){let f,g;for(;f=e.match(/(\s*,)?\s*(addClass|removeClass|titleAttr):([^,]+)(,|$)/);)if(e=e.substring(f[0].length),g=f[3].trim(),g.length)switch(f[2]){case "addClass":a.classList.add(g);break;case "removeClass":a.classList.remove(g);break;case "titleAttr":d="sync"==g}e=e.trim();e.length&& !b.text&&(b.text=e)}}b.addClass&&a.classList.add(b.addClass);b.removeClass&&a.classList.remove(b.removeClass);b.text&&((e=a.querySelector(a.dataset.label))||(e=a),e.textContent=b.text,d&&(a.setAttribute("title",b.text),a.removeAttribute("data-original-title"),XF.trigger(a,"tooltip:refresh")));if(b.message){const f=c&&b.redirect;XF.flashMessage(b.message,f?1E3:3E3,()=>{f&&XF.redirect(b.redirect)})}};XF.SwitchClick=XF.Event.newHandler({eventType:"click",eventNameSpace:"XFSwitchClick",options:{redirect:!1, overlayOnHtml:!0,label:".js-label"},processing:!1,overlay:null,init(){this.target.dataset.label=this.options.label},click(a){a.preventDefault();this.processing||(this.processing=!0,a=this.target.getAttribute("href"),XF.ajax("POST",a,{},this.handleAjax.bind(this),{skipDefaultSuccess:!0}).finally(()=>{setTimeout(()=>{this.processing=!1},250)}))},handleAjax(a){const b=this.target,c=XF.customEvent("switchclick:complete",{data:a});XF.trigger(b,c);c.defaultPrevented||(a.html&&a.html.content&&this.options.overlayOnHtml? XF.setupHtmlInsert(a.html,(d,e)=>{this.overlay&&this.overlay.hide();d=XF.getOverlayHtml({html:d,title:e.h1||e.title});XF.on(d.querySelector("form"),"ajax-submit:response",this.handleOverlayResponse.bind(this));this.overlay=XF.showOverlay(d)}):(this.applyResponseActions(a),this.overlay&&(this.overlay.hide(),this.overlay=null)))},handleOverlayResponse(a){const b=a.data;"ok"==b.status&&(a.preventDefault(),this.handleAjax(b))},applyResponseActions(a){XF.handleSwitchResponse(this.target,a,this.options.redirect)}}); XF.SwitchOverlayClick=XF.Event.newHandler({eventType:"click",eventNameSpace:"XFSwitchOverlayClick",options:{redirect:!1},overlay:null,init(){},click(a){a.preventDefault();this.overlay?this.overlay.show():(a=this.target.getAttribute("href"),XF.loadOverlay(a,{cache:!1,init:this.setupOverlay.bind(this)}))},setupOverlay(a){this.overlay=a;const b=a.getOverlay().querySelector("form");XF.on(b,"ajax-submit:response",this.handleOverlaySubmit.bind(this));a.on("overlay:hidden",()=>{this.overlay=null});return a}, handleOverlaySubmit(a){const {data:b}=a;"ok"==b.status&&(a.preventDefault(),(a=this.overlay)&&a.hide(),XF.handleSwitchResponse(this.target,b,this.options.redirect))}});XF.AlertsList=XF.Element.newHandler({options:{},processing:!1,init(){const a=XF.findRelativeIf("< .menu-content | .js-alertsMarkRead",this.target);if(a)XF.on(a,"click",this.markAllReadClick.bind(this));this.target.querySelectorAll(".js-alertToggle").forEach(b=>{XF.on(b,"click",this.markReadClick.bind(this))})},_makeAjaxRequest(a,b, c){this.processing||(this.processing=!0,XF.ajax("POST",a,c||{},b,{skipDefaultSuccess:!0}).finally(()=>{setTimeout(()=>{this.processing=!1},250)}))},markAllReadClick(a){a.preventDefault();this._makeAjaxRequest(a.target.getAttribute("href"),this.handleMarkAllReadAjax.bind(this))},markReadClick(a){a.preventDefault();a=a.currentTarget;var b=a.closest(".js-alert");const c=b.classList.contains("is-unread");b=b.dataset.alertId;this._makeAjaxRequest(a.getAttribute("href"),this.handleMarkReadAjax.bind(this, b),{unread:c?0:1})},handleMarkAllReadAjax(a){a.message&&XF.flashMessage(a.message,3E3);this.target.querySelectorAll(".js-alert").forEach(b=>{this.toggleReadStatus(b,!1)})},handleMarkReadAjax(a,b){b.message&&XF.flashMessage(b.message,3E3);a=this.target.querySelector('.js-alert[data-alert-id="'+a+'"]');this.toggleReadStatus(a,!0)},toggleReadStatus(a,b){const c=a.classList.contains("is-unread"),d=a.querySelector(".js-alertToggle"),e=XF.Element.getHandler(d,"tooltip");let f=d.getAttribute("data-content"); c?(a.classList.remove("is-unread"),f=d.getAttribute("data-unread")):b&&(a.classList.add("is-unread"),f=d.getAttribute("data-read"));e.tooltip.setContent(f)}});XF.Draft=XF.Element.newHandler({options:{draftAutosave:60,draftName:"message",draftUrl:null,saveButton:".js-saveDraft",deleteButton:".js-deleteDraft",actionIndicator:".draftStatus"},lastActionContent:null,autoSaveRunning:!1,init(){if(this.options.draftUrl){XF.onDelegated(this.target,this.options.saveButton,"click",b=>{b.preventDefault();this.triggerSave()}); XF.onDelegated(this.target,this.options.deleteButton,"click",b=>{b.preventDefault();this.triggerDelete()});var a=this.syncState.bind(this);this.syncState();setTimeout(a,500);XF.on(this.target,"draft:sync",a);setInterval(this.triggerSave.bind(this),1E3*this.options.draftAutosave)}else console.error("No draft URL specified.")},triggerSave(){if(!XF.isRedirecting){var a=XF.customEvent("draft:beforesave");XF.trigger(this.target,a);a.defaultPrevented||this._executeDraftAction(this.getSaveData())}},triggerDelete(){this.lastActionContent= (new URLSearchParams(this.getSaveData())).toString();this._sendDraftAction({delete:1})},_executeDraftAction(a){const b=(new URLSearchParams(a)).toString();if(b!=this.lastActionContent){if(this.autoSaveRunning)return!1;this.lastActionContent=b;this._sendDraftAction(a)}},_sendDraftAction(a){this.autoSaveRunning=!0;return XF.ajax("post",this.options.draftUrl,a,this.completeAction.bind(this),{skipDefault:!0,skipError:!0,global:!1}).finally(()=>{this.autoSaveRunning=!1})},completeAction(a){const b=XF.customEvent("draft:complete", {data:a});XF.trigger(this.target,b);if(!b.defaultPrevented&&!1!==a.draft.saved){var c=this.target.querySelector(this.options.actionIndicator);c.classList.remove("is-active");c.textContent=a.complete();c.classList.add("is-active");setTimeout(()=>c.classList.remove("is-active"),2E3)}},syncState(){this.lastActionContent=(new URLSearchParams(this.getSaveData())).toString()},getSaveData(){var a=this.target;XF.trigger(a,"draft:beforesync");a=new FormData(a);a.delete("_xfToken");return a}});XF.DraftTrigger= XF.Element.newHandler({options:{delay:2500},draftHandler:null,timer:null,init(){if(XF.isElementWithinDraftForm(this.target)){var a=this.target.closest("form");if(this.draftHandler=XF.Element.getHandler(a,"draft"))XF.on(this.target,"keyup",this.keyup.bind(this))}},keyup(a){clearTimeout(this.timer);this.timer=setTimeout(()=>this.draftHandler.triggerSave(),this.options.delay)}});XF.FocusTrigger=XF.Element.newHandler({options:{display:null,activeClass:"is-active"},init(){if(this.target.hasAttribute("autofocus"))this.trigger(); else XF.on(this.target,"focusin",this.trigger.bind(this),{once:!0})},trigger(){const a=this.options.display;if(a){const b=XF.findRelativeIf(a,this.target);b&&XF.Transition.addClassTransitioned(b,this.options.activeClass,()=>b.scrollIntoView())}}});XF.PollBlock=XF.Element.newHandler({options:{},init(){XF.on(this.target,"ajax-submit:response",this.afterSubmit.bind(this))},afterSubmit(a){const {data:b}=a;b.errors||b.exception||(a.preventDefault(),b.redirect&&XF.redirect(b.redirect),XF.setupHtmlInsert(b.html, (c,d,e)=>{XF.display(c,"none");this.target.insertAdjacentElement("afterend",c);XF.Animate.fadeUp(this.target,{speed:XF.config.speed.normal,complete:()=>{this.target.remove();XF.Animate.fadeDown(c)}});e(!1,c)}))}});XF.Preview=XF.Element.newHandler({options:{previewUrl:null,previewButton:"button.js-previewButton"},previewing:null,init(){const a=this.target,b=XF.findRelativeIf(this.options.previewButton,a);if(this.options.previewUrl)if(b)XF.on(b,"click",this.preview.bind(this));else console.warn("Preview form has no preview button: %o", a);else console.warn("Preview form has no data-preview-url: %o",a)},preview(a){a.preventDefault();if(this.previewing)return!1;this.previewing=!0;(a=XF.Element.getHandler(this.target,"draft"))&&a.triggerSave();XF.ajax("post",this.options.previewUrl,this.target,b=>{b.html&&XF.setupHtmlInsert(b.html,(c,d,e)=>{XF.overlayMessage(d.title,c)})}).finally(()=>{this.previewing=!1})}});XF.ShareInput=XF.Element.newHandler({options:{button:".js-shareButton",input:".js-shareInput",successText:""},button:null,input:null, init(){this.button=this.target.querySelector(this.options.button);this.input=this.target.querySelector(this.options.input);navigator.clipboard&&this.button.classList.remove("is-hidden");XF.on(this.button,"click",this.buttonClick.bind(this));XF.on(this.input,"click",this.inputClick.bind(this))},buttonClick(a){navigator.clipboard.writeText(this.input.value).then(()=>{XF.flashMessage(this.options.successText?this.options.successText:XF.phrase("text_copied_to_clipboard"),3E3)})},inputClick(a){this.input.select()}}); XF.CopyToClipboard=XF.Element.newHandler({options:{copyText:"",copyTarget:"",success:""},copyText:null,init(){navigator.clipboard&&this.target.classList.remove("is-hidden");if(this.options.copyText)this.copyText=this.options.copyText;else if(this.options.copyTarget){const a=h.querySelector(this.options.copyTarget);a.matches('input[type="text"], textarea')?this.copyText=a.value:this.copyText=a.textContent}if(this.copyText)XF.on(this.target,"click",this.click.bind(this));else console.error("No text to copy to clipboard")}, click(){navigator.clipboard.writeText(this.copyText).then(()=>{if(this.options.success)XF.flashMessage(this.options.success,3E3);else{let a=XF.phrase("text_copied_to_clipboard");this.copyText.match(/^[a-z0-9-]+:\/\/[^\s"<>{}`]+$/i)&&(a=XF.phrase("link_copied_to_clipboard"));XF.flashMessage(a,3E3)}})}});XF.PushToggle=XF.Element.newHandler({options:{},isSubscribed:!1,cancellingSub:null,init(){XF.Push.isSupported()?"denied"===Notification.permission?(this.updateButton(XF.phrase("push_blocked_label"), !1),console.error("Notification.permission === denied")):this.registerWorker():(this.updateButton(XF.phrase("push_not_supported_label"),!1),console.error("XF.Push.isSupported() returned false"))},registerWorker(){XF.Push.registerWorker(()=>{XF.on(this.target,"click",this.buttonClick.bind(this));XF.on(h,"push:init-subscribed",()=>this.updateButton(XF.phrase("push_disable_label"),!0));XF.on(h,"push:init-unsubscribed",()=>this.updateButton(XF.phrase("push_enable_label"),!0))},()=>{this.updateButton(XF.phrase("push_not_supported_label"), !1);console.error("navigator.serviceWorker.register threw an error.")})},buttonClick(a){XF.Push.handleToggleAction(()=>{this.updateButton(XF.phrase("push_enable_label"),!0);XF.Cookie.set("push_notice_dismiss","1");XF.config.userId&&XF.Push.removeUserFromPushHistory()},!1,()=>this.updateButton(XF.phrase("push_disable_label"),!0),()=>this.updateButton(XF.phrase("push_not_supported_label"),!1))},updateButton(a,b){this.target.querySelector(".button-text").textContent=a;b?this.target.classList.remove("is-disabled"): this.target.classList.add("is-disabled")}});XF.PushCta=XF.Element.newHandler({options:{},init(){XF.config.skipPushNotificationCta||XF.Push.isSupported()&&"denied"!==Notification.permission&&this.registerWorker()},registerWorker(){XF.Push.registerWorker(()=>{XF.on(h,"push:init-unsubscribed",()=>{if(XF.Push.hasUserPreviouslySubscribed())try{XF.Push.handleSubscribeAction(!0)}catch(b){XF.Push.removeUserFromPushHistory()}else if(!this.getDismissCookie()){var a=this.target.closest(".js-enablePushContainer"); XF.Animate.fadeDown(a,{speed:XF.config.speed.slow,complete:this.initLinks.bind(this)})}})})},initLinks(){const a=this.target;Array.from(a.querySelectorAll(".js-enablePushLink")).forEach(b=>{XF.on(b,"click",this.linkClick.bind(this))});Array.from(a.parentElement.querySelectorAll(".js-enablePushDismiss")).forEach(b=>{XF.on(b,"click",this.dismissClick.bind(this))})},linkClick(a){a.preventDefault();this.hidePushContainer();this.setDismissCookie(!0,432E5);XF.Push.handleSubscribeAction(!1)},dismissClick(a){a.preventDefault(); XF.display(a.currentTarget,"none");a=this.target.closest(".js-enablePushContainer");a.classList.add("notice--accent");a.classList.remove("notice--primary");a=this.target.querySelector(".js-initialMessage");XF.display(a,"none");a=this.target.querySelector(".js-dismissMessage");XF.display(a);const b=a.querySelector(".js-dismissTemp");XF.on(b,"click",this.dismissTemp.bind(this));a=a.querySelector(".js-dismissPerm");XF.on(a,"click",this.dismissPerm.bind(this))},dismissTemp(a){a.preventDefault();this.hidePushContainer(); this.setDismissCookie(!1)},dismissPerm(a){a.preventDefault();this.hidePushContainer();this.setDismissCookie(!0)},setDismissCookie(a,b){a?(b||(b=31536E7),XF.Cookie.set("push_notice_dismiss","1",new Date(Date.now()+b))):XF.Cookie.set("push_notice_dismiss","1")},getDismissCookie(){return XF.Cookie.get("push_notice_dismiss")},hidePushContainer(){const a=this.target.closest(".js-enablePushContainer");XF.Animate.fadeUp(a,{speed:XF.config.speed.fast})}});XF.Reaction=XF.Element.newHandler({options:{delay:200, reactionList:null},tooltipHtml:null,trigger:null,tooltip:null,href:null,loading:!1,init(){if(this.target.matches("a")&&this.target.getAttribute("href")){this.href=this.target.getAttribute("href");var a=h.querySelector("#xfReactTooltipTemplate");a&&(this.tooltipHtml=XF.createElementFromString(a.innerHTML.trim()),this.tooltip=new XF.TooltipElement(this.getContent.bind(this),{extraClass:"tooltip--reaction",html:!0}),this.trigger=new XF.TooltipTrigger(this.target,this.tooltip,{maintain:!0,delayIn:this.options.delay, trigger:"hover focus touchhold",onShow:this.onShow.bind(this),onHide:this.onHide.bind(this)}),this.trigger.init());XF.on(this.target,"click",this.actionClick.bind(this))}},getContent(){let a=this.href;a=a.replace(/(\?|&)reaction_id=[^&]*(&|$)/,"$1reaction_id=");Array.from(this.tooltipHtml.querySelectorAll(".reaction")).forEach(b=>{const c=b.dataset.reactionId;b.href=c?a+parseInt(c,10):!1});Array.from(this.tooltipHtml.querySelectorAll('[data-xf-init~="tooltip"]')).forEach(b=>{b.dataset.delayIn=50; b.dataset.delayOut=50});XF.onDelegated(this.tooltipHtml,"click",".reaction",this.actionClick.bind(this));return this.tooltipHtml},onShow(){const a=XF.Reaction.activeTooltip;a&&a!==this&&a.hide();XF.Reaction.activeTooltip=this},onHide(){XF.Reaction.activeTooltip===this&&(XF.Reaction.activeTooltip=null);XF.DataStore.remove(this.target,"tooltip:taphold")},show(){this.trigger&&this.trigger.show()},hide(){this.trigger&&this.trigger.hide()},actionClick(a){a.preventDefault();XF.DataStore.get(this.target, "tooltip:taphold")&&this.target===a.currentTarget?XF.DataStore.remove(this.target,"tooltip:taphold"):this.loading||(this.loading=!0,a=a.target.closest(".reaction"),XF.ajax("post",a.getAttribute("href"),this.actionComplete.bind(this)).finally(()=>{setTimeout(()=>{this.loading=!1},250)}))},actionComplete(a){if(a.html){var b=this.target,c=b.getAttribute("data-reaction-id"),d=a.reactionId,e=a.linkReactionId;XF.setupHtmlInsert(a.html,(g,k,l)=>{this.hide();k=g.querySelector(".js-reaction");l=g.querySelector(".js-reactionText"); const p=b.querySelector(".js-reaction"),m=b.querySelector(".js-reactionText");var n=b.getAttribute("href");e&&(n=n.replace(/(\?|&)reaction_id=\d+(?=&|$)/,"$1reaction_id="+e),b.setAttribute("href",n));d?(b.classList.add("has-reaction"),b.classList.remove("reaction--imageHidden"),c||(c=1),b.classList.remove("reaction--"+c),b.classList.add("reaction--"+d),b.setAttribute("data-reaction-id",d)):(b.classList.remove("has-reaction"),b.classList.add("reaction--imageHidden"),c&&(b.classList.remove("reaction--"+ c),b.classList.add("reaction--"+g.getAttribute("data-reaction-id")),b.setAttribute("data-reaction-id",0)));p.parentNode.replaceChild(k,p);m&&l&&m.parentNode.replaceChild(l,m)});var f=this.options.reactionList?XF.findRelativeIf(this.options.reactionList,b):null;"undefined"!==typeof a.reactionList&&f&&(a.reactionList.content?XF.setupHtmlInsert(a.reactionList,(g,k)=>{f.innerHTML="";f.append(...g.childNodes);XF.Transition.addClassTransitioned(f,"is-active")}):XF.Transition.removeClassTransitioned(f,"is-active", ()=>{for(;f.firstChild;)f.removeChild(f.firstChild)}))}}});XF.Reaction.activeTooltip=null;XF.BookmarkClick=XF.Event.newHandler({eventType:"click",eventNameSpace:"XFBookmarkClick",processing:!1,href:null,tooltip:null,trigger:null,tooltipHtml:null,clickE:null,init(){this.href=this.target.getAttribute("href");this.tooltip=new XF.TooltipElement(this.getTooltipContent.bind(this),{extraClass:"tooltip--bookmark",html:!0,loadRequired:!0});this.trigger=new XF.TooltipTrigger(this.target,this.tooltip,{maintain:!0, trigger:""});this.trigger.init()},click(a){0{setTimeout(()=>{this.processing=!1},250)})))},handleSwitchClick(a){const b=()=>{XF.handleSwitchResponse(this.target,a);this.trigger.clickShow(this.clickE)}; a.html?XF.setupHtmlInsert(a.html,(c,d,e)=>{this.tooltip.requiresLoad()&&(this.tooltipHtml=c,this.tooltip.setLoadRequired(!1));b()}):b()},getTooltipContent(a){if(this.tooltipHtml&&!this.tooltip.requiresLoad())return this.initializeTooltip(this.tooltipHtml),this.tooltipHtml;const b={skipDefault:!0,skipError:!0,global:!1};this.trigger.wasClickTriggered()&&(b.global=!0);XF.ajax("get",this.href,{tooltip:1},c=>this.tooltipLoaded(c,a),b)},tooltipLoaded(a,b){XF.setupHtmlInsert(a.html,(c,d,e)=>{this.initializeTooltip(c); b(c)})},initializeTooltip(a){a=a.querySelector("form");XF.on(a,"ajax-submit:response",this.handleOverlaySubmit.bind(this))},handleOverlaySubmit(a){const {data:b}=a;"ok"==b.status&&(a.preventDefault(),this.trigger&&this.trigger.hide(),XF.handleSwitchResponse(this.target,b),"bookmarkremoved"==b.switchKey&&a.target.reset())}});XF.BookmarkLabelFilter=XF.Element.newHandler({options:{target:null,showAllLinkTarget:null},loading:!1,filterTarget:null,filterLabelInput:null,showAllLinkTarget:null,tagify:null, init(){(this.filterTarget=XF.findRelativeIf(this.options.target,this.target))?(this.options.showAllLinkTarget&&(this.showAllLinkTarget=XF.findRelativeIf(this.options.showAllLinkTarget,this.target)),this.filterLabelInput=this.target.querySelector(".js-labelFilter"),this.tagify=XF.Element.getHandler(this.filterLabelInput,"token-input").tagify,this.tagify.on("remove",this.loadResults.bind(this)),this.tagify.on("add",this.loadResults.bind(this))):console.error("No filter target found.")},loadResults(a){if(!this.loading){this.loading= !0;var b="";"add"===a.type&&(b=a.detail.data.value);XF.ajax("get",XF.canonicalizeUrl("index.php?account/bookmarks-popup"),{label:b},c=>{c.html&&(this.showAllLinkTarget&&c.showAllUrl&&this.showAllLinkTarget.setAttribute("href",c.showAllUrl),XF.setupHtmlInsert(c.html,(d,e,f)=>{this.tagify.dropdown.hide();e=this.filterTarget.querySelector(".menu-scroller");d=d.querySelector(".menu-scroller");e.innerHTML="";e.append(...d.childNodes)}))}).finally(()=>{this.loading=!1})}}});XF.ContentVote=XF.Element.newHandler({options:{contentId:null}, processing:!1,init(){XF.onDelegated(this.target,"click","[data-vote]",this.voteClick.bind(this))},voteClick(a){a.preventDefault();a=a.target;a.classList.contains("is-disabled")||this.processing||(this.processing=!0,a=a.getAttribute("href"),XF.ajax("POST",a,{},this.handleAjax.bind(this),{skipDefaultSuccess:!1}).finally(()=>{setTimeout(()=>{this.processing=!1},250)}))},handleAjax(a){this.updateData(a);if(this.options.contentId){const b=h.querySelectorAll(`.js-contentVote[data-content-id="${this.options.contentId}"]`), c=this.target;b.forEach(d=>{c!==d&&(d.matches('[data-xf-init~="content-vote"]')?XF.Element.getHandler(d,"content-vote").updateData(a):this.updateDisplay(d,a))})}},updateData(a){this.updateDisplay(this.target,a)},updateDisplay(a,b){const c=a.querySelector(".js-voteCount"),d=a.querySelector(".is-voted");d&&d.classList.remove("is-voted");b.vote?(a.querySelector('[data-vote="'+b.vote+'"]').classList.add("is-voted"),a.classList.add("is-voted")):a.classList.remove("is-voted");XF.Animate.fadeOut(c,{speed:XF.config.speed.fast, complete(){c.setAttribute("data-score",b.voteScore);c.textContent=b.voteScoreShort;0b.voteScore?(c.classList.remove("is-positive"),c.classList.add("is-negative")):(c.classList.remove("is-positive"),c.classList.remove("is-negative"));XF.Animate.fadeIn(c,{speed:XF.config.speed.fast})}})}});XF.Event.register("click","attribution","XF.AttributionClick");XF.Event.register("click","like","XF.LikeClick");XF.Event.register("click", "switch","XF.SwitchClick");XF.Event.register("click","switch-overlay","XF.SwitchOverlayClick");XF.Element.register("alerts-list","XF.AlertsList");XF.Element.register("draft","XF.Draft");XF.Element.register("draft-trigger","XF.DraftTrigger");XF.Element.register("focus-trigger","XF.FocusTrigger");XF.Element.register("poll-block","XF.PollBlock");XF.Element.register("preview","XF.Preview");XF.Element.register("share-input","XF.ShareInput");XF.Element.register("copy-to-clipboard","XF.CopyToClipboard"); XF.Element.register("push-toggle","XF.PushToggle");XF.Element.register("push-cta","XF.PushCta");XF.Element.register("reaction","XF.Reaction");XF.Element.register("bookmark-click","XF.BookmarkClick");XF.Element.register("bookmark-label-filter","XF.BookmarkLabelFilter");XF.Element.register("content-vote","XF.ContentVote")})(window,document); Flash Sale Popup