

var modified = false;

function ajaxfill(elemId,url,postFunction) {
  var xmlHttp = false;
  if (typeof XMLHttpRequest != 'undefined') {
    xmlHttp = new XMLHttpRequest();
  }
  if (!xmlHttp) {
    try {
      xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
      try {
        xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e) {
        xmlHttp  = false;
      }
    }
  }

  if (xmlHttp) {
    xmlHttp.onreadystatechange = function () {
      if (xmlHttp.readyState == 4) {
        var content = xmlHttp.responseText;
        var elem    = document.getElementById(elemId);

        elem.innerHTML = content;
        if (postFunction) {
          postFunction();
        }
      }
    };
    xmlHttp.open('GET', url, true);
    xmlHttp.send(null);
  }
}

function toggleSelector(id) {
  var ids = new Array();
  ids[0] = 'gfeldselector';
  ids[1] = 'stufenselector';
  ids[2] = 'standortselector';

  var imgIds = new Array();
  imgIds[0] = 'ps_gfeld_img';
  imgIds[1] = 'ps_stufe_img';
  imgIds[2] = 'ps_standort_img';

  for (var i=0; i<3; i++) { 
    var tempId = ids[i];
    var imgId  = imgIds[i];

    var elem   = document.getElementById(tempId);
    var curr   = elem.style.display;
    var image  = document.getElementById(imgId);

    if (tempId!=id) {
      elem.style.display = 'none';
      image.src = '/ps_arrow_right.gif';
    } else {
      if (curr.toLowerCase() == 'none') {
        elem.style.display = 'block';
        image.src = '/ps_arrow_down.gif';
      } else {
        elem.style.display = 'none';
        image.src = '/ps_arrow_right.gif';
      }
    }
  }
}

function getQueryFromPortlet() {
  var gfeldselector  = document.getElementById('gfeldselector');
  var checkboxes     = gfeldselector.getElementsByTagName('input');
  var nof_checkboxes = checkboxes.length;
  var gfelder        = '';

  for (var i=0; i<nof_checkboxes; i++) {
    var checkbox = checkboxes[i];
    if (checkbox.checked) {
      gfelder = gfelder + ',' + checkbox.value;
    }
  }

  var stufenselector = document.getElementById('stufenselector');
  var checkboxes     = stufenselector.getElementsByTagName('input');
  var nof_checkboxes = checkboxes.length;
  var stufen         = '';

  for (var i=0; i<nof_checkboxes; i++) {
    var checkbox = checkboxes[i];
    if (checkbox.checked) {
      stufen = stufen + ',' + checkbox.value;
    }
  }

  var standortselector = document.getElementById('standortselector');
  var checkboxes       = standortselector.getElementsByTagName('input');
  var nof_checkboxes   = checkboxes.length;
  var standorte        = '';

  for (var i=0; i<nof_checkboxes; i++) {
    var checkbox = checkboxes[i];
    if (checkbox.checked) {
      standorte = standorte + ',' + checkbox.value;
    }
  }

  var query = 'sgroups=' + '&sgfelder='+gfelder + '&sstufen='+stufen + '&sstandorte='+standorte;
  return query;
}

function updateSearchPortlet() {
  var urlbase = 'http://www.modelgroup.com/en/';
  var query   = getQueryFromPortlet();
  ajaxfill('gfeldselector',    urlbase+'getSearchPortletGfelderHTML?'+query,   null);
  ajaxfill('stufenselector',   urlbase+'getSearchPortletStufenHTML?'+query,    null);
  ajaxfill('standortselector', urlbase+'getSearchPortletStandorteHTML?'+query, null);
}

function markModified() {
  modified = true;
  updateSearchPortlet();
}

function startSearch() {
  var query = getQueryFromPortlet();
  window.location.href = 'http://www.modelgroup.com/en/products/product_search?' + query;
}

function resetSearch() {
  var gfeldselector  = document.getElementById('gfeldselector');
  var checkboxes     = gfeldselector.getElementsByTagName('input');
  var nof_checkboxes = checkboxes.length;
  for (var i=0; i<nof_checkboxes; i++) {
    var checkbox = checkboxes[i];
    checkbox.checked = false;
  }

  var stufenselector = document.getElementById('stufenselector');
  var checkboxes     = stufenselector.getElementsByTagName('input');
  var nof_checkboxes = checkboxes.length;
  for (var i=0; i<nof_checkboxes; i++) {
    var checkbox = checkboxes[i];
    checkbox.checked = false;
  }

  var standortselector = document.getElementById('standortselector');
  var checkboxes       = standortselector.getElementsByTagName('input');
  var nof_checkboxes   = checkboxes.length;
  for (var i=0; i<nof_checkboxes; i++) {
    var checkbox = checkboxes[i];
    checkbox.checked = false;
  }

  updateSearchPortlet();
  alert('Suchkriterien zurückgesetzt');
}

function disablePortlet() {
  var elem = document.getElementById('portal-column-two');
  if (elem) {
    elem.style.display = 'none';
  }
}

