function LoadFormData()
{
	var formdata = GetCookie('formdata') != null ? GetCookie('formdata') : '';
	if (formdata == '') return;
	
	var values = formdata.split("\t");
	var length = values.length;
	
	for (var i = 0; i < length; i++)
	{
		var tmp = values[i].split("=");
		var id = tmp[0];
		var value = tmp[1];
		value = decodeEscapeCharacter(value);
		
		if (!document.getElementById(id)) continue;
		
		var elem = document.getElementById(id);
		var type = elem.type;
		
		if (type == "text" || type == "textarea" || type == "hidden")
		{
			elem.value = value;
		}
		else if (type == "radio" || type == "checkbox")
		{
			if (elem.value == value) elem.checked = true;
		}
		else if (type == "select-one")
		{
			var opslength = elem.options.length;
			
			for (var j = 0; j < opslength; j++)
			{
				if (elem.options[j].value == value)
				{
					elem.options[j].selected = true;
					break;
				}
			}
		}
		else if (type == "select-multiple")
		{
			var mvalues = value.split("\t");
			var mlength = mvalues.length;
			
			for (var k = 0; k < mlength; k++)
			{
				var opslength = elem.options.length;
				
				for (var j = 0; j < opslength; j++)
				{
					if (elem.options[j].value == mvalues[k])
					{
						elem.options[j].selected = true;
					}
				}
			}
		}
	}
}

function SaveFormData()
{
	var length = document.forms[0].elements.length;
	var formdata = '';
	
	for (var i = 0; i < length; i++)
	{
		var elem	= document.forms[0].elements[i];
		var id		= elem.id;
		var type	= elem.type;
		var value	= elem.value;
		value = encodeEscapeCharacter(value);
		
		if (id == "" || type == undefined || value == undefined) continue;
		
		if (type == "text" || type == "textarea" || type == "hidden")
		{
			formdata += id+"="+value;
		}
		else if (type == "radio" || type == "checkbox")
		{
			if (elem.checked)
			{
				formdata += id+"="+value;
			}
		}
		else if (type == "select-one")
		{
			formdata += id+"="+(elem.options[elem.selectedIndex].value);
		}
		else if (type == "select-multiple")
		{
			var opslength = elem.options.length;
			formdata += id+"=";
			
			for (var j = 0; j < opslength; j++)
			{
				if (elem.options[j].selected)
				{
					formdata += elem.options[j].value+"\t";
				}
			}
		}
		
		formdata += "\t";
	}
	
	SetCookie('formdata', formdata, 0);
}

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, term)
{
	if (term)
	{
		var expires = new Date();
		term += expires.getMonth();
		expires.setMonth(term%12);
		expires.setFullYear(expires.getFullYear()+parseInt(term/12));
		expires = expires.toGMTString();
		
		document.cookie = name+"="+escape(value)+"; expires="+expires;
	}
	else
	{
		document.cookie = name+"="+escape(value);
	}
}

function getCookieVal(offset)
{
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1) endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}

function EnableChkBox(flag)
{
	for (var i = 1; i <= 3; i++)
	{
		document.getElementById('resexcp_'+i).checked = false;
		document.getElementById('resexcp_'+i).disabled = !flag;
	}
}

function encodeEscapeCharacter(value)
{
	if (!value) return value;
	
	value = value.replace(/\t/g, "");
	value = value.replace(/\"/g, "&quot;");
	value = value.replace(/=/g, "&eq;");
	
	return value;
}

function decodeEscapeCharacter(value)
{
	if (!value) return value;

	value = value.replace(/&quot;/g, "\"");
	value = value.replace(/&eq;/g, "=");
	
	return value;
}
