var zipsearchdialogoptions={
  autoOpen:false,
  title: 'Europart - H&auml;ndlersuche',
  modal: true,
  show: 'blind',
  hide: 'blind',
  width: 400,
  height: 400,
  buttons: { 'Abbrechen': function() { $(this).dialog('close'); }}
}
function createZIPSearchDialog() {
  var dialogdiv = $('body').append('<div style="display:none;" id="zipsearchdialog"></div>').find('div:last');
  var dialogdivp = dialogdiv.append('<p style="text-align: center;">').find('p:last');
  dialogdivp.append('<label for="zipdialoginput">PLZ:&nbsp;</label>');
  dialogdivp.append('<input id="zipdialoginput" type="text" size="5"/>');
  dialogdivp.append('<div style="padding: 3px; text-align-center; font-size: 0.7em;">Geben Sie mindestens die ersten vier Stellen der gew&uuml;nschten Postleitzahl ein, f&uuml;r die Sie einen H&auml;ndler suchen!</div>');
  dialogdiv.append('<div id="zipresults" style="padding: 3px;" class="ui-widget-content ui-corner-all"></div>');
  $('#zipdialoginput').keyup(inputhandler);
  dialogdiv.dialog(zipsearchdialogoptions);
}
function inputhandler(event) {
  if (event.keyCode!=13) return;
  var zipsearch = $(this).val();
  var zipinp = $(this);
  var dialogprocessing=false;
  var minchars=5;
  if ($(this).attr('id')=='zipdialoginput') {
    dialogprocessing=true;
    minchars=4;
  }
  if (zipsearch.length<minchars) return;
  if (dialogprocessing) $('#zipresults').html('');
  $.post(zipsearchlink,{zip:zipsearch},
    function(rdata) {
      var hitdiv = $('#zipresults');
      var results = $(rdata).find('searchresults');
      var hits = results.find('totalrecords').text();
      if (isNaN(hits) ||hits<1) {
        if (dialogprocessing) hitdiv.append('<div style="text-align:center">Nichts gefunden!</div>');
        else alert('Für diese PLZ wurde nichts gefunden!');
        if (isNaN(zipsearch) || zipsearch.length>=minchars) zipinp.val('');
        return;
      }
      results = results.find('location');
      if (hits==1) {
        window.open(results.find('shopurl').text());

      } else {
        if (dialogprocessing) {
          hitdiv.append('<div style="text-algin:center;">Treffer: '+hits+'</div>');
          results.each(function() {
            var locxml = $(this);
            hitdiv.append('<a href="'+locxml.find('shopurl').text()+'" target="_blank">'+locxml.find('country').text()+'&#x96;<strong>'+locxml.find('zip').text()+'</strong>&nbsp;'+locxml.find('name').text()+'</a><br/>');
          });
        } else {
          window.open(results.find('shopurl').filter(':first').text());
        }
      }
    },
  'xml');
}
function createZIPSearchInput() {
  var inp = $('body').find('#zipsearchinput');
  if (inp == null || typeof inp != 'object' || inp.attr('id') != 'zipsearchinput') {
    return;
  }
  inp.attr('size','5');
  inp.val('');
  inp.show();
  inp.focus();
  inp.keyup(inputhandler);

}