var toggleCN = "toggle";

function getCN(id){
	return id.indexOf("g")==0 ? "toggleglobal" : toggleCN;
}

function setCookie(id,val){
	var d = new Date();
	d.setFullYear(d.getFullYear()+1);
	var cn = getCN(id);
	xSetCookie(cn, val, d);
}

function toggleToExpanded(el)
{
	removeClassName(el, "Contracted");
	if(hasClass(el, "Navigation"))
		removeClassName(el, "ContractedNavigation");
	if(hasClass(el, "Personal"))
		removeClassName(el, "ContractedPersonal");
	return true;
}
function toggleToContracted(el)
{
	addClassName(el, "Contracted");
	if(hasClass(el, "Navigation"))
		addClassName(el, "ContractedNavigation");
	if(hasClass(el, "Personal"))
		addClassName(el, "ContractedPersonal");
	return false;
}
function toggleClass(el)
{
	if(hasClass(el, "Contracted"))
		return toggleToExpanded(el);
	else
		return toggleToContracted(el);
}

function toggle(id,save){
	if(!toggleClass(id))
	{
		var c = xGetCookie(getCN(id));

		if(!c)
			c = id+";";
		else if(c.indexOf(id) < 0)
			c = c + id+";";

		if(save)
			setCookie(id, c);
	}
	else
	{
		var c = xGetCookie(getCN(id));
		if(c) {
			var ci = c.indexOf(id);
			if(ci>=0) {
				c = c.substring(0, ci) + c.substring(ci+id.length+1, c.length);

				if(save)
					setCookie(id, c);
			}
		}
	}
}

function toggleInit(tpid){
	toggleCN = "toggle"+tpid;
	toggleAll(toggleCN);
	toggleAll("toggleglobal");
}

function toggleAll(cn){
	var c = xGetCookie(cn);
	if(c){
		var ids = c.split(";");
		for(var i=0; i<ids.length; i++)
			if(ids[i].length>0){
				toggleToContracted(ids[i]);
			}
	}
}

