define(["require","stApp","angular","pitLS","ccModel","cookie-helper","angularAdView"],(function(e,t,o,a,r,n){function c(e){const t=document.querySelector(".credit-popup-box");if(!t)return;let o=0,a=document.querySelector(".mobile-tab-bar");if(a&&(o=a.offsetHeight),e){"absolute"===getComputedStyle(t).position&&(t.style.bottom=60+o+"px")}else t.style.bottom=o+"px"}function i(e){return this.Jc=null,r.call(this,e)||this}e(["css!cards-compare-css"]),i.prototype=Object.create(r.prototype),i.prototype.constructor=r,i.prototype.getBtFeeCompare=function(){return this.Jc||"None"},t.register.factory("$comparedFactory",(function(){var e=[],t={},a=[],n=[],c=function(e){o.forEach(a,(function(t,o){if(t.getId()==e.getId())return a.splice(o,1),!1}))},d={switchItem:function(o,d,p){var s,l=o instanceof r?o:new i(o),m=l.getId(),u=e.indexOf(m);if(e.length<7){if(u>-1&&(!p||"remove"==p)){if(e.splice(u,1),n.splice(u,1),c(l),t.removed&&(!d||d.removed||null==d.removed))for(s in t.removed)t.removed[s](l,e)}else if((!p||"add"==p)&&u<0&&(e.push(m),a.push(l),o instanceof r||n.push(o),t.added&&(!d||d.added||null==d.added)))for(s in t.added)t.added[s](l,e);if(t.change)for(s in t.change)t.change[s](e)}else if(u>0&&(e.splice(u,1),n.splice(u,1),c(l),t.removed&&(!d||d.removed||null==d.removed)))for(s in t.removed)t.removed[s](l,e)},getStack:function(){return e},getCards:function(){return a},setStack:function(t){e=t},getData:function(){return n},addData:function(e){n.push(e)},when:function(e,o){t[e]||(t[e]=[]),t[e].indexOf(o)<0&&t[e].push(o)},clearStack:function(){for(;e.length>0;)d.popLast();if(t.reset)for(var o in t.reset)t.reset[o]()},popLast:function(){var o=a.pop();if(e.pop(),n.pop(),o){if(t.removed)for(var r in t.removed)t.removed[r](o,e);if(t.change)for(var c in t.change)t.change[c](e)}},pop:function(o){e.splice(o,1),n.splice(o,1);var r=a[o];if(c(r),t.removed)for(var i in t.removed)t.removed[i](r,e);if(t.change)for(var d in t.change)t.change[d](e)}};return d})),t.register.controller("cardCompareBarController",["$scope","$comparedFactory","$rootScope","$timeout",function(e,t,o,a){e.bar_ready=!0,e.hasCardCompare=!1,e.cardCompareBarOpened=!0,e.cards=t.getCards(),e.hasCardCompare=e.cards.length>0,e.isFullUser=!1;var r=n.read("mw_signon");if(null!==r){try{r=JSON.parse(r)}catch(e){r=null}r&&r.full&&(e.isFullUser=!0)}t.when("change",(function(){e.cards=t.getCards(),e.hasCardCompare=e.cards.length>0,c(e.hasCardCompare)})),e.closeBar=function(){e.cardCompareBarOpened=!1,c(!1),o.adviewed=!1,o.adClicked=!1},e.openBar=function(){o.compareReady=!1,e.cardCompareBarOpened=!0,c(!0),a((function(){o.compareReady=!0}),1e3)},c(e.hasCardCompare)}]),t.pageInjector.invoke(["$rootScope","$comparedFactory","$http","$timeout",function(t,r,n,i){var d=e("polyfills");t.loadCompareIframe=function(){t.opening_compare=!0;var e=document.querySelector("#viewport"),a=document.createElement("iframe");a.setAttribute("name","cc-compare-iframe");var c=r.getData(),d=r.getCards(),p=d.map((e=>e.aM)),s="https://"+window.location.host+"/comparison?pid="+p.join("c,")+"c&category=Card";function l(){var n=function(){document.removeEventListener("cc-compare:open",n),a.classList.add("opened"),o.element(a).animate3({translate3d:"0%,0,0"},300),document.addEventListener("cc-compare:close",c),a.contentWindow.postMessage(r.getData(),window.location.origin),window.parent.document.body.style.overflow="hidden"},c=function(){document.removeEventListener("cc-compare:close",c),a.classList.remove("opened"),window.parent.document.body.style.overflow="auto",o.element(a).animate3({translate3d:"100%,0,0"},200),setTimeout((()=>{a&&a.parentNode&&a.parentNode.removeChild(a)}),3e3),t.RemoveNotExistItems()};document.addEventListener("cc-compare:open",n),a.setAttribute("src",s),o.element(a).css({position:"fixed",width:"100vw",height:"100vh",top:"0px",left:"0px","z-index":"999999",transform:"translate3d(100%,0,0)"}),a.onload=function(){i((function(){t.opening_compare=!1}))},e.appendChild(a)}if(d.length!=c.length){var m=[];d.forEach(((e,t)=>{var o=e.getId();c.findIndex((e=>e.pid==o))<0&&m.push(o)})),m.length>0?n({url:"/ajax.php?action=Products.GetData&pid="+m.join("c,")+"c"}).then((function(e){var t=e.data;Array.isArray(t)||(t=[t]),o.forEach(t,(function(e){r.addData(e)})),l()})):l()}else l()},t.RemoveNotExistItems=function(){a.group("src-prd");let e=a.get("saved_Card")||[];r.getCards().map((e=>e.pid_full||e.aM+"c")).forEach(((o,a)=>{-1==e.indexOf(o)&&t.removeOne(a)}))},t.openCompare=function(){t.loadCompareIframe(),t.adviewed||t.AdViewed(d.uniqid()),t.adClicked||i((function(){n({url:"/pixel.png",method:"GET",params:{adview_id:t.viewId,adview_click:t.clickId,adview_pid:8e5,adview_page:top.location.pathname}}),t.adClicked=!0}))},t.resetCompare=function(){r.clearStack(),c(!1)},t.removeOne=function(e){r.pop(e),c(!!r.getStack().length)},t.removeLast=function(){r.popLast(),c(!1)},t.cardCompareDisabled=r.getStack().length<2,t.compareReady=!1,i((function(){t.compareReady=!0}),1e3),t.AdViewed=function(e){t.adviewed||(t.adviewed=!0,t.adClicked=!1,t.viewId=e||d.uniqid(),t.clickId=d.uniqid(),n({url:"/pixel.png",method:"GET",params:{adview_id:t.viewId,adview_pid:8e5,adview_section:"compare-bar-button",adview_page:top.location.pathname}}))},r.when("change",(function(){var e=r.getStack();t.$applyAsync((function(){t.cardCompareDisabled=e.length<2,t.cardCompareBar=e.length>0,t.cardCompareDisabled&&(t.adviewed=!1),e.length<1?t.compareTip="In order to compare cards side-by-side, select at least two cards":t.compareTip="In order to compare cards side-by-side, select at least one more card"}))})),t.compareTip="In order to compare cards side-by-side, select at least two cards"}]),t.pageInjector.get("$stService").setControllerReady("cardCompareBarController")}));