

function getFormVariables(form) {
   // Gets all form elements and creates a GET/POST parameter string
   //
   if(typeof(form) == 'object') {
      elms = form.elements;
   }else {
      elms = document.forms[form].elements;
   }
   var result = '';
   for(var i=0;i<elms.length;i++) {
     if (elms[i].name) {
        if(((elms[i].type == 'checkbox') && (elms[i].checked)) || ((elms[i].type == 'radio') && (elms[i].checked)) || ((elms[i].type != 'checkbox') && (elms[i].type != 'radio'))) {
           result += '&'+escape(elms[i].name)+'='+escape(elms[i].value);
        }
     }
   }
   result = result.substring(1);
   //alert(result);
   return result;
}



function SaveFormCookie(formname,expiredays) {
   var exp = new Date();
   //alert(exp.getDate()+expiredays);
   exp.setDate(exp.getDate()+expiredays);
   ZetCookie(formname, 7, getFormVariables(formname));
}

function LoadFormCookie(formname) {
   var formdata = HaalCookie(formname);
   //alert(formdata);
   if(formdata != null) {
      var data = formdata.split('&');
      for(var i=0;i<data.length;i++) {
      //for(var i=0;i<4;i++) {
         var field = data[i].split('=');
         var value = unescape(field[1]);
         field     = unescape(field[0]);
         // haal het veld op:
         if(field.indexOf('[') < 0) {
            var theField = document.getElementsByName(field);
            //alert("["+field+"] "+theField.length);
            if (theField.length > 0) {
               fieldindex = 0
               if(theField.length > 1) {
                  for(var j=0;j<theField.length;j++) {
                     if(theField[j].form.name == formname) {
                        fieldindex = j;
                        break;
                     }
                  }
               }

               if(theField[fieldindex].type == 'checkbox') {
                  if(theField[fieldindex].value == value) {
                     theField[fieldindex].checked = 'checked';
                  }
               }else if(theField[fieldindex].type == 'radio') {
                  for(j=0;j<theField.length;j++) {
                     if(theField[j].value == value) {
                        theField[j].checked  = 'checked';
                     }
                  }
               }else if(theField[fieldindex].type == 'select-one') {
                  for(j=0;j<theField[fieldindex].length;j++) {
                     if(theField[fieldindex].options[j].value == value) {
                        theField[fieldindex].selectedIndex = j;
                     }
                  }
               }else if(theField[fieldindex].type != 'hidden') {
                  // Normaal input field
                  //
                  //alert(theField[fieldindex].name+" = "+value)
                  theField[fieldindex].value = value;
               }
            }
         }
         else {
             // alert(field);
         }
      }
   }
}


function ZetCookie(iNameOfCookie, iExpireHours, sContent){
//alert("ZetCookie "+iNameOfCookie);
//sContent= "bla";
   var ExpireDate = new Date ();
   ExpireDate.setTime(ExpireDate.getTime() + (iExpireHours * 3600 * 1000));
//alert("ZetCookie: "+iNameOfCookie + "=" + escape(sContent) + ((iExpireHours == null) ? "" : "; expires=" + ExpireDate.toGMTString()));

   document.cookie = iNameOfCookie + "=" +  escape(sContent) +
                     ((iExpireHours == null) ? "" : "; expires=" + ExpireDate.toGMTString()) + "; " +
                     "path=/" 
//alert("ZetCookie: "+document.cookie);
}

function HaalCookie(iNameOfCookie){

//alert("HaalCookie: "+iNameOfCookie+"\n"+document.cookie);
   if (document.cookie.length > 0){
      begin = document.cookie.indexOf(iNameOfCookie+"=");
      if (begin != -1){
         begin += iNameOfCookie.length+1;
         end = document.cookie.indexOf(";", begin);
         if (end == -1) end = document.cookie.length;
         return unescape(document.cookie.substring(begin, end));
      }
   }
   return "";
}

