/***********************************************
* Recall Form Values script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************
* MDB Modified to work on all form accross a site
***********************************************/

//Time in days to save form fields values after last visit
//Set to different value to reset cookie (ie: "101 days" instead of "100 days"):
var memoryduration="100 days"

function setformobjects(){
 var theforms=document.forms
 memorizearray=new Array()
 for (i=0; i< theforms.length; i++){
  for (j=0; j< theforms[i].elements.length; j++){
   if (theforms[i].elements[j].className.indexOf("memorize")!=-1 && theforms[i].elements[j].type=="text")
    memorizearray[memorizearray.length]=theforms[i].elements[j]
  }
 }
 var retrievedvalues=get_cookie("mvalue")
 if (retrievedvalues!=""){
  retrievedvalues=retrievedvalues.split("|")
  if (retrievedvalues[retrievedvalues.length-1]!=parseInt(memoryduration)) //reset cookie if var memoryduration has changed
   resetcookie("mvalue")
  else{
   for (i=0; i<memorizearray.length; i++){
    if (retrievedvalues[i]!="empty_value")
     memorizearray[i].value=retrievedvalues[i]
   }
  }
 }
}

function get_cookie(Name) {
 var search = Name + "="
 var returnvalue = "";
 if (document.cookie.length > 0) {
  offset = document.cookie.indexOf(search)
  if (offset != -1) { // if cookie exists
   offset += search.length
   end = document.cookie.indexOf(";", offset);
   if (end == -1)
    end = document.cookie.length;
   returnvalue=unescape(document.cookie.substring(offset, end))
  }
 }
 return returnvalue;
}

function resetcookie(id){
 var expireDate = new Date()
 expireDate.setDate(expireDate.getDate()-10)
 document.cookie = id+"=;path=/;expires=" + expireDate.toGMTString()
}

function saveformvalues(){
 var formvalues=new Array(), temp
 for (i=0; i<memorizearray.length; i++){
  temp=memorizearray[i].value!=""? memorizearray[i].value : "empty_value"
  formvalues[formvalues.length]=escape(temp)
 }
 formvalues[formvalues.length]=parseInt(memoryduration)
 formvalues=formvalues.join("|")
 var expireDate = new Date()
 expireDate.setDate(expireDate.getDate()+parseInt(memoryduration))
 document.cookie = "mvalue="+formvalues+"; path=/;expires=" + expireDate.toGMTString()
}


if (window.addEventListener)
 window.addEventListener("load", setformobjects, false)
else if (window.attachEvent)
 window.attachEvent("onload", setformobjects)
else if (document.getElementById)
 window.onload=setformobjects
 
if (document.getElementById)
 window.onunload=saveformvalues