<!--

/*

Author: Alex Osipov (alex@acky.net)
Publisher: ACKY.NET

*/

// Global variables.
domain		= '';
path		= '/';
secure		= 0;

// Function to save a field.
function save_field(obj) {
    var newcook = '';
	try {
	  var cookie_value = '';
	  var objType = new String(obj.type);
	  switch(objType.toLowerCase()) {
	 	 case "checkbox" :
			if (obj.checked) cookie_value = 'cookie'+obj.name + '=[1]'
			else cookie_value = 'cookie'+obj.name + '=[0]'
			break;
		 case "undefined" :
			// a.k.a. radio field.
			for (var i = 0; i < obj.length; i++) {
				if (obj[i].checked) cookie_value = 'cookie'+obj[i].name + '=[' + i + ']'
			}
			break;
		 case "select-one" :
			cookie_value = 'cookie'+obj.name + '=[' + obj.selectedIndex + ']';
			break;
		 case "select-multiple" :
			cookie_value = 'cookie'+obj.name + '=[';
			for (var i = 0; i < obj.options.length; i++) {
				if (obj.options[i].selected) cookie_value += '+' + i
			}
			cookie_value += ']';
			break;
		 default :
			// We assume all other fields will have
			// a valid obj.name and obj.value
			cookie_value = 'cookie'+obj.name + '=[' + obj.value + ']';
	  }
	  if (cookie_value) {
		  var expires = new Date();
		  //expires.setYear(expires.getYear() + 1);
		  expires.setMonth(expires.getMonth() + 1); 
		  newcook = cookie_value +
		  ((domain.length > 0) ? '; domain=' + domain : '') +
		  ((path) ? '; path=' + path : '') +
		  ((secure) ? '; secure' : '') +
		  '; expires=' + expires.toGMTString();
 	  }
	}catch(e){
		newcook = '';
	}
	if (newcook) {
	  this.document.cookie = newcook;
	}
	return 1;
}

// Function to retrieve a field.
function retrieve_field(obj) {
	//alert('test2');
	var cookie = '', real_value = '';
	cookie = document.cookie;
	try {
	var objType = new String(obj.type);
	if (obj.name)
		var objName = new String('cookie'+obj.name);
	else
		var objName = new String('cookie'+obj[0].name);
	var offset_start = cookie.indexOf(objName + '=[');
	if (offset_start == -1) return 1;
	var offset_start_length = objName.length + 2;
	offset_start = offset_start + offset_start_length;
	var offset_end = cookie.indexOf(']', offset_start);
	real_value = cookie.substring(offset_start, offset_end);
	switch(objType.toLowerCase()) {
		case "checkbox" :
			if (real_value == '1') obj.checked = 1
			else obj.checked = 0
			break;
		case "undefined" :
			obj[real_value].checked = 1;
			break;
		case "select-one" :
			obj.selectedIndex = real_value;
			break;
		case "select-multiple" :
			for (var i = 0; i < obj.options.length; i++) {
				if ((real_value.indexOf('+' + i)) > -1)
					obj.options[i].selected = 1;
				else
					obj.options[i].selected = 0;
			}
			break;
		default :
			obj.value = real_value;
			break;
	}
	}catch(e){
		 real_value = '';
	}

	return 1;
}
// End JavaScript -->
