function submitForm() 
{
  var frm = $('frm_advanced_search');
  
  var lst_vars = new Array();
  var arr_vars = new Array();  
  var num_var = 0;
  var str_action = '';
  
  lst_vars[0] = frm['subcategory[]'];
  lst_vars[0]['varname'] = 'sc';
  lst_vars[1] = frm['location[]'];
  lst_vars[1]['varname'] = 'lo';
    
  for (i=0; i<lst_vars.length; i++) {
	var str_ids = '';
	var arr_saved_ids = new Array();
	var num_ids = 0;
    for (j=0; j<lst_vars[i].length; j++) {      
	  if (lst_vars[i][j].checked == true && lst_vars[i][j].value != 'all' && 
	     (arr_saved_ids.indexOf(lst_vars[i][j].value) === false || arr_saved_ids.indexOf(lst_vars[i][j].value) == -1)) {
		  str_ids += lst_vars[i][j].value + '-';
		  arr_saved_ids[num_ids] = lst_vars[i][j].value;
		  num_ids++;
	  }	  
    }
    if (str_ids != '') {
	  arr_vars[num_var] = lst_vars[i]['varname'] + '=' + str_ids.substr(0, str_ids.length - 1);	  
	  num_var++;
    }
  }
  
  str_action = arr_vars.join('&');
  if (str_action != '') str_action = str_action + '&';
  
  if (frm['keyword'].value != '') str_action += 'kw=' + frm['keyword'].value + '&';
  if (frm['price_from'].value != '') str_action += 'pf=' + frm['price_from'].value + '&';
  if (frm['price_to'].value != '') str_action += 'pt=' + frm['price_to'].value + '&';
  if (frm['price_from'].value != '' || frm['price_to'].value != '') str_action += 'cr=' + frm['currency'].value + '&';
  
  for (i=0; i<frm['state'].length; i++) {
	if (frm['state'][i].checked) {
		state = frm['state'][i].value;
		break;
	}
  }
  if (state != '') str_action += 'st=' + state + '&';
  
  if (str_action != '') str_action = frm.action + '?' + str_action.substr(0, str_action.length - 1);
  else str_action = frm.action;
  
  window.location = str_action;
  
}

function initSearch()
{
	$('filter_subcategory').onclick = submitForm;
	$('filter_location').onclick    = submitForm;
	$('filter_keyword').onclick     = submitForm;
	$('filter_price').onclick       = submitForm;
	$('filter_state').onclick       = submitForm;
}

Event.observe(window, 'load', initSearch, false);