function getCurrentFilters() {
    var filters = new Array();    
    return filters;
}
      
function addFilter(browserUrl, navPath, facetName, queryValue, displayValue, operator, isDiscrete) {
    var filters = getCurrentFilters();
    filters.push(createFilter(facetName, queryValue, displayValue, operator, isDiscrete));
    sendRequest(browserUrl, navPath, filters);
    return false;
}
  
function sendRequest(browserUrl, navPath, filters) {        
    var requestParams = [];
  
    for (var i = 0; i < filters.length; i++) {
      var prefix = "filter." + (i + 1);
      requestParams.push(prefix + ".facetName=" + encodeURIComponent(filters[i].facetName));
      requestParams.push(prefix + ".queryValue=" + encodeURIComponent(filters[i].queryValue));
      requestParams.push(prefix + ".displayValue=" + encodeURIComponent(filters[i].displayValue));
      requestParams.push(prefix + ".operator=" + encodeURIComponent(filters[i].operator));
      requestParams.push(prefix + ".isDiscrete=" + encodeURIComponent(filters[i].isDiscrete));
    }
      
    requestParams.push("activeNavPath=" + navPath);
    
    var queryString = requestParams.join("&");
    window.location = browserUrl + "?" + queryString;
}
  
  function createFilter(facetName, queryValue, displayValue, operator, isDiscrete) {
    var filter = new Object();
    filter.facetName = facetName;
    filter.queryValue = queryValue;
    filter.displayValue = displayValue;
    filter.operator = operator;
    filter.isDiscrete = isDiscrete;
    return filter;
  }