var isHome=isHome||false;var is404=is404||false;var allcookies=document.cookie;var crsCookieIndex=allcookies.indexOf("crs");var indexLogin=(crsCookieIndex!=-1)?crsCookieIndex:allcookies.indexOf("Datav2");var crsCookie=(crsCookieIndex!=-1)?$.parseJSON(unescape(getCookieValue("crs"))):"";var indexProps=indexLogin;var indexProps2=allcookies.indexOf("uidLoggedIn");var SiteList=(crsCookieIndex!=-1)?","+crsCookie.sites+",":unescape(allcookies.substring(allcookies.indexOf("Site",indexProps)+4));var thisSite=SiteList.indexOf(","+SITE_v5sid+",");var loggedIn=(indexProps!=-1&&thisSite!=-1)?1:-1;var uidLoggedIn=(indexProps2!=-1&&thisSite!=-1)?1:-1;var indexIPC=getCookieValue("IPC");var ipcLoggedIn=(indexIPC!="")?1:-1;var DisplayName=(function(){var endName="";if(crsCookieIndex!=-1){var firstName=crsCookie.firstName;var lastName=crsCookie.lastName;if(firstName==null&&lastName==null){endName=crsCookie.email;}else{endName=(firstName+"+"+lastName);}}else{var beginName=unescape(allcookies.substring(allcookies.indexOf("DispName",indexProps)+8));endName=beginName.substring(0,beginName.indexOf(";"));}
var regexp=/(\+)/g;return endName.replace(regexp," ");})();var ttUser=(indexLogin!=-1&&indexProps!=-1)?1:-1;var userContentAccess=(function(){var accessMONYY=getChipValue("magAccess","sid"+SITE_v5sid);var vc=(typeof SITE_magQualValidCookies=="undefined")?"":SITE_magQualValidCookies;return(accessMONYY!=""&&vc.indexOf(accessMONYY)!=-1);})();var underscoreOffer=(function(){var offer=getURLParamValue("Offer");if(offer!=""){setSessionCookie("Offer",offer);return"-"+offer;}
return"";})();var memberUpdate=(function(){if(memberUpdate&&memberUpdate!="on")return;var memUpd=-1;var flag=(typeof SITE_memberUpdateFlag=="undefined"&&"on"||SITE_memberUpdateFlag);if(flag=="on"&&loggedIn==1){var mu1=getCookieValue("mu1");if(mu1=="")memUpd=1;if(mu1!=1&&mu1!=""){var oneDay=(24*(60*(60*1000)));var cDate=(new Date(mu1)).getTime();var tDate=cDate+oneDay;var nowDate=(new Date()).getTime();if(nowDate>tDate)memUpd=1;}
if(memUpd!=-1){var url=(typeof SITE_memberUpdateURL=="undefined")?"":SITE_memberUpdateURL;if(url!=""){$(document).ready(function($){if(memberUpdate=="on"){$("body").append('<iframe id="memberUpdate"'+' width="1" height="0"'+' border="0" frameborder="0"'+' marginheight="0" marginwidth="0"'+' scrolling="no" />');$("iframe#memberUpdate").attr("src",url);}});}}}
return flag;})();var forMembersOnly=(function(){var mo=(typeof forMembersOnly!="undefined"&&forMembersOnly);var moOverride=getURLParamValue("mo");return(mo||moOverride==1);})();var adDebug=(getURLParamValue("adString")=="on")?true:false;var dcopt=(function(){var on=(typeof interstitialSwitch=="undefined"||interstitialSwitch);var dc=(typeof dcopt=="undefined"&&"ist"||dcopt);var urlOverride=getURLParamValue("int");if(!on||dc!="ist"||urlOverride=="off"){return"";}
return"ist";})();var dcopt_holder=dcopt;if(SITE_name=='ComputerWeekly'){var dcopt_holder_cw=dcopt;}
var ad_dbString=new String();function DartUtil(){this.log=[],this.acct=window.accountAbbr||"null",this.zone=getURLParamValue("parentZone")||window.zone||"null",this.pth=getURLParamValue("parentPth")||window.location.pathname.substring(1).replace(/\//g,"."),this.kw=getURLParamValue("parentKw")||window.kw||(function(){var query=getURLParamValue("query")||getURLParamValue("q");if(query!=""){query=unescape(query).toLowerCase().replace(/[\s\+]+&[\s\+]+/g,"+").replace(/[\s\+]+/g,"+").replace(/\+(?!(or\+))/g,function(){return(RegExp.leftContext.substr(-3)=="+or")?"+":"+and+";});return escape(query);}})()||"",this.gci=getURLParamValue("parentGci")||window.gci||"",this.taxHelper={taxLevel:function(){var pathArray=window.location.pathname.substring(1).split("/");var lvl=pathArray.length;if(lvl>0){if(ENV_isStage&&pathArray[0]==SITE_name){return lvl-1;}}
return lvl;}},this.tax=(function(o){if(document.referrer.indexOf("informationCenter")!=-1){var topicTax=getCookieValue("topicTax");if(topicTax!=""){topicTax=topicTax.split(":");o.clu=(topicTax.length>0)?topicTax[1]:"NONE";return topicTax[0];}}
return"";})(this)||(function(o){var gci=window.gci||"";var zn=window.zone||"";if(gci!=""||(zn=="TOPICS"&&o.taxHelper.taxLevel()>1)||(zn=="FORUM"&&window.tax!="")){return window.tax;}
return"";})(this)||getURLParamValue("parentTax")||(function(o){var zn=window.zone||"";if((zn=="AIOG"||zn=="ATE"||zn=="TIPS")&&o.taxHelper.taxLevel()>1){return window.defaultTax;}
return"";})(this)||"",this.clu=this.clu||window.clu||getURLParamValue("parentClu")||"",this.adg=getURLParamValue("adg")||window.adg||"",this.ptile=0,this.iid=window.iid||getURLParamValue("parentIid")||"",this.iin=getURLParamValue("parentIin")||(function(){if(typeof hbxMLC!="undefined"&&hbxMLC.indexOf("infoCenter")!=-1){return hbxMLC.substring(1,hbxMLC.indexOf(";"));}
return"";})(),this.rci=window.rci||getURLParamValue("parentRci"),this.nl=getURLParamValue("ad"),this.ses=getURLParamValue("ses"),this.track=getURLParamValue("track"),this.ptag=getURLParamValue("ptag"),this.tag=getURLParamValue("tag"),this.blog=getURLParamValue("blog")
this.ord=getURLParamValue("ordValue")||Math.round(Math.random()*100000000),this.getDBString=function(){var ad_db=null;var dbString=new String();if(typeof $.parseJSON!="undefined"){ad_db=$.parseJSON(unescape(getCookieValue('co')));if(ad_db!=null){dbString+=(ad_db.dbSic!="UNKNOWN")?";db="+ad_db.dbSic:"";dbString+=(ad_db.industryId!="UNKNOWN")?";dbi="+ad_db.industryId:"";dbString+=(ad_db.empSizeId!="UNKNOWN")?";dbsz="+ad_db.empSizeId:"";dbString+=(ad_db.revenueId!="UNKNOWN")?";dbrv="+ad_db.revenueId:"";dbString+=(ad_db.f1000!="UNKNOWN"&&ad_db.f1000!="false")?";dbf1="+ad_db.f1000:"";dbString+=(ad_db.f2000!="UNKNOWN"&&ad_db.f2000!="false")?";dbf2="+ad_db.f2000:"";dbString+=(ad_db.type!="UNKNOWN"&&ad_db.type!="none")?";dbtp="+ad_db.type:"";}}
return dbString;},window.ad_dbString=this.getDBString(),this.mst=(typeof window.microsite=="undefined")?"":window.microsite;this.getDartString=function(adi,sz,ptile,zone,env,host,ses){var zone=zone||this.zone;var env=env||this.env;var ord=this.ord;var adString=new String();if(adi=="adi")ord+="?";adString="http://ad.doubleclick.net/"+adi+"/"+this.acct+"/"+zone;adString+=";pos=0"+";pth="+this.pth+";sz="+sz+";tile="+ptile;adString+=(dcopt=="ist")?";dcopt=ist":"";adString+=(this.kw!="")?";kw="+this.kw:"";adString+=(this.gci!="")?";gci="+this.gci:"";adString+=(this.tax!="")?";tax="+this.tax:"";adString+=(this.clu!="NONE")?";clu="+this.clu:"";adString+=(this.adg!="")?";adg="+this.adg:"";adString+=(this.iid!="")?";iid="+this.iid:"";adString+=(this.iin!="")?";iin="+this.iin:"";adString+=(this.rci!="")?";rci="+this.rci:"";adString+=(this.nl!="")?";nl="+this.nl:"";adString+=(this.mst!="")?";mst="+this.mst:"";adString+=(ses!=""&&this.ses!="")?";ses="+(ses||this.ses):"";adString+=(this.track!="")?";track="+this.track:"";adString+=(this.ptag!="")?";ptag="+this.ptag:"";adString+=(this.tag!="")?";tag="+this.tag:"";adString+=(this.blog!="")?";blog="+this.blog:"";adString+=(env&&typeof env=="string")?";env="+env.toLowerCase():"";adString+=(host&&typeof host=="string")?";host="+host:"";adString+=window.ad_dbString;adString+=";ord="+ord;return adString;},this.getLeaderboard=function(baZone,baPos){var ptile=++this.ptile;dcopt="";var baZone=baZone||this.zone;var baPos=baPos||0;var name="leaderboard_"+ptile;var sz="728x90";var adjAds=window.dgADJads||"on";var src=this.getDartString("adj",sz,ptile,baZone);if(baPos!=0)src=src.replace('pos=0','pos='+baPos);var leaderboardString=new String();if(adjAds=="on"){leaderboardString='<scr';leaderboardString+='ipt type="text/javascript" src="'+src+'"></scr';leaderboardString+='ipt>';}else{src="/vgn-ext-templating/html/leaderboard.html?"+escape(src);leaderboardString='<iframe src="'+src+'" name="frame_'+name+'" width="728" height="90" border="0" marginheight="0" marginwidth="0" frameborder="0" scrolling="no"></iframe>';}
if(adDebug)this.log.push("Ad: "+name+"<ul><li>"+src+"</li></ul>");return leaderboardString;},this.getVendorOffer=function(){var ptile=++this.ptile;var name="vendorOffer_"+ptile;var sz="550x33,550x45";var adjAds=window.dgADJads||"on";var adType=(adjAds=="on")?"adj":"adi";var src=this.getDartString(adType,sz,ptile);var vendorOfferString=new String();if(adjAds=="on"){vendorOfferString='<scr';vendorOfferString+='ipt type="text/javascript" src="'+src+'"></scr';vendorOfferString+='ipt>';}else{vendorOfferString='<iframe src="'+src+'" name="frame_'+name+'" width="550" height="45" border="0" marginheight="0" marginwidth="0" frameborder="0" scrolling="no"></iframe>';}
if(adDebug)this.log.push("Ad: "+name+"<ul><li>"+src+"</li></ul>");return vendorOfferString;},this.getSkyscraper=function(){var ptile=++this.ptile;dcopt="";var name="skyscraper_"+ptile;var sz="160x600";var adjAds=window.dgADJads||"on";var adType=(adjAds=="on")?"adj":"adi";var src=this.getDartString(adType,sz,ptile);var skyscraperString=new String();if(adjAds=="on"){skyscraperString='<scr';skyscraperString+='ipt type="text/javascript" src="'+src+'"></scr';skyscraperString+='ipt>';}else{skyscraperString='<iframe src="'+src+'" name="frame_'+name+'" width="160" height="600" border="0" marginheight="0" marginwidth="0" frameborder="0" scrolling="no"></iframe>';}
if(adDebug)this.log.push("Ad: "+name+"<ul><li>"+src+"</li></ul>");return skyscraperString;},this.getJsInterstitial=function(){var ptile=++this.ptile;var name="interstitial_"+ptile;var sz="2x1";dcopt=dcopt_holder;var interstitialAdSrc=this.getDartString("adj",sz,ptile);var interstitialAdScript='<scr';interstitialAdScript+='ipt type="text/javascript" id="'+name+'" src="'+interstitialAdSrc+'"><\/scr';interstitialAdScript+='ipt>';if(adDebug)this.log.push("Ad: "+name+"<ul><li>"+interstitialAdSrc+"</li></ul>");dcopt="";return interstitialAdScript;},this.getBigAd=function(baZone,baPos){dcopt="";var baZone=baZone||this.zone;var baPos=baPos||0;var ptile=++this.ptile;if(getURLParamValue("ordValue"))ptile=8;var name="bigAd_"+ptile;var sz="300x250";var adjAds=window.dgADJads||"on";var adType=(adjAds=="on")?"adj":"adi";var src=this.getDartString(adType,sz,ptile,baZone);if(baPos!=0)src=src.replace('pos=0','pos='+baPos);var bigAdString=new String();if(adjAds=="on"){bigAdString='<scr';bigAdString+='ipt type="text/javascript" src="'+src+'"></scr';bigAdString+='ipt>';}else{bigAdString='<iframe src="'+src+'" name="frame_'+name+'" width="300" height="250" border="0" marginheight="0" marginwidth="0" frameborder="0" scrolling="no"></iframe>';}
if(adDebug)this.log.push("Ad: "+name+" <ul><li>"+src+"</li></ul>");return bigAdString;},this.getCltAd=function(moExists){deleteCookie("ugcCltHeight","/",SITE_domain);dcopt="";var moExists=moExists||0;var ptile=++this.ptile;var name="cltAd_"+ptile;var adjAds=window.dgADJads||"on";var cltAdString=new String();var sz=new String();var src=new String();sz="300x600";src=this.getDartString("adj",sz,ptile);cltAdString='<scr';cltAdString+='ipt type="text/javascript" src="'+src+'"></scr';cltAdString+='ipt>';if(adDebug)this.log.push("Ad: "+name+"<ul><li>"+src+"</li></ul>");return cltAdString;}}
function setLeaderBoard(clickCommand){var positioned=($("#leaderboard").css("position")=="absolute");$("#leaderboard").addClass("functional");$("#leaderboard div").append('<p id="leaderboardToggle" />');$("p#leaderboardToggle").toggle(function(){$(this).toggleClass("collapse").append("<img />").find("img").load(function(){$(this).remove();}).css("display","none").attr("src",clickCommand);if(positioned){$("#loginBand").each(function(){if(!$(this).data("css")){$(this).data("css",{mb:parseInt($(this).css("margin-bottom"))});}
$(this).animate({marginBottom:($(this).data("css").mb+210)+"px"},1500);});}
$("#leaderboard div, #leaderboard iframe").animate({height:"300px"},1500);},function(){$(this).toggleClass("collapse");$("#leaderboard iframe, #leaderboard div").animate({height:"90px"},1500);if(positioned){$("#loginBand").animate({marginBottom:$("#loginBand").data("css").mb+"px"},1500);}});if(cookieExists("adv")==-1){setSessionCookie("adv",1);$("p#leaderboardToggle").click();}}
var dartUtil=new DartUtil();(function(){$(document).ready(function($){var adjAds=(typeof window.dgADJads=="undefined")?"on":window.dgADJads;if(typeof window.dgADJads=="undefined"){var dgADJads="on";}
$("#leaderboard").each(function(){if(typeof leaderboardSwitch=="undefined"||leaderboardSwitch&&adjAds!="off"){$(this).addClass("on").writeCapture().html(dartUtil.getLeaderboard());}});$("#leaderboard2").each(function(){if(typeof leaderboardSwitch=="undefined"||leaderboardSwitch&&adjAds!="off"){$(this).addClass("on").writeCapture().html(dartUtil.getLeaderboard(dartUtil.zone+"_lowerlb","bottom"));}});$("#vendorOffer").each(function(){if(typeof vendorofferSwitch=="undefined"||vendorofferSwitch){$(this).addClass("on").writeCapture().html(dartUtil.getVendorOffer());}});$("#bigAd1").each(function(){if(typeof bigadSwitch=="undefined"||bigadSwitch){$(this).addClass("on").writeCapture().html(dartUtil.getBigAd(zone,"top"));}});$("#cltAd").each(function(){if(typeof cltadSwitch=="undefined"||cltadSwitch){$(this).addClass("on").writeCapture().html(dartUtil.getCltAd($("#inlineRegistration").length));}});$("#bigAd2").each(function(){if(typeof bigadSwitch=="undefined"||bigadSwitch){$(this).addClass("on").writeCapture().html(dartUtil.getBigAd("lowermu","bottom"));}});$("#bigAd").each(function(){if(typeof bigadSwitch=="undefined"||bigadSwitch){$(this).addClass("on").writeCapture().html(dartUtil.getBigAd(zone));}});$("#skyscraper").each(function(){if(typeof skyscraperSwitch=="undefined"||skyscraperSwitch){$(this).addClass("on").writeCapture().html(dartUtil.getSkyscraper());}});$("#adjInterstitial").each(function(){if(typeof dcopt_holder_cw!="undefined"){dcopt_holder=dcopt_holder_cw;}
if(dcopt_holder=="ist"&&!(forMembersOnly||is404)){$(this).writeCapture().html(dartUtil.getJsInterstitial());}});if(adjAds=="on"){$(".col3").css("overflow","visible");}
if(adDebug){if(typeof $.parseJSON=="undefined")dartUtil.log.push(".parseJSON is undefined");if(window.ad_dbString=="")dartUtil.log.push("empty demandbase, or UNKNOWN values");var adDebugString='<ul>';for(var i=0;i<dartUtil.log.length;i++){adDebugString+='<li>'+dartUtil.log[i].replace("http://ad.doubleclick.net/adj/","/")+'</li>';}
adDebugString+='</ul>'
$("body").prepend("<div id='adAlert'></div><div id='adOpen'></div>");$("#adAlert,#adOpen").css({"height":"auto","width":"100%","background":"black","color":"white","line-height":"1","font-weight":"normal","display":"none"});$("#adAlert").html("<span style='cursor: pointer;color:white;font-weight:bold'>ADVERTISING INFO</span><br><br>"+adDebugString+"<br><br><span id='adCloseClick'style='cursor: pointer;color:white;font-weight:bold'>CLICK TO CLOSE</span><br><br>");$("#adOpen").html("<span id='adOpenClick' style='cursor:pointer;color:white;font-weight:bold'>CLICK TO OPEN ADVERTISING INFO</span><br><br>");$("#adOpen").slideDown("slow");$("#adCloseClick").click(function(){$("#adAlert").hide();$("#adOpen").slideDown("slow");});$("#adOpenClick").click(function(){$("#adOpen").hide();$("#adAlert").slideDown("slow");});}});})();var watermark=(function(){var on=(typeof watermarkSwitch!="undefined"&&watermarkSwitch);if(on){var onlyHome=(typeof watermarkHomeOnly!="undefined"&&watermarkHomeOnly);if(onlyHome&&!isHome){return false;}
var url=(typeof watermarkURL=="undefined")?"":watermarkURL;var track=(typeof watermarkTrackingImageURL=="undefined")?"":watermarkTrackingImageURL;if(url!=""&&track!=""){$(document).ready(function($){if(watermark){$(document.body).css("background-image","url("+url+")").append('<img src="'+track+'" class="track" />');}});}}
return on;})();function cltSubmitForm(form){var errMsgs=[];var newsletter_count=0;if(typeof form.newsletters.length=="undefined"){if(form.newsletters.checked){newsletter_count++;}}else{for(i=0;i<form.newsletters.length;i++){if(form.newsletters[i].checked){newsletter_count++;}}}
if(newsletter_count==0){errMsgs.push("No newsletters have been selected.");}
if(typeof form.email!="undefined"){if(form.email.value==''){errMsgs.push("Please enter an Email address.");form.email.focus();}else{emailStatus=checkEmail(form.email.value);if(emailStatus!='good'){errMsgs.push(emailStatus);form.email.focus();}}}
if(errMsgs.length>0){alert(errMsgs.join("\n"));}else{form.submit();form.target="_top";form.email.value="";return true;}
return false;}
$(document).ready(function($){var prepop=getCookieValue("WebXuser")||"Your E-mail Address";$("input:text[name='email']").val(prepop).focus(function(){if($(this).val()=="Your E-mail Address"){$(this).val("");}});$("#wordOfTheDayForm,#emailUpdatesForm,#cltAdForm").submit(function(){var errMsgs=[];if(this.id!="wordOfTheDayForm"){if($("input:checked[name='newsletters']",this).length==0){errMsgs.push("No newsletters have been selected.");}}
var field=$("input:text[name='email']",this);var addr=field.val();if(/\s+|Your E-mail Address/.test(addr)){errMsgs.push("Please enter an Email address.");field.focus();}else{var status=checkEmail(addr);if(status!="good"){errMsgs.push(status);field.focus();}}
if(errMsgs.length>0){alert(errMsgs.join("\n"));}else{this.target="_top";this.submit();return true;}
return false;});$('#networkSiteWhatisSearch').attr('action','http://whatis.techtarget.com/wsearchResults/0,,sid9,00.html');});var wrDebug=(function(){var param=getURLParamValue("wrData");if(param=="on"||param=="off"){setCookie("wrData",param,null,"/");return param;}else{param=getCookieValue("wrData");if(param=="on"||param=="off"){return param;}}
return"";})();var wrData=(function(){return wrData||wrDebug||((ENV_name=="PROD"&&!ENV_isStage)?"on":"off");})();var clicktrackIMG=ENV_clicktrackHost.replace("clicktrack","go")+"/clicktrack-r/activity/activity.gif";var clicktrackUID=(function(){var uidParamValue=getURLParamValue("uid");var clicktrackUID="";if(getCookieValue("tt_ut")==""&&(uidParamValue!=""||loggedIn!=-1)){var clicktrackNow=new Date().getTime();var clicktrackFiveYear=(5*(365*(24*(60*(60*1000)))));if(uidParamValue!=""){clicktrackUID=uidParamValue;}else{if(crsCookieIndex!=-1){clicktrackUID=crsCookie.uid;}else{var clicktrackUIDCookie=getCookieValue("Datav2");clicktrackUID=clicktrackUIDCookie.substring(clicktrackUIDCookie.indexOf("dgUserID")+8);}
if(clicktrackUID.indexOf("%0A")!=-1){clicktrackUID=unescape(clicktrackUID.substring(0,clicktrackUID.indexOf("%0A")));}else{clicktrackUID=unescape(clicktrackUID);}
if(clicktrackUID.indexOf(";")!=-1)clicktrackUID=clicktrackUID.substring(0,clicktrackUID.indexOf(";"));}
var clicktrackExpire=new Date(clicktrackNow+clicktrackFiveYear);setCookie("tt_ut",clicktrackUID,clicktrackExpire.toGMTString(),"/",SITE_domain);}
return clicktrackUID;})();(function(tax,gci,taxes){function LZ(x){return(x<0||x>9?"":"0")+x;}
var thisDate=new Date();var curTime=thisDate.getTime();var timeZoneOffset=thisDate.getTimezoneOffset()*60000;var curTimeUTC=curTime+timeZoneOffset;var serverTime=curTimeUTC+(3600000*-5);var estTime=new Date(serverTime);var estTimeStr=estTime.getFullYear()+"-"+LZ(estTime.getMonth()+1)+"-"+LZ(estTime.getDate())+" "+LZ(estTime.getHours())+":"+LZ(estTime.getMinutes())+":"+LZ(estTime.getSeconds());var addClicktrackIMG=function(type,tax,gci,taxes,user){var trackIMG=clicktrackIMG+"?activityTypeId="+type;if(user&&user!=""){trackIMG+="&u="+user;}
trackIMG+=((taxes.length>0)?(function(t){var str="";var len=t.length;for(var i=0;i<len;i++){str+="&t"+(i+1>1?i+1:"")+"="+t[i];}
return str;})(taxes):"&t="+tax);trackIMG+="&a="+estTimeStr.replace(" ","%20");trackIMG+="&c=normal"+"&r="+Math.round(Math.random()*1000000);if(gci!=""){trackIMG+="&g="+gci;}
if(underscoreOffer!=""){trackIMG+="&promo="+underscoreOffer.substring(1);}
$(document).ready(function($){$(document.body).append('<img src="'+trackIMG+'" class="track" />');});if(wrDebug=="on"){alert("Activity.jpg tracked: "+trackIMG);}}
if(is404||wrData!="on"){if(wrDebug=="on"){alert("is404: "+is404+" | wrData: "+wrData);}
return;}
tax=tax||"";gci=gci||"";taxes=taxes||[];var ttUtCookieValue=getCookieValue("tt_ut");var preRegDebug=(wrDebug=="on"||getURLParamValue("preRegData")=="on")?"on":"off";if(getCookieValue("moActivity")=="on"){setSessionCookie("moActivity","off");if(wrDebug=="on"){alert("moActivity Cookie shut off");}}else if(ttUtCookieValue!=""&&tax!=""){addClicktrackIMG(1,tax,gci,taxes,ttUtCookieValue);}else if(tax!=""&&ttUtCookieValue==""){addClicktrackIMG(16,tax,gci,taxes);var maxTax=5;var preRegCookieTime=estTimeStr;var fiveYears=(5*(365*(24*(60*(60*1000)))));var preRegExpire=new Date();preRegExpire.setTime(preRegExpire.getTime()+fiveYears);if(tax!=""){var taxString=(taxes.length>0)?(function(t){var str="";var len=t.length;for(var i=0;i<len;i++){str+="t"+(i+1)+"@"+t[i]+"$"}
return str;})(taxes):"t1@"+tax+"$";if(getCookieValue("tt_prereg")!=""){var storedPreRegValues=unescape(getCookieValue("tt_prereg"));var storedArray=storedPreRegValues.split(",");var preRegCookieString=taxString+"_"+preRegCookieTime;if(gci!=""){preRegCookieString+="&g="+gci;}
if(underscoreOffer!=""){preRegCookieString+="&promo="+underscoreOffer.substring(1);}
storedArray.push(preRegCookieString);if(storedArray.length>maxTax){var overLimitCount=storedArray.length-maxTax;for(var i=0;i<overLimitCount;i++){storedArray.shift();}}
preRegCookieString=storedArray.join();setCookie("tt_prereg",preRegCookieString,preRegCookieTime,"/",SITE_domain);if(preRegDebug=="on"){alert("Pre Reg Tracking Cookie Updated: \n\n"+unescape(getCookieValue("tt_prereg")));}}else{var preRegCookieString=taxString+"_"+preRegCookieTime;if(gci!=""){preRegCookieString+="&g="+gci;}
if(underscoreOffer!=""){preRegCookieString+="&promo="+underscoreOffer.substring(1);}
setCookie("tt_prereg",preRegCookieString,preRegExpire.toGMTString(),"/",SITE_domain);if(preRegDebug=="on"){alert("Pre Reg Tracking Cookie Created: \n\n"+unescape(getCookieValue("tt_prereg")));}}}}else if(preRegDebug=="on"){alert("No Activity: tax="+tax+": tt_ut="+ttUtCookieValue);}
if(ttUtCookieValue!=""){var preRegCookieValues=getCookieValue("tt_prereg");if(preRegCookieValues!=""){if(preRegDebug=="on")var log=["Pre Reg Activity.jpg tracked:"];var storedPreRegValues=unescape(preRegCookieValues);var trackArray=storedPreRegValues.split(",");var thisCookieResult,taxString,taxIDArray,taxID,j,jlen,thisTaxString,activityType,datetime,preRegTrackIMG;var preRegTrackResult='';for(var i=0,len=trackArray.length;i<len;i++){thisCookieResult=trackArray[i];if(typeof thisCookieResult!="undefined"){taxString="";taxIDArray=thisCookieResult.split("$");for(j=0,jlen=taxIDArray.length;j<jlen-1;j++){thisTaxString=taxIDArray[j];activityType=thisTaxString.substring(0,2);if(activityType=="t1"){activityType="t";}
taxID=thisTaxString.substring(thisTaxString.indexOf("@")+1);taxString=taxString+"&"+activityType+"="+taxID;}
datetime=thisCookieResult.substring(thisCookieResult.indexOf("_")+1);datetime=datetime.replace(" ","%20");preRegTrackIMG=clicktrackIMG+"?activityTypeId=1&u="+ttUtCookieValue+taxString+"&a="+datetime+"&c=pre"+"&r="+Math.round(Math.random()*1000000);preRegTrackResult+='<img src="'+preRegTrackIMG+'" class="track" />';if(preRegDebug=="on")log.push(preRegTrackIMG);}}
$(document).ready(function($){$(document.body).append(preRegTrackResult);});deleteCookie("tt_prereg","/",SITE_domain);if(preRegDebug=="on")alert(log.join("\n\n"));}}})(window.tax,window.gci,window.taxes);var bizoDebug=(getURLParamValue("bizo")=="on");var bizo=(function(){var flag=((wrData!="on"||typeof SITE_bizoFlag=="undefined")&&"off"||SITE_bizoFlag);if(bizoDebug)alert("wrData: "+wrData+" | Bizo: "+flag);if(flag=="on"&&((ENV_name=="PROD"&&!ENV_isStage)||bizoDebug)){if(cookieExists("tt_ut")!=-1&&cookieExists("bizo2")==-1){var url=(typeof SITE_bizoIframeURL=="undefined")?"":SITE_bizoIframeURL;if(bizoDebug)alert("Bizo Iframe URL: "+url);if(url!=""){}}
_bizo_data_partner_id=32}
return flag;})();function getBizoDataObject(_bizo_cookie_string){var _bizo_data_object={};var _bizo_cookie_entries=_bizo_cookie_string.split("#");for(var i=0;i<_bizo_cookie_entries.length;i++){var _bizo_cookie_entry_parts=_bizo_cookie_entries[i].split("*");if(_bizo_cookie_entry_parts.length>1){switch(_bizo_cookie_entry_parts[0]){case"I1":_bizo_data_object.I1=_bizo_cookie_entry_parts[1];break;case"I2":_bizo_data_object.I2=_bizo_cookie_entry_parts[1];break;case"I3":_bizo_data_object.I3=_bizo_cookie_entry_parts[1];break;case"I4":_bizo_data_object.I4=_bizo_cookie_entry_parts[1];break;default:;}}}
return _bizo_data_object;}
function cookieExists(name){return document.cookie.indexOf(name+"=")}
function getCookieValue(name){var cookie=document.cookie;var pos=cookie.indexOf(name+"=");if(pos!=-1){var start=pos+name.length+1;var end=cookie.indexOf(";",start);if(end==-1)end=cookie.length;var value=cookie.substring(start,end);return value;}else{return"";}}
function getChipValue(cookiename,chipname){var cookievalue=getCookieValue(cookiename);if(cookievalue!=""){if(cookievalue.indexOf(chipname)!=-1){var start=unescape(cookievalue.substring(cookievalue.indexOf(chipname)+chipname.length));var end=start.substring(0,start.indexOf(";"));if(!end)end=start.substring(0,start.length);var regexp=/(\W)/g;var value=end.replace(regexp," ");return value;}else{return"";}}else{return"";}}
function setChipString(value){value=value+"\n";value=escape(value);return value;}
function setSessionCookie(name,value){document.cookie=name+"="+value+";path=/"+";domain="+SITE_domain;}
function setCookie(name,value,expires,path,domain,secure){document.cookie=name+"="+encodeURIComponent(value)+((expires)?"; expires="+expires:"")+((path)?"; path="+path:"")+((domain)?"; domain="+domain:"")+((secure)?"; secure":"");return true;}
function deleteCookie(name,path,domain){if(cookieExists(name)){setCookie(name,"",-30,path,domain);}}
function getURLParam(param){var paramValue=param+"=";var searchValue=window.location.search.toLowerCase();var searchValueParam="";if(searchValue.indexOf(paramValue)!=-1){searchValueParam=window.location.search.substring(searchValue.indexOf(paramValue),searchValue.length);if(searchValueParam.indexOf("&")!=-1){searchValueParam=searchValueParam.substring(0,searchValueParam.indexOf("&"));}}
return searchValueParam;}
function getURLParamValue(param){var paramValue=param.toLowerCase()+"=";var searchValue=window.location.search.toLowerCase();var searchValueParam="";if(searchValue.indexOf(paramValue)!=-1){searchValueParam=window.location.search.substring(searchValue.indexOf(paramValue),searchValue.length);if(searchValueParam.indexOf("&")!=-1){searchValueParam=searchValueParam.substring(0,searchValueParam.indexOf("&"));}}
searchValueParam=searchValueParam.substring(param.length+1,searchValueParam.length);return searchValueParam;}
function checkEmail(emailStr){var num_error=0;var NewemailStr="";var emailPat=/^(.+)@(.+)$/;var specialChars="\\(\\)\\{\\}\/%?\\$\\*\\^\\|\\.=&`~#!<>@,;:\\\\\\\"\\.\\[\\]";var invalidchars="\\(\\)\\{\\}\/%?\\$\\s\\^~#!&`\\*\\|=@<>,;:\\\\\\\"\\[\\]'";var validChars="[^\\s"+specialChars+"]";var validChars1="[^\\s"+invalidchars+"]";var quotedUser=/(\"[^\"]*\"\')/;var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;var atom=validChars+"+";var atom1=validChars1+"+";var word="("+atom+"|"+quotedUser+")";var word1="("+atom1+"|"+quotedUser+")";var userPat=new RegExp("^"+word+"(\\."+word+")*$");var domainPat=new RegExp("^"+word1+"("+word1+")*$");if(emailStr==""){return"An email address is required";}else{var NewemailStr=emailStr;}
var matchArray=NewemailStr.match(emailPat);if(matchArray==null){return"E-mail address is not a valid format (check @ and .'s)";}
var user=matchArray[1];var domain=matchArray[2];if(user.match(userPat)==null){return"The username in the email address doesn't seem to be valid.";}
var IPArray=domain.match(ipDomainPat);if(IPArray!=null){for(var i=1;i<=4;i++){if(IPArray[i]>255){return"Destination IP address in the email address is invalid!";}}
return true;}
var domainArray=domain.match(domainPat);if(domainArray==null){return"The domain name in the email address doesn't seem to be valid.";}
if(domain.length>0){if(domain.charAt(0)=="."){return"The domain name in the email address doesn't seem to be valid.";}else if(domain.charAt(domain.length-1)=="."){return"The domain name in the email address doesn't seem to be valid.";}else{var errors=0;for(var k=1;k<domain.length;k++){if(domain.charAt(k)=="."){errors++;}
if(domain.charAt(k)=="."&&domain.charAt(k+1)=="."){errors=errors+5;k=domain.length;}}
if(errors>4){return"The domain name in the email address doesn't seem to be valid.";}}}
var atomPat=new RegExp(atom,"g");var domArr=domain.match(atomPat);var len=domArr.length;if(domArr[domArr.length-1].length<2){return"The email address must end in a valid domain.";}
if(len<2){return"This email address is missing a hostname!";}
return"good";}
function validateEmail(emailAddr){var emailAlert=checkEmail(emailAddr);if(emailAlert=="good"){return true;}else{alert(emailAlert);return false;}}
function SWFObject(){this.addVariable=function(a,b){switch(a){case"file":this.file=unescape(b);}};this.useExpressInstall=function(){};this.write=function(a){$("#"+a).remove();PPF.newPlayer(this.file||"");};return this;}
SWFObject.proxy=true;var PPF=new PodcastPlayerFactory();function PodcastPlayerFactory(){this.counter=10;this.loadLibrary=function(fn){if(typeof SWFObject=="undefined"||SWFObject.proxy){delete SWFObject;$.getScript("http://media.techtarget.com/bitpipe/player/swfobject.js",fn);}else if(fn){fn();}};var self=this;this.writePlayer=function(id,url){var i=id.substring(12);var so=new SWFObject("http://media.techtarget.com/bitpipe/player/mp3player.swf","mp3player"+i,"225","175","7","#CCCCCC");so.addVariable("file",escape(url));so.addVariable("displayheight","155");so.addVariable("displaywidth","225");so.addVariable("height","175");so.addVariable("width","225");so.addVariable("shownavigation","true");so.addVariable("overstretch","none");so.useExpressInstall('http://media.techtarget.com/bitpipe/player/expressinstall.swf');so.write(id);};this.newPlayer=function(url){var id="flashcontent"+(++this.counter);document.write('<div id="'+id+'"><strong>You must have Adobe Flash Player 7 or above to view this content.</strong> '+'See <a href="http://www.adobe.com/products/flashplayer/">http://www.adobe.com/products/flashplayer</a> to download now.</div>');if(typeof SWFObject=="undefined"||SWFObject.proxy){this.loadLibrary(function(){self.writePlayer(id,url);});return false;}else{this.writePlayer(id,url);return true;}};}
document.write('<link rel="stylesheet" href="'+ENV_mediaHost+'/css/tt_thickbox_reg.css" type="text/css" media="screen" />');document.write('<script src="http://admin.brightcove.com/js/experience_util.js" type="text/javascript"></scr'+'ipt>');document.write('<script src="'+ENV_mediaHost+'/javascript/tt_video.js" type="text/javascript"></scr'+'ipt>');if(typeof ENV_name=="undefined")var ENV_name='PROD';var ENV_user=(ENV_name==='PROD')?'users.techtarget.com':(ENV_name==='QA')?'users.qa.techtarget.com':'users-0.eng.techtarget.com';var crsCookieCheck={datav2cookie:"",exists:false,uid:"",email:"",regServer:ENV_user,load:function(){this.datav2cookie=getCookieValue("Datav2");this.uid=(this.datav2cookie)?this.parse(this.datav2cookie,"dgUserID","%0A"):"";this.email=(this.datav2cookie)?this.parse(this.datav2cookie,"dgUserName","%00"):"";this.exists=(this.uid!=""&&this.email!="");},parse:function(cookie,token,delimit){return cookie.substring((start=cookie.indexOf(token)+token.length),((end=cookie.indexOf(delimit,start))!=-1?end:cookie.length));},isMissingCrs:function(){var crs=getCookieValue("crs");return(this.exists&&crs=="");},doCheck:function(){if(this.isMissingCrs()){var src="http://"+this.regServer+"/registration/json/common/SetCrsCookieWithCallback"+"?callback=loadCookieCallback"+"&userid="+this.uid+"&email="+this.email+"&domain="+window.location.hostname;$.ajax({dataType:'jsonp',data:'',jsonp:'loadCookieCallback',url:src});}}};crsCookieCheck.load();function loadCookieCallback(data){$.each(data.results,function(i,item){if(item.name=="crs"){if(typeof item.value!="undefined"){cookieValue=unescape(item.value);now=new Date();daysFromNow=new Date(now.getTime()+(365*24*60*60*1000));setCookie("crs",cookieValue,daysFromNow.toGMTString(),"/",/[^\.]+(?:\.|\.co\.|\.com\.)[^\.]+$/.exec(window.location.hostname));}}});}
$(document).ready(function($){crsCookieCheck.doCheck();if((ENV_name=="PROD")||(getURLParamValue("msft")=="on")){var msftSRC="http://view.atdmt.com/action/MSFT_TechTarget_AE_ExtData/v3/atc1."+SITE_name+"/atc2."+zone+"/atc3."+taxNameWithOutSpecialChars+"/atc4."+SITE_hostName;var oMSFTImg=document.createElement("img");oMSFTImg.setAttribute("src",msftSRC);oMSFTImg.setAttribute("style","width: 1px; height: 1px; display: none;");if(getURLParamValue("msft")=="on"){alert("MSFT URL = "+msftSRC);}
document.getElementsByTagName("body")[0].appendChild(oMSFTImg);}
if(indexLogin!="-1"){$("#loginBand > .membershipLinks").prepend("<em>You're logged in as:</em> <strong>"+DisplayName+" </strong>").children("a").each(function(i){if(i==0){$(this).text("Edit your Profile");}else{$(this).attr("href",SITE_logoutURL).text("Log-out");}});$("#siteIndexMembers > ul > li").children("a").each(function(i){if(i==0){$(this).attr("href",SITE_logoutURL).text("Logout");}else{$(this).text("Edit Profile").parents("ul").eq(0).prepend($(this).parent());}});$("#mlRegister a").text("Edit your profile");$("#mlLogin a").attr("href",SITE_logoutURL).text("Logout");$("#mlLogin").before('<li id="mlLoginIdentity">You\'re logged in as: <span class="mlUserName">'+DisplayName+'</span></li>').attr("id","mlLogout").insertAfter($("#mlRegister").attr("id","mlEditProfile"));}});
