if (jQuery) {
  jQuery(function() {
	  var $ = jQuery;
	  var selects = $('#objektsuche select'); 
	  
	  selects.each(function() {
      var select = $(this);
      var opts = $('option', select);
      var graphicalSelectOpts = $('<ul class="options"></ul>');
      
      opts.each(function() {
        var opt = $(this);
        graphicalSelectOpts.append('<li class="option" rel="' + opt.attr('value') + '">' + opt.html() + '</li>');
      });
      
      $('li.option', graphicalSelectOpts).click(function() {
        window.menuClicked = true;
        var opt = $(this);
        var selectId = opt.parents('div.select').attr('id').replace(/select-/g, '');
        var optionValue = opt.attr('rel');
        var prevOptVal = $('#' + selectId).val(); 
        $('#' + selectId).val(optionValue);
        if (optionValue != prevOptVal) { $('#' + selectId).trigger('change'); }
        $('div.selected', opt.parents('div.select')).html(opt.html());
        opt.parent().hide('fast');
      }).hover(function() { $(this).addClass('hover'); }, function() { $(this).removeClass('hover'); });
      
      var graphicalSelect = $('<div class="select" id="select-' + select.attr('id') + '"></div>');
      var graphicalSelectSelected = $('<div class="selected"></div>');
      
      graphicalSelectSelected.click(function() {
        window.menuClicked = true;
        var otherOpts = $('#objektsuche ul.options');
        var myOpts = $(this).siblings('ul.options');
        
        if (myOpts.is(':visible')) {
          myOpts.hide('fast');
        } else {
          otherOpts.each(function() {
            if ($(this).is(':visible')) {
              $(this).hide('fast');
            }
          });
          
          myOpts.show('fast');
        }
      });
      
      graphicalSelect.append(graphicalSelectSelected);
      graphicalSelect.append(graphicalSelectOpts);
      select.css({display: 'none'}).after(graphicalSelect);
      
      $('div#select-' + select.attr('id') + '.select li.option[rel=' + select.val() + ']').click();
	  });
	  
	  selects.bind('change', function() {
      $(this).parents('form').submit();
	  });

	  $('body').click(function() {
		  if ('undefined' == typeof window.menuClicked || !window.menuClicked) {
		    $('#objektsuche ul.options').hide('fast');
		  };
		  
		  window.menuClicked = false;
	  });
  });
}
