var speedtest_portlet_ns=speedtest_portlet_ns||{};speedtest_portlet_ns.DEBUG_MODE=!1;speedtest_portlet_ns.namespace="_fi_dna_liferay_portlet_SpeedTestPortlet_";speedtest_portlet_ns.requirelist=speedtest_portlet_ns.DEBUG_MODE?["vue-dev","vue-resource-dev","dna-fi-theme/js/common/cardCarousel.es","dna-fi-wizard-js/supportWizard.es","dna-fi-theme/js/common/responsiveImages.es"]:["vue","vue-resource","dna-fi-theme/js/common/cardCarousel.es","dna-fi-wizard-js/supportWizard.es","dna-fi-theme/js/common/responsiveImages.es"];
$(document).ready(function(){require(speedtest_portlet_ns.requirelist,function(h,l,m,n,g){h.use(l);new h({el:"#speedTestPortlet",data:{themeDisplayId:"",userIpAddress:"",headerContent:"",relatedAssets:"",informationArticles:[],badInformations:"",goodInformations:"",pingClass:"",jitterClass:"",previousResultList:[],newResultList:[],newResult:"",selectedNew:[],startedSpeedTest:!1,cookieName:"speedTestCookie",greenClass:"rating-dot--green",orangeClass:"rating-dot--orange",redClass:"rating-dot--red",
isSwiperInitialized:!1,showSpeedTestIframe:!0},methods:{checkRelatedAssets:function(){return 0<this.filteredAssets.length?!0:!1},getNewCookie:function(a){this.previousResultList=this.getPreviousTestsInformations();var b={downloadSpeed:0,uploadSpeed:0,jitter:0,latency:0,date:new Date};b.downloadSpeed=Math.ceil(a.download/100)/10;b.uploadSpeed=Math.ceil(a.upload/100)/10;b.jitter=Math.round(a.latency.jitter);b.latency=a.latency.minimum;a=new Date;a=a.getUTCDate()+"."+(a.getUTCMonth()+1)+"."+a.getFullYear()+
" "+a.getHours()+":"+(10<=a.getMinutes()?a.getMinutes():"0"+a.getMinutes());b.date=a;this.newResult=b;this.newResultList=this.previousResultList.slice();5<=this.newResultList.length&&(this.newResultList=this.newResultList.slice(0,-1));this.newResultList.unshift(b);this.updateCookie(this.newResultList);this.updateSpeedTestContent()},getPreviousTestsInformations:function(){var a=this.getCookieByName(this.cookieName);return a&&"[]"!=a?(a=atob(a),a=JSON.parse(a)):[]},getCookieByName:function(a){a=("; "+
document.cookie).split("; "+a+"\x3d");if(2==a.length)return a.pop().split(";").shift()},getPingClass:function(a){var b=a.latency;return a.isMobile?50>b?this.greenClass:100>b?this.orangeClass:this.redClass:25>b?this.greenClass:50>b?this.orangeClass:this.redClass},getJitterClass:function(a){return 30>=a.jitter?this.greenClass:this.redClass},getPingStatusDescription:function(a){var b=a.latency;return a.isMobile?20>b?'Erinomainen':50>b?'Hyvä':
100>b?'Tyydyttävä':'Huono':10>b?'Erinomainen':25>b?'Hyvä':50>b?'Tyydyttävä':'Huono'},getJitterStatusDescription:function(a){return 30>=a.jitter?'Hyvä':'Huono'},updateCookie:function(a){var b=new Date;
b.setDate(b.getDate()+1E4);document.cookie=this.cookieName+"\x3d"+btoa(JSON.stringify(a))+"; expires\x3d"+b.toUTCString()+";"},createUrl:function(a,b,f){var d=a,e;for(e in f)var c=e,k=encodeURIComponent(f[e]),d=-1==a.indexOf("?")?d+("?"+b+c+"\x3d"+k):d+("\x26"+b+c+"\x3d"+k);return d},updateSpeedTestContent:function(){var a=this,b=document.getElementsByClassName("js-speed-test-resource-url").item(0).value,f=document.getElementsByClassName("js-speed-test-portlet-id").item(0).value,d=document.getElementsByClassName("js-speed-test-connection-type").item(0).value;
this.newResult.userNetworkType=d;b=this.createUrl(b,"_"+f+"_",this.newResult);this.$http.post(b).then(function(e){if(e.body){var c=e.body.content;this.relatedAssets=c.recommendedProducts?c.recommendedProducts:"";this.headerContent=e.body.networkHeader?e.body.networkHeader:"";this.goodInformations=c.positiveNotes?c.positiveNotes:"";this.badInformations=c.negativeNotes?c.negativeNotes:"";this.informationArticles=c.infoArticles?c.infoArticles:"";this.startedSpeedTest=!0;setTimeout(function(){a.initSupportWizard();
a.initProductSwipper()},500)}})},attachToWindow:function(a){window.addEventListener?window.addEventListener("message",a):window.attachEvent&&window.attachEvent("onmessage",a)},speedTestCompleted:function(a){var b=document.getElementsByClassName("js-speed-test-iframe-url").item(0).value;a.origin===b&&(this.getNewCookie(a.data),this.showSpeedTestIframe=!1,document.getElementById("speedTestHeader").scrollIntoView(!1))},initSupportWizard:function(){var a=$(".dna-speed-test-portlet").find(".support-wizard");
n.initWizard(a)},initProductSwipper:function(){g.responsiveImages.updateContainer(".dna-speed-test-portlet .speed-test-information-article");if(this.isSwiperInitialized)g.responsiveImages.updateContainer(".dna-speed-test-portlet .dna-swiper-container");else{var a=$(".dna-speed-test-portlet .dna-swiper-container")[0];a&&(m.initSwiper(a),this.isSwiperInitialized=!this.isSwiperInitialized,g.responsiveImages.updateContainer(".dna-speed-test-portlet .dna-swiper-container"))}},reRunSpeedTest:function(){var a=
this;this.startedSpeedTest=!1;this.previousResultList=this.getPreviousTestsInformations();$.get("https://api.ipify.org").done(function(b){$(".js-speed-test-ip-address").val(b);a.userIpAddress=b;a.updateHeaderContent()});this.showSpeedTestIframe=!0;document.getElementById("speedTestHeader").scrollIntoView(!1)},updateHeaderContent:function(){var a=this,b=document.getElementsByClassName("js-speed-test-resource-url").item(0).value,f=document.getElementsByClassName("js-speed-test-portlet-id").item(0).value,
d=document.getElementsByClassName("js-speed-test-connection-type"),e=d.item(0).value,b=this.createUrl(b,"_"+f+"_",{userNetworkType:e,userIpAddress:this.userIpAddress});this.$http.post(b).then(function(c){c.body&&(a.headerContent=c.body.headerContent?c.body.headerContent:"",c.body.userNetworkType&&(d.item(0).value=c.body.userNetworkType))})}},computed:{filteredAssets:function(){for(var a=[],b=0;b<this.relatedAssets.length;b++)-1==this.relatedAssets[b].indexOf("sold-out")&&a.push(this.relatedAssets[b]);
return a}},mounted:function(){this.previousResultList=this.getPreviousTestsInformations();this.attachToWindow(this.speedTestCompleted)},created:function(){var a=this,b=document.getElementsByClassName("js-speed-test-ip-address").item(0).value,f=document.getElementsByClassName("js-speed-test-header-content").item(0).value;-1!=b.indexOf(":")?$.get("https://api.ipify.org").done(function(d){$(".js-speed-test-ip-address").val(d);a.userIpAddress=d;a.updateHeaderContent()}):(this.userIpAddress=b,this.headerContent=
f)}})})});
