//********cookies management******
//var path = "/";
//var domain = window.location.host;
var path;
var domain;
var expMins = 10;
var enable_page_reload=false;
//********************************

//********tag management**********
tag = new Array(2)
tag[0] = "promo_id";
tag[1] = "referrer";
//********************************

var submit_page = "";

function getCookie (name) {  
	var arg = name + "=";  
	var alen = arg.length;  
	var clen = document.cookie.length;  
	var i = 0;  
	while (i < clen) {    
		var j = i + alen;    
		if (document.cookie.substring(i, j) == arg)      
			return getCookieVal (j);    
		i = document.cookie.indexOf(" ", i) + 1;    
		if (i == 0) break;   
	}  
	return null;
}

function setCookie (name, value) {  
	var argv = setCookie.arguments;  
	var argc = setCookie.arguments.length;  
	var expires = (argc > 2) ? argv[2] : null;  
	var secure = (argc > 5) ? argv[5] : false;  
	var exp = new Date();
	exp.setTime(exp.getTime() + (expMins*60*1000));
	document.cookie = name + "=" + escape (value) + 
	((expires == null) ? ("; expires=" + exp.toGMTString()) : ("; expires=" + expires.toGMTString())) + 
	((path == null) ? "" : ("; path=" + path)) +  
	((domain == null) ? "" : ("; domain=" + domain)) +    
	((secure == true) ? "; secure" : "");
}

function deleteCookie (name) {  
	var exp = new Date();  
	exp.setTime (exp.getTime() - 1);  
	var cval = getCookie (name);  
	document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}

function deleteAllCookieParm () {
	for (i=0; i < tag.length ; i++)
		deleteCookie (tag[i]);
}

function setAllCookieParm () {
	var parm_val = "";
	var new_url = window.location.search;
	var refresh = false;
	for (i=0; i < tag.length ; i++)
	{
		parm_val = getParm(window.location.search, tag[i]);
		if (parm_val != null)
		{
			setCookie (tag[i], parm_val);
		}else if (getCookie (tag[i]) != "" && getCookie (tag[i]) != null)
		{
			new_url = updParm(new_url, tag[i], getCookie(tag[i]))
			refresh = true;
		}
	}
	if (refresh)
	{
		//alert(new_url);
		if (enable_page_reload) window.location = new_url;
	}
}

function getCookieVal(offset) {
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1)
	endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}


function getParm(query_str, parm)
{
	var parm_pos = query_str.indexOf(parm + "=");
	if (parm_pos > 0){
		var equal_pos = query_str.indexOf("=", parm_pos);
		var and_pos = query_str.indexOf("&", parm_pos);
		if ( and_pos > 0 ){
			return query_str.substring(equal_pos + 1, and_pos);
		}else{
			return query_str.substring(equal_pos + 1, query_str.length);
		}
	}else{
		return null;
	}
}

function updParm(query_str, parm, value)
{
	var parm_val = getParm(query_str, parm);
	if (parm_val != null){
		var old_val = parm + "=" + parm_val;
		var new_val = parm + "=" + value
		return query_str.replace( old_val, new_val, query_str);
	}else{
		if (query_str.indexOf("=") > 0){
			return query_str + "&" + parm + "=" + value;
		}else{
			return query_str + "?" + parm + "=" + value;
		}
	}	
}

function chgParm(query_str, org_link)
{
	var parm_val = "";
	var new_str = org_link;
	
	for (i=0; i < tag.length ; i++)
	{
		parm_val = getParm(query_str, tag[i]);
		
		if (parm_val != null){
			new_str=updParm(new_str, tag[i], parm_val);
			setCookie(tag[i], parm_val);
			//alert("from query string: " + parm_val);
		}else{
			if ( getCookie(tag[i]) != null ){
				parm_val=getCookie(tag[i]);
				new_str=updParm(new_str, tag[i], parm_val);
				//alert("from cookies: " + parm_val);
			}
		}
	}
	return new_str;
}

function refer_parm(org_str)
{
	return chgParm(window.location.search, org_str);
}

function ref_newwin(org_ref)
{
	window.open(refer_parm(org_ref));
}

function ref(org_ref)
{
	window.location=refer_parm(org_ref);
}	

//for hyperlink onClick
function refer_url(obj)
{
	obj.search=chgParm(window.location.search, obj.search);
}

//for submission form onSubmit
function refer_form(obj)
{
	obj.action=chgParm(window.location.search, obj.action);
}

//*****set cookies on page start*****
setAllCookieParm ();