$(document).ready(function()
{
    $("#id_search_button").click(function()
    {
      $("#id_f").trigger('submit');    
    }
    )

    $("#id_ort").focus();



    $("#id_f").submit(function()
    {
        var ortl = $("#id_ort").val().length;
        var bisl = $("#id_bis").val().length;
        var vonl = $("#id_von").val().length;
        var mess=null;
        if( (bisl==0 && vonl>0)||(vonl==0 && bisl>0) )
        {
            $("#id_bis").val("");
            $("#id_von").val("");
        }
        else if(bisl>0 && vonl>0)
        {
            var von = $("#id_von").val();
            var okvon = von.match(/\d{1,2}.\d{1,2}.\d{2,4}/);
            var bis = $("#id_bis").val();
            var okbis = bis.match(/\d{1,2}.\d{1,2}.\d{2,4}/);
            if(!okvon||!okbis)
               mess = "Bitte geben Sie An- und Abreise im Format TT.MM.JJJJ an. <br/><br/>Beispiel: 24.12.2010";
        }
        if(mess)
        {
            showErrorDialog(mess);
            return false;
        }

        if(ortl==0)
        {
            mess = "Bitte geben Sie ein Reiseziel an";
            showErrorDialog(mess);
            return false;
        }


    })
    

    $("#id_von").datepicker({
      showOn: 'both',
      showAnim:"",
      numberOfMonths: 1,
      minDate:0,
      onSelect:function()
         {
             var mindate =$("#id_von").datepicker( "option" , "minDate" );
             var dateVon = $("#id_von").datepicker("getDate");
             var dateVonPlus1 = new Date(dateVon.getFullYear(), dateVon.getMonth(), dateVon.getDate() + 1);
             if($("#id_bis").val().length>0)
             {
                 var dateBis = $("#id_bis").datepicker("getDate");
                 if(dateBis<=dateVon)
                 {
                   $("#id_bis").datepicker("setDate",dateVonPlus1);
                   $( "#id_bis").datepicker("option",  "minDate", dateVonPlus1);
                 }
             }
             else
             {
                 $( "#id_bis").datepicker("option",  "minDate", dateVonPlus1);
                 $("#id_bis").datepicker("setDate",dateVonPlus1);
             }
         },
    buttonImage: '/img/kalender.gif',
    buttonImageOnly:true		});
      
    $("#id_bis").datepicker({
    showOn: 'both',
        showAnim:"",
    numberOfMonths: 1,
        minDate:1,
    buttonImage: '/img/kalender.gif',
    buttonImageOnly:true		});


    var input = $('#id_ort');
    input.one('click', function() {
        $(this).focus().click().select();
        $(this).one('click', arguments.callee);
    });
    input.autocomplete('/hotels?a=getplace', {
        delay: 10,
        width:"302px",
        scrollHeight:499,
        minChars: 2,
        matchSubset: 1,
        scroll:false,
        matchContains: 1,
        minChars: 0,
        parse: parseXML,
        formatItem: formatItem,
        formatResult: formatResult
    })

    function parseXML(xml) {
        var results = [];
        var orte=xml.split("\n");

        for(var i = 0; i < orte.length;i++)
        {
            var ort = orte[i];
            if(ort.length<3)
              continue;

            var text = ort;
            var value = ort;
          results[results.length] = { 'data': { text: text, value: value },
                'result': text, 'value': value

         }
       }
        return results;

    };

    function formatItem(data) {
        return data.text;
    };

    function formatResult(data) {
        return data.text;
    };



});


function showErrorDialog(mess)
{
    $("#id_form_not_ok").html(mess);
    $("#id_form_not_ok").dialog({
        modal: true,
        buttons: {
          Ok: function() {
              $(this).dialog('destroy');
          }
        }

   });
}


