function delete_array(ary) {
	var beg = next_pos(ary) - 1;
	for (var i = beg ; i > -1; i--) {
		ary[i] = null;
	} // for
} // function

function init_cookie_array() {
	var ary = new Array(null);
	return ary;
} // function

function set_cookie(name, value, days, path, domain, secure) {
	if (days) {
		var thisdate = new Date();
		thisdate.setTime(thisdate.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+thisdate.toGMTString();
	} else {
		var expires = "";
	} // if
	
	document.cookie = name+"="+value+expires+
		(( path ) ? ";path=" + path : "") + 
		(( domain ) ? ";domain=" + domain : "") +
		(( secure ) ? ";secure" : "");
} // function

function get_cookie(name) {
	var dcookie = document.cookie;
	var cname = name + "=";
	var clen = dcookie.length;
	var cbegin = 0;
	
	while (cbegin < clen) {
		var vbegin = cbegin + cname.length;
		if (dcookie.substring(cbegin, vbegin) == cname) {
			var vend = dcookie.indexOf (";", vbegin);
			if (vend == -1) vend = clen;
			return unescape(dcookie.substring(vbegin, vend));
		} // if
		cbegin = dcookie.indexOf(" ", cbegin) + 1;
		if (cbegin == 0) break;
	} // while
	
	return null;
} // function

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

function get_array(name, ary) {
	delete_array(ary);
	
	var ent = get_cookie(name);
	
	if (ent) {
		i = 1;
		while (ent.indexOf('|') != '-1') {
			ary[i] = ent.substring(0,ent.indexOf('|'));
			i++;
			ent = ent.substring(ent.indexOf('|')+1, ent.length);
		} // while
	} // if
} // function

function set_array(name, ary, expires) {
	var value = '';
	
	for (var i = 1; ary[i]; i++) {
		value += ary[i] + '|';
	} // for
	
	set_cookie(name, value, expires);
} // function

function get_id_pos(name, id, ary) {
	var pos;
	get_array(name, ary);
	
	for (i=1; i<ary.length-1; i++) {
		if (ary[i] == id) {
			pos = i;
			break;	
		} // if
	} // for
	return pos;
} // function

function is_in_array(name, id, ary) {
	var found = 0;
	get_array(name, ary);
	
	if (get_id_pos(name, id, ary)) {
		found = 1;
	} else {
		found =0;
	}
	return found;
} // function

function del_pos(name, ary, pos, expires) {
	var value = '';
	
	get_array(name, ary);
	
	for (var i = 1; i < pos; i++) {
		value += ary[i] + '|';
	} // for
	
	for (var j = pos + 1; ary[j]; j++) {
		value += ary[j] + '|';
	} // for
	
	set_cookie(name, value, expires);
} // function

// gets next position in cookie array
function next_pos(ary) {
	var j = 0;
	
	for (var i = 1; ary[i]; i++) {
		j = i
	} // for
	
	return j + 1;
} // function

function dump_cookies() {
	if (document.cookie == '') {
		document.write('No Cookies Found');
	} else {
		thisCookie = document.cookie.split('; ');
		for (i=0; i<thisCookie.length; i++) {
			document.write(thisCookie[i] + '<br \/>');
		} // for
	} // if
} // function
