bdWidgetMiniObj={version:"1.0",clickTrackingParams:"",config:{affiliate_id:"80771",open_new_window:"true"},configValidation:{affiliate_id:{type:"string",pattern:/^(C5B1L3BR2S)?\d{4,}$/},open_new_window:{type:"string",options:["true","false"]}},init:function(){this.util.addAll();if(typeof(bdWidgetMiniCnf)==="object"){for(key in this.config){if(bdWidgetMiniCnf[key]!==undefined&&this.isValidConfig(key,bdWidgetMiniCnf[key])){this.config[key]=bdWidgetMiniCnf[key]}}}this.addStyle();this.attachSuckerFish();var miniWidgetElems=document.getElementsByClassName("bd_widget_mini");for(var i=0;i<miniWidgetElems.length;i++){if(miniWidgetElems[i].className.match(/bd_widget_isInit/i)===null){var miniWidgetElem=miniWidgetElems[i];this.addSupplementalLinks(miniWidgetElem);this.attachClickHandler(miniWidgetElem);this.addGATracking(miniWidgetElem);miniWidgetElem.className+=" bd_widget_isInit"}}},addStyle:function(){var head=document.getElementsByTagName("head")[0];if(document.getElementById("bd_widget_mini_styles")){var oldStyle=document.getElementById("bd_widget_mini_styles");head.removeChild(oldStyle)}var style=document.createElement("link");style.id="bd_widget_mini_styles";style.rel="stylesheet";style.type="text/css";style.href="http://www.tonsofcouponcodes.com/banners/widget_mini.1.0.css";style.media="all";head.appendChild(style)},attachSuckerFish:function(){var miniWidgetStoreListElems=document.getElementsByClassName("bd_widget_storelist");for(var i=0;i<miniWidgetStoreListElems.length;i++){miniWidgetStoreListElems[i].onmouseover=function(e){this.className+=" over"};miniWidgetStoreListElems[i].onmouseout=function(e){this.className=this.className.replace(" over","")}}},addSupplementalLinks:function(miniWidgetElem){this.addSupplementalLogoLink(miniWidgetElem);this.addSupplementalAllStoresLink(miniWidgetElem)},addSupplementalLogoLink:function(miniWidgetElem){var miniWidgetElemDivs=miniWidgetElem.childNodes;for(var i=0;i<miniWidgetElemDivs.length;i++){if(miniWidgetElemDivs[i].nodeName.toLowerCase()=="div"&&miniWidgetElemDivs[i].className=="bd_widget_logo"&&miniWidgetElemDivs[i].getElementsByTagName("a").length==0){var logoElem=miniWidgetElemDivs[i];var logoElemContent=logoElem.innerHTML;var logoLink=document.createElement("a");logoLink.href="http://www.bradsdeals.com/";logoLink.innerHTML=logoElemContent;logoElem.innerHTML="";logoElem.appendChild(logoLink)}}},addSupplementalAllStoresLink:function(miniWidgetElem){var miniWidgetElemDivs=miniWidgetElem.childNodes;for(var i=0;i<miniWidgetElemDivs.length;i++){if(miniWidgetElemDivs[i].nodeName.toLowerCase()=="div"&&miniWidgetElemDivs[i].className=="bd_widget_storelist"){var storeList=miniWidgetElemDivs[i].getElementsByTagName("ul")[0];var allStoresLi=document.createElement("li");allStoresLi.className="browseAll";var allStoresLink=document.createElement("a");allStoresLink.href="http://www.bradsdeals.com/stores";allStoresLink.innerHTML="More Stores &raquo;";allStoresLi.appendChild(allStoresLink);storeList.appendChild(allStoresLi)}}},attachClickHandler:function(miniWidgetElem){var miniWidgetLinkElems=miniWidgetElem.getElementsByTagName("a");for(var i=0;i<miniWidgetLinkElems.length;i++){miniWidgetLinkElems[i].onclick=function(){return bdWidgetMiniObj.clickHandler(this.href)}}},clickHandler:function(href){var destination=href;var paramConnector="?";if(destination.split("?").length>1){paramConnector="&"}destination+=paramConnector+"tid="+this.config.affiliate_id;if(this.clickTrackingParams.length>0){destination+="&"+this.clickTrackingParams}if(this.config.open_new_window=="true"){window.open(destination)}else{window.location=destination}return false},addGATracking:function(widgetElem){var displayLocation=document.location.protocol+"/"+document.location.host+document.location.pathname;var trackingURL=escape("/api/miniwidget/js/"+this.version+"/"+this.config.affiliate_id+"/"+displayLocation);var utmac="UA-164081-1";var utmhn="bradsdeals.com";var utmn=Math.floor(Math.random()*8999999999)+1000000000;var cookie=Math.floor(Math.random()*89999999)+10000000;var random=Math.floor(Math.random()*1147483647)+1000000000;var today=new Date();var epochTime=Math.floor(today.getTime()/1000);var referer=escape(document.location.href);var trackingParams="?utmwv=1&utmn="+utmn+"&utmsr=-&utmsc=-&utmul=-&utmje=0&utmfl=-&utmdt=-&utmhn="+utmhn+"&utmr="+referer+"&utmp="+trackingURL+"&utmac="+utmac+"&utmcc=__utma%3D"+cookie+"."+random+"."+epochTime+"."+epochTime+"."+epochTime+".2%3B%2B__utmb%3D"+cookie+"%3B%2B__utmc%3D"+cookie+"%3B%2B__utmz%3D"+cookie+"."+epochTime+".2.2.utmccn%3D(direct)%7Cutmcsr%3D(direct)%7Cutmcmd%3D(none)%3B";var gaGifPath="http://www.google-analytics.com/__utm.gif"+trackingParams;var trackingGif=document.createElement("img");trackingGif.src=gaGifPath;trackingGif.className="bd_widget_trackingPixel";widgetElem.appendChild(trackingGif)},isValidConfig:function(key,value){if(key in this.configValidation){if(this.configValidation[key].type=="string"){if(typeof(value)!=="string"){return false}}if(this.configValidation[key].type=="number"){if(isNaN(value)){return false}}if(this.configValidation[key].type=="color"){if(typeof(value)!=="string"||value.match(/^#([\dabcdef]{3}){1,2}$/i)===null){return false}}if("options" in this.configValidation[key]&&!(value in document.oc(this.configValidation[key].options))){return false}if("range" in this.configValidation[key]){if("min" in this.configValidation[key].range&&value<this.configValidation[key].range.min){return false}if("max" in this.configValidation[key].range&&value>this.configValidation[key].range.max){return false}}if("pattern" in this.configValidation[key]){if(value.match(this.configValidation[key].pattern)===null){return false}}}return true},util:{addAll:function(){this.addGetElementsByClassName();this.addOc()},addGetElementsByClassName:function(){if(!document.getElementsByClassName){document.getElementsByClassName=function(cl){var retnode=[];var myclass=new RegExp("\\b"+cl+"\\b");var elem=this.getElementsByTagName("*");for(var i=0;i<elem.length;i++){var classes=elem[i].className;if(myclass.test(classes)){retnode.push(elem[i])}}return retnode}}},addOc:function(){if(!document.oc){document.oc=function(a){var o={};for(var i=0;i<a.length;i++){o[a[i]]=""}return o}}}}};bdWidgetMiniObj.init();
