
function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

function cookieForms() {  
  var mode = cookieForms.arguments[0];
  for(f=1; f<cookieForms.arguments.length; f++) {
    formName = cookieForms.arguments[f];
    if(mode == 'open') {    
      cookieValue = readCookie('saved_'+formName);
      if(cookieValue != null) {
        var cookieArray = cookieValue.split('#cf#');
        if(cookieArray.length == document[formName].elements.length) {
          for(i=0; i<document[formName].elements.length; i++) {
		    if(cookieArray[i].id != 'subRegionId'){
				if(cookieArray[i].substring(0,6) == 'select') { document[formName].elements[i].selectedIndex = cookieArray[i].substring(6, cookieArray[i].length); }
				else if((cookieArray[i] == 'cbtrue') || (cookieArray[i] == 'rbtrue')) { document[formName].elements[i].checked = true; }
				else if((cookieArray[i] == 'cbfalse') || (cookieArray[i] == 'rbfalse')) { document[formName].elements[i].checked = false; }
				else { document[formName].elements[i].value = (cookieArray[i]) ? cookieArray[i] : ''; }
			}
          }
        }
      }
    }
    if(mode == 'save') {    
      cookieValue = '';
      for(i=0; i<document[formName].elements.length; i++) {
		if(document[formName].elements[i].id != 'subRegionId'){
			fieldType = document[formName].elements[i].type;
			if(fieldType == 'password') { passValue = ''; }
			else if(fieldType == 'checkbox') { passValue = 'cb'+document[formName].elements[i].checked; }
			else if(fieldType == 'radio' && document[formName].elements[i].name != 'searchType') { passValue = 'rb'+document[formName].elements[i].checked; }
			else if(fieldType == 'select-one') { passValue = 'select'+document[formName].elements[i].selectedIndex; }
			else { passValue = document[formName].elements[i].value; }
			cookieValue = cookieValue + passValue + '#cf#';
		}
      }
      cookieValue = cookieValue.substring(0, cookieValue.length-4);
      createCookie('saved_'+formName, cookieValue, 0.05);
    } 
	if(mode == 'delete') { 
		eraseCookie('saved_searchForm');
		eraseCookie('saved_gneForm');
		eraseCookie('saved_searchForm_Hotel');
		eraseCookie('saved_searchForm_Cars');
		eraseCookie('saved_holidaysForm');
		eraseCookie('saved_policysales');
		
		if(formName == 'searchForm'){
			eraseCookie('DOM_searchDirection');
		} else if(formName == 'gneForm') {
			eraseCookie('INT_searchDirection');
		} else if(formName == 'searchForm_Hotel') {
		} else if(formName == 'searchForm_Cars') {
		} else if(formName == 'holidaysForm') {
		} else if(formName == 'policysales') {
		} else {
			eraseCookie('DOM_searchDirection');
			eraseCookie('INT_searchDirection');
			eraseCookie('lastMinute');
			eraseCookie('subRegions');
		}
	}
  }
}

function setNavCookies(element, parent) {
    var text = element.innerText;
    if(text == null)
        text = element.textContent;
    var ptext = parent.innerText;
    if(ptext == null)
        ptext = parent.textContent;
    createCookie('topNavContent', ptext);
    createCookie('secNavContent', text);
}