var sAction;

$(document).ready(function(){
  filters(document.location.pathname);
});

function filter(Url, Property)
{
  //Get sort modes:
  if(document.getElementById('sort') != null) 
  {
    /*sSortMode=document.getElementById('sort').value;
    sOrderMode=document.getElementById('order').value;*/
    
    var refSortList = document.getElementById('sort');
    sSortMode = refSortList.options[refSortList.selectedIndex].value;
    
    var refOrderList = document.getElementById('order');
    sOrderMode = refOrderList.options[refOrderList.selectedIndex].value;    
    
  } else {
    sSortMode='';
    sOrderMode='';
  }

  //Disable sorting:  
  $('#sort').attr({disabled: 'true'});
  $('#order').attr({disabled: 'true'});
  
  sRequestUrl = Url + "/" + Property + ".aspx?forajax=true&sort=" + sSortMode + "&order=" + sOrderMode;
  sAction = Url + "/" + Property + ".aspx";
  
  $.ajax({
    url: sRequestUrl.replace('%26', '&'),
    cache: false,
    success: function(data) {
      DoRefreshProducts(data, sAction);
    }
  });
}

function DoRefreshProducts(data, sUrl)
{
  $('#content_locked').html(data);
  filters(sUrl);
  
  if(document.getElementById('sort') != null) 
  {
    $('#sort').val(sSortMode);
    $('#order').val(sOrderMode);
  }
  
  if(document.all)
  {
    FixFooter();
  } 
}

function verwijderFilter(sUrl, iFilter)
{
  var aUrl = null;
  var sNewUrl = '';
  var sOrderMode = '';
  var sOrderBy = '';
  var oDisplayDiv = null;
  var sRequestUrl = '';
  
  aUrl = sUrl.split('/');
  
  if(aUrl)
  {
    //Search for property and remove it:
    for(z=0;z<aUrl.length;z++)
    {
      if((aUrl[z] != iFilter) && (aUrl[z] != '') && (aUrl[z] != null))
      {
        sNewUrl += '/' + aUrl[z].toString();
      }
    }
  }
  
  //Get sortmodes:
  sOrderMode = $('#order').val();
  sOrderBy = $('#sort').val();
  
  //Build request URL:
  sRequestUrl = sNewUrl + '.aspx?forajax=true&sort=' + sOrderBy + '&mode' + sOrderMode;
  sRequestUrl = sRequestUrl.replace('%26', '&');
  
  $.ajax({
    url: sRequestUrl,
    cache: false,
    success: function(data){
      //Refresh products:
      DoRefreshProducts(data, sNewUrl);    
    }
  });
}

function filters(sFilterUrl)
{
  //Assumme numeric values are filter properties:
  var aUrl = null;
  var oCurrentPropery = null;
  var oDisplayDiv = null;
  var sPropertyTitle = null;
  var sCurrentId = null;
  
  sFilterUrl = sFilterUrl.replace('.aspx', '');
  aUrl = sFilterUrl.split('/');
  
  for(q=0;q<aUrl.length;q++)
  {
    if((IsNumeric(aUrl[q])) && (aUrl[q] != ''))
    {
      sCurrentId = aUrl[q].toString();
      oCurrentPropery = $('#property_' + sCurrentId);
      sPropertyTitle = $('#property_' + sCurrentId + ' a').attr('title');
      oDisplayDiv = $('#property_' + sCurrentId)[0].parentNode.parentNode;
      oDisplayDiv = oDisplayDiv.getElementsByTagName('div')[0];
     
      //Set data: 
      $(oDisplayDiv).html('gefilterd op: ' + sPropertyTitle + '<br /><a href="javascript:verwijderFilter(\'' + sFilterUrl + '\', ' + aUrl[q].toString() + ');">alle</a>');
      $(oDisplayDiv).css({display: 'inline'});
      
      //Hide main ul:
      $($('#property_' + aUrl[q].toString())[0].parentNode).css({display: 'none'});
    }
  }
}