/*
FRAMEWORK_VERSION:19.1.3
*/
registerNameSpace("Common.Utils");Common.Utils.Cookie=function(){};Common.Utils.Cookie.prototype.CreateCookie=function(c,d,e){if(e>0){var b=new Date();b.setTime(b.getTime()+(e*24*60*60*1000));var a="; expires="+b.toGMTString()}else{var a=""}document.cookie=c+"="+d+a+"; path=/"};Common.Utils.Cookie.prototype.ReadCookie=function(b){var e=b+"=";var a=document.cookie.split(";");for(var d=0;d<a.length;d++){var f=a[d];while(f.charAt(0)==" "){f=f.substring(1,f.length)}if(f.indexOf(e)==0){return f.substring(e.length,f.length)}}return null};Common.Utils.Cookie.prototype.EraseCookie=function(a){this.CreateCookie(a,"",-1)};Common.Utils.Cookie=new Common.Utils.Cookie();registerNameSpace("Common.Math");Common.Math.Random=function(b,a){range=a-b;rnd=Math.random()*range;rnd=Math.round(rnd);return parseInt(b)+rnd};registerNameSpace("Common");Common.ABTest=function(options){function getCookieValue(valueStr){var evalError=false;var value=null;try{eval("value = "+valueStr)}catch(e){evalError=true}if(!evalError){return value}else{return null}}this.getCase=function(){var handled=false;var ptrId=0;var oSession={SessionId:options.SessionId,ABTestData:[]};if(options.resetSession){Common.Utils.Cookie.EraseCookie(COOKIE_NAME)}if(!options.sessionless){var ABTestCookie=Common.Utils.Cookie.ReadCookie(COOKIE_NAME);if(ABTestCookie&&ABTestCookie!=undefined){oCookieSession=getCookieValue(ABTestCookie);if(oCookieSession&&oCookieSession.SessionId==options.SessionId&&oCookieSession.ABTestData&&oCookieSession.ABTestData.length>0){for(var i=0;i<oCookieSession.ABTestData.length;i++){oSession.ABTestData.push({ABTestId:oCookieSession.ABTestData[i].ABTestId,ABPtrId:oCookieSession.ABTestData[i].ABPtrId});if(oCookieSession.ABTestData[i].ABTestId==options.ABTestId){ptrId=oSession.ABTestData[i].ABPtrId;handled=true}}}}}if(!handled){ptrId=this.toss();oSession.ABTestData.push({ABTestId:options.ABTestId,ABPtrId:ptrId});if(!options.sessionless){Common.Utils.Cookie.CreateCookie(COOKIE_NAME,JSON.stringify(oSession),options.sessionKeepAliveDays)}}return ptrId};this.toss=function(){var rangeAcum=0;var ranges=new Array();for(var i=0;i<options.alternatives.length;i++){if(options.alternatives[i]!=null){var currPercentage=parseInt(options.alternatives[i].percentage,10);if(currPercentage>0){rangeAcum+=currPercentage;ranges.push({callBackIndex:i,TopRange:rangeAcum})}}}var rnd=Common.Math.Random(1,rangeAcum);for(var i=0;i<ranges.length;i++){if(rnd<=ranges[i].TopRange){return ranges[i].callBackIndex}}return 0};this.executeCallBack=function(ptrId){return options.alternatives[ptrId].callBack(options.alternatives[ptrId].params)};var COOKIE_NAME=options.cookieName||"ABTest";var defaultSessionId=Common.Math.Random(100000000,999999999);if(!options.SessionId){var ABTestCookie=Common.Utils.Cookie.ReadCookie(COOKIE_NAME);if(ABTestCookie&&ABTestCookie!=undefined){oCookieSession=getCookieValue(ABTestCookie);if(oCookieSession&&oCookieSession.SessionId){defaultSessionId=oCookieSession.SessionId}}}options.SessionId=options.SessionId||defaultSessionId;options.ABTestId=options.ABTestId||"Undefined ABTest";options.alternatives=options.alternatives||new Array();options.resetSession=options.resetSession||false;options.sessionless=options.sessionless||false;options.sessionKeepAliveDays=options.sessionKeepAliveDays||0;var currentCase=this.getCase();return this.executeCallBack(currentCase)};
