﻿ function initFilterDisplay(){
  hideExtraSearchParams();
  Tangora.Events.AddHandler(document.forms.rediger13.filtercontrol131_1, 'onchange', checkNextLevel);
  Tangora.Events.AddHandler(document.forms.rediger13.filtercontrol131_2, 'onchange', checkNextLevel);
}

function hideExtraSearchParams() {
  if(parseQueryString(location.search)["filtercontrol131_2"] == "0" || parseQueryString(location.search)["filtercontrol131_2"] == null)
  {
    document.rediger13.filtercontrol131_2.style.visibility="hidden";
  }
  if(parseQueryString(location.search)["filtercontrol131_3"] == "0" || parseQueryString(location.search)["filtercontrol131_3"] == null)
  {
    document.rediger13.filtercontrol131_3.style.visibility="hidden";  
  }
}

function checkNextLevel   (){
   if (document.rediger13.filtercontrol131_2.options.length > 1)
   {
    document.rediger13.filtercontrol131_2.style.visibility="visible";
   }
   else
   {
    document.rediger13.filtercontrol131_2.style.visibility="hidden";
   }
   if (document.rediger13.filtercontrol131_3.options.length > 1)
   {
    document.rediger13.filtercontrol131_3.style.visibility="visible";
   }
   else
   {
    document.rediger13.filtercontrol131_3.style.visibility="hidden";
   }

}

function parseQueryString(queryString){

  // define an object to contain the parsed query data
  var result = {};

  // if a query string wasn't specified, use the query string from the URI
  if (queryString == undefined){
    queryString = location.search ? location.search : '';
  }

  // remove the leading question mark from the query string if it is present
  if (queryString.charAt(0) == '?') queryString = queryString.substring(1);

  // replace plus signs in the query string with spaces
  queryString = queryString.replace(/\+/g, ' ');

  // split the query string around ampersands and semicolons
  var queryComponents = queryString.split(/[&;]/g);

  // loop over the query string components
  for (var i = 0; i < queryComponents.length; i++){

    // extract this component's key-value pair
    var keyValuePair = queryComponents[i].split('=');
    var key = decodeURIComponent(keyValuePair[0]);
    var value = decodeURIComponent(keyValuePair[1]);

    // update the parsed query data with this component's key-value pair
    if (!result[key]) result[key] = [];
    result[key].push((keyValuePair.length == 1) ? '' : value);

  }

  // return the parsed query data
  return result;

}


