var formData = null;

function toggleAdvancedSearch(obj) {
    var dd = getNextSiblingByElement(obj);
    var h = dd.childNodes[0];
    if (dd.style.display == 'none') {
    	obj.innerHTML = 'Eenvoudig zoeken';
    	dd.style.display = 'block';
    	h.value = 'yes';
    } else {
    	obj.innerHTML = 'Uitgebreid zoeken';
    	dd.style.display = 'none';
      h.value = 'no';
    } 
}

/**
 * Fills a searchForm with the given formId with the given formData
 */
function fillForms(formId, formData) {
   var f = document.getElementById(formId);
   if (!f) return;
   
   for (var i = 0; i < f.elements.length; i++) {
      var fieldName = f.elements[i].name;
      if (fieldName && formData[fieldName]) {
         switch (f.elements[i].tagName.toLowerCase()) {
            case 'input':
               fillInput(f.elements[i], formData[fieldName]);
               break;
            case 'select':
               fillOptions(f.elements[i], formData[fieldName]);
               break;
         }
      }
   }
   
   if (formData['advancedSearch'] == 'yes') {
      var advancedSearchLabel = document.getElementById('advancedSearchLabel');
      if (advancedSearchLabel) {
         toggleAdvancedSearch(advancedSearchLabel);
      }
   }
}

function fillInput(field, value) {
   switch (field.type) {
      case 'hidden':
      case 'text':
         field.value = value;
         break;
      case 'checkbox':
         if (value && value.indexOf(field.value) >= 0) {
            field.checked = 'checked';
         }
         break;
   }
}

function fillOptions(field, value) {
   for (var i = 0; i < field.childNodes.length; i++) {
      var c = field.childNodes[i];
      if (c.tagName && c.tagName.toLowerCase() == 'option') {
         if (c.value == value) {
            c.selected = 'selected';
         }
      }
   }
}
