/* AJAX Suche */
function testValue()
{
    if ( $('searchWords') && $('suchfeld').value == 'Suche' || $('suchfeld').value.length < 3) return false;
    return true;
}
document.observe("dom:loaded", function(){

  if ($('searchBox')!=null)
  {
    if($('searchBox').hasClassName('hide')){
        $('searchBox').hide();
        $('searchBox').removeClassName('hide');
        $('suchfeld').value = 'Suche';
    }
    $('suchfeld').observe('focus', function(){
        $('suchfeld').addClassName('focus');
        if($('suchfeld').value == 'Suche')
            $('suchfeld').value = '';
    });
    $('suchfeld').observe('blur', function(){
        $('suchfeld').removeClassName('focus');
        if($('suchfeld').value == '')
            $('suchfeld').value = 'Suche';
        if($('suchfeld').hasClassName('active')){
            $('suchfeld').removeClassName('active');
            Effect.BlindUp('searchBox', { duration: 1.75 });
        }
    });
    $('suchfeld').observe('keypress', function(event){
        if (!$('suchfeld').hasClassName('focus')) $('suchfeld').addClassName('focus');
        switch(event.keyCode)
        {

                case Event.KEY_ESC:
                    if($('suchfeld').hasClassName('active'))
                    {
                        Effect.BlindUp('searchBox', { duration: 1.75 });
                        $('suchfeld').removeClassName('active');

                    }
                    Event.stop(event);
                    return;

      }
    });
    new Form.Element.Observer
    (
        'suchfeld',
        0.5,
        function (el, value){
            if($('suchfeld').hasClassName('focus'))
            {
                if(value.length >= 3 && value != 'Suche')
                {
                    new Ajax.Updater
                    (
                        'searchBoxWrapper',
                         '/service/suche/autocomplete',
                        {
                            parameters:
                            {
                                searchWords: $F('suchfeld')
                            },
                            onComplete: function()
                            {
                                if(!$('suchfeld').hasClassName('active'))
                                {
                                    Effect.BlindDown('searchBox', { duration: 0.75 });
                                    $('suchfeld').addClassName('active');
                                }
                            }
                        }
                    );
                }
                else
                {
                    if($('suchfeld').hasClassName('active'))
                    {
                        $('suchfeld').removeClassName('active');
                        Effect.BlindUp('searchBox', { duration: 1.75 });
                    }
                }
            }
     }
   ); // Ende Observer
 }
});
