$(function(){
	
	function show_recipes(){
		var position = $('.menuItem.receitas').position();
		$('.submenu.receitas').css('top', '80px');
		$('.submenu.receitas').css('left', (position['left']) + 'px');
		$('.submenu.receitas').show();
	}
	
	function hide_recipes(){
		$('.submenu.receitas').hide();
	}	
	
	$(".menuItem.receitas").hover(function(){
		show_recipes();
		$(".rodapeColuna ul li:last-child a").css("border-bottom","0");
		}, function(){hide_recipes()});	
	
	function show(){
		var position = $('.menuItem.programas').position();
		$('.submenu.programas').css('top', '80px');
		$('.submenu.programas').css('left', (position['left']) + 'px');
		$('.submenu.programas').show();
	}

	function hide(){
		$('.submenu.programas').hide();
	}

	$(".menuItem.programas").hover(function(){
		show();
		$(".rodapeColuna ul li:last-child a").css("border-bottom","0");
		}, function(){hide()});
	
	

    // SEARCH -----------

    var __initial_search_text = "";

	$('#search').focus(function(){
        if( __initial_search_text == "" )
            __initial_search_text = $('#search').val();

        if( __initial_search_text == $('#search').val() )
            $('#search').val('');
	});

    function goto_seach_page(){
        var url = $('.busca .filter li a.selected').attr('href');
        url += $('#search').val();
        window.location = url;
    }

    function hide_filters(){
        $('.busca button').focus(function() {
            $('.busca .filter').hide();
        });

        $('body').click(function(event) { 
           if($(event.target).is('.busca .filter a') == false ) { 
            $('.busca .filter').hide();
           }
        }); 
    }

    function bind_hover_on_links(){
        $('.busca .filter li a').hover(function(){
            $('.busca .filter li a').removeClass('selected');
            $(this).addClass('selected');
        },function(){
        });
    }

    function bind_onclick_into_links(){
        $('.busca .filter li a').click(function(event){
            event.preventDefault();
            goto_seach_page();
        });
    }

    function bind_onsubmit_into_form(){
        $('.busca form').submit(function() { 
            goto_seach_page();
            return false; 
        });
    }

    function move_focus( evnt ){

        var total_elements = $('.busca .filter li a').length;
        var current_element_index = $('.busca .filter li a').index($('.busca .filter li a.selected'));
        $('.busca .filter li a').removeClass('selected');

        if( evnt.keyCode == 38 ){ // UP
            $('#search').val($('#search').val());
            if( current_element_index > 0 )
                current_element_index -= 1;

        } else if( evnt.keyCode == 40 ) { // DOWN
            if( current_element_index < (total_elements-1) )
                current_element_index += 1;
        }

        $( $($('.busca .filter li a')[current_element_index]).addClass('selected') );
    }

    function update_search_filter(  ){
        if( $('#search').val() == ""){
            $('.busca .filter').hide();
        } else {
            $('.busca .filter').fadeIn();
        }
    }

    function bind_keys(){
        $('#search').keyup(function ( evnt ){ 
            move_focus( evnt ); 
            update_search_filter( evnt ); 
        });
        $('#search').keydown(function ( evnt ){ 
            update_search_filter( evnt ); 
        });
    }

    bind_keys();
    bind_onclick_into_links();
    bind_onsubmit_into_form();
    bind_hover_on_links();
    hide_filters();
    $('.busca').show();

});

