function isBlank(item) {
	item = String(item).toLowerCase();
	if(item == "undefined" || item == "" || item == "null") return true;
	else return false;
}
function getCurrentDomainName() {
	var url = String(location);
	var domainName = extractDomain(url);
	return domainName;
}
function extractDomain(url) {
	var url = url.replace("http://", "");
	var slashIndex = url.indexOf("/");
	if(slashIndex == -1) slashIndex = url.length;
	var url = url.substring(0, slashIndex);
	var urlSectionArray = url.split('.');
	var urlSectionArrayLength = urlSectionArray.length;
	var domainName = "";
	for(var i=urlSectionArrayLength - 2;i<urlSectionArrayLength; i++) {
		domainName += "." + urlSectionArray[i];
	}
	return domainName;
}
function pdGetCookie(cookieName) {
	var allCookies = String(document.cookie);
	var cookieStart = allCookies.indexOf(cookieName + "=");
	if(cookieStart == -1) return "";
	cookieStart = cookieStart + cookieName.length + 1;
	var cookieEnd = allCookies.indexOf(";", cookieStart);
	if(cookieEnd == -1) cookieEnd = allCookies.length;
	var cookieValue = allCookies.substring(cookieStart, cookieEnd);
	cookieValue = decodeURIComponent(cookieValue);
	return cookieValue;
}
function pdSetCookie(cookieName, cookieValue, cookieDomain, cookiePath, expirationDate) {
	if(isBlank(cookieDomain)) cookieDomain = getCurrentDomainName();
	if(isBlank(cookiePath)) cookiePath = "/";
	var cookieString = encodeURIComponent(cookieName) + "=" + encodeURIComponent(cookieValue) + ";domain=" + cookieDomain + ";path=" + cookiePath;
	if(!isBlank(expirationDate)) {
		cookieString += ";expires=" + expirationDate.toGMTString();
	}
	document.cookie = cookieString;
	return true;
}
function pdGetQueryStringVariable(variable) { 
	var query = window.location.search.substring(1); 
	var vars = query.split("&"); 
	for (var i=0;i<vars.length;i++) {
		var pair = vars[i].split("="); 
		if (pair[0] == variable)return pair[1]; 
	}
	return "";
}
function pdReferralCodeCapture() {
	var pdReferralCode = pdGetQueryStringVariable("pdRewardsRef");
	var pdRememberedReferralCode = pdGetCookie("pdRememberedReferralCode");	
	if(!isBlank(pdReferralCode) && pdRememberedReferralCode != pdReferralCode) {
		var expirationDateTime = (new Date()).getTime();
		expirationDateTime =  (expirationDateTime - 0) + (365 * 24 * 60 * 60 * 1000);
		var expirationDate = new Date(expirationDateTime);	
		pdSetCookie("pdRememberedReferralCode", pdReferralCode, "", "", expirationDate);
		var cookieString = "pdReferralCode=" + pdReferralCode;
		cookieString += "&domain=yahoo.net";
		cookieString += "&path=/";
		var finalRedirect = String(document.location.href);
		var redirect = "http://lib.store.yahoo.net/lib/" + encodeURIComponent(tempYahooStoreId) + "/pdMyAccountLoginRedirect.html?redirect=" + encodeURIComponent(finalRedirect) + "&cookies=" + encodeURIComponent(cookieString);
		location = redirect;
	}
}
pdReferralCodeCapture();
