// Use this function to retrieve a cookie.

function getCookie(name) {
var cname = name + "=";
var dc = document.cookie;
	if (dc.length > 0) {
	begin = dc.indexOf(cname);
		if (begin != -1) {
		begin += cname.length;
		end = dc.indexOf(";", begin);
			if(end == -1) end = dc.length;
			return unescape(dc.substring(begin, end));
	}
}

return null;
}

// Use this function to save a cookie

function setCookie(name, value, expires) {
document.cookie = name + "=" + escape(value) + "; path=/" + ((expires == null) ? "" : "; expires=" + expires.toGMTString());
}

// Use this function to delete a cookie

function delCookie(name) {
document.cookie = name + "=; expires=Thu, 03-Jan-70 00:00:01 GMT" + "; path=/";
}

// Functions that remember form input

function setValue(element) {
setCookie(element.name, element.value, exp);
}

function getValue(element) {
var value = getCookie(element.name);
	if (value != null) element.value = value;
}


// Chip Functions

function setChip(cookie, name, value) {
var dc = getCookie(cookie);
var cv = getChip(name);
var cn = name + '=';
	if (cv != null) {
	var start = dc.indexOf(cn);
		if(start != -1) {
		var end = dc.indexOf('|', start);
		setCookie(cookie, dc.substring(0, start) + cn + value + '|' + dc.substring)
		}
	}
	else {
		if (dc != null) dc += cn + value + '|';
		else dc = cn + value + '|';
	setCookie(cookie, dc, exp);
	}
}

function getChip(cookie, name) {
var cn = name + '=';
var dc = getCookie(cookie);
	if(dc != null) {
	var start  = dc.indexOf(cn);
		if(start != -1) {
		start += cn.length;
		var end = dc.indexOf('|', start);
			if (end != -1) return unescape(dc.substring(start, end));
		}
	}
	
return null;

}

function delChip(cookie, name) {
var dc = getCookie(cookie);
var cv = getChip(name);
var cn = name + '=';
	if (cv !=null) {
	var start = dc.indexOf(cn);
	var end = dc.indexOf('|', start);
	setCookie(cookie, dc.substring(0, start) + dc.substring(end + 1, dc.length), end)
	}
}
