var amzUrlRegex='https?\://(www\.)?amazon\.(com|co\.uk|ca|de|cn|fr|co\.jp|it)/';jQuery(document).ready(function(){if(containsAmazonLinks()){country=getCookie("loc");if(country){rewrite(country);}else{jQuery.getJSON('http://api.ipinfodb.com/v3/ip-country/?key='+MyAjax.key+' &format=json&callback=?',{},function(response){setCookie("loc",response.countryCode,365);rewrite(response.countryCode);});}}});function rewrite(country){if(!country)return;var amzTldToUse;amzTldToUse=getTLDFromLocation(country);if(!amzTldToUse)return;var amzMatch;var linksToRewrite={};var amzLocs=[];var urlMap=JSON.parse(base64_decode(MyAjax.urlMap));for(var i=0;i<document.links.length;i++){amzMatch=document.links[i].href.match(amzUrlRegex);if(amzMatch){var linkTld=amzMatch[amzMatch.length-1];if(urlMap[amzTldToUse]&&urlMap[amzTldToUse][document.links[i].href]){document.links[i].href=urlMap[amzTldToUse][document.links[i].href];}else if(!(amzTldToUse===linkTld)){linksToRewrite[document.links[i].href]=linkTld;amzLocs.push(i);}else if(!hasAffLink(document.links[i].href)){linksToRewrite[document.links[i].href]=linkTld;amzLocs.push(i);}}}
if(!jQuery.isEmptyObject(linksToRewrite)){jQuery.post(MyAjax.ajaxurl,{action:'amz_ajax_submit',urlList:linksToRewrite,amzTld:amzTldToUse,slug:MyAjax.slug},function(response){for(var j=0;j<amzLocs.length;j++){var newLink=response[document.links[amzLocs[j]].href];if(newLink){document.links[amzLocs[j]].href=newLink;}}});}}
function hasAffLink(link){var affRegex="[\&\?]tag\=";return link.match(affRegex);}
function getTLDFromLocation(country){switch(country){case'US':return'com';case'GB':case'IE':case'UK':return'co.uk';case'CA':return'ca';case'AT':case'DE':return'de';case'CN':return'cn';case'FR':return'fr';case'JP':return'co.jp';case'IT':return'it';case'ES':return'es';default:return;}}
function containsAmazonLinks(){for(var i=0;i<document.links.length;i++){if(document.links[i].href.match(amzUrlRegex)){return true;}}
return false;}
function setCookie(name,value,exdays){var exdate=new Date();exdate.setDate(exdate.getDate()+exdays);var value=escape(value)+((exdays==null)?"":"; expires="+exdate.toUTCString());document.cookie=name+"="+value;}
function getCookie(name){var i,x,y,ARRcookies=document.cookie.split(";");for(i=0;i<ARRcookies.length;i++){x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);x=x.replace(/^\s+|\s+$/g,"");if(x==name){return unescape(y);}}}
function utf8_decode(str_data){var tmp_arr=[],i=0,ac=0,c1=0,c2=0,c3=0;str_data+='';while(i<str_data.length){c1=str_data.charCodeAt(i);if(c1<128){tmp_arr[ac++]=String.fromCharCode(c1);i++;}else if(c1>191&&c1<224){c2=str_data.charCodeAt(i+1);tmp_arr[ac++]=String.fromCharCode(((c1&31)<<6)|(c2&63));i+=2;}else{c2=str_data.charCodeAt(i+1);c3=str_data.charCodeAt(i+2);tmp_arr[ac++]=String.fromCharCode(((c1&15)<<12)|((c2&63)<<6)|(c3&63));i+=3;}}
return tmp_arr.join('');}
function base64_decode(data){var b64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var o1,o2,o3,h1,h2,h3,h4,bits,i=0,ac=0,dec="",tmp_arr=[];if(!data){return data;}
data+='';do{h1=b64.indexOf(data.charAt(i++));h2=b64.indexOf(data.charAt(i++));h3=b64.indexOf(data.charAt(i++));h4=b64.indexOf(data.charAt(i++));bits=h1<<18|h2<<12|h3<<6|h4;o1=bits>>16&0xff;o2=bits>>8&0xff;o3=bits&0xff;if(h3==64){tmp_arr[ac++]=String.fromCharCode(o1);}else if(h4==64){tmp_arr[ac++]=String.fromCharCode(o1,o2);}else{tmp_arr[ac++]=String.fromCharCode(o1,o2,o3);}}while(i<data.length);dec=tmp_arr.join('');dec=this.utf8_decode(dec);return dec;}
