( function($) {
$(document).ready(function(){

    // Pokud prohlizec nepodporuje placeholder, vyresit javascriptem
    if(!Modernizr.input.placeholder){

        $('[placeholder]').focus(function() {
            var input = $(this);
            if (input.val() == input.attr('placeholder')) {
                input.val('');
                input.removeClass('placeholder');
            }
        }).blur(function() {
            var input = $(this);
            if (input.val() == '' || input.val() == input.attr('placeholder')) {
                input.addClass('placeholder');
                input.val(input.attr('placeholder'));
            }
        }).blur();

        $('[placeholder]').parents('form').submit(function() {
            $(this).find('[placeholder]').each(function() {
                var input = $(this);
                if (input.val() == input.attr('placeholder')) {
                    input.val('');
                }
            })
        });

    }

    /* inicializace dropdown menu */
    $("ul.dropdown li").hover(function(){
    
        $(this).addClass("hover");
        $('ul:first',this).css('visibility', 'visible');
    
    }, function(){
    
        $(this).removeClass("hover");
        $('ul:first',this).css('visibility', 'hidden');
    
    });
    
    $("ul.dropdown li ul li:has(ul)").find("a:first").append(" &raquo; ");
    
    /* Hack for submiting form after form item change */
    $(".submitForm").live("change", function(){
		$(this).parents('form').submit();
    });
    
    /* IE hack for on enter submit */
    $('input').live("keydown", function(e){
        if (e.keyCode == 13) {
            $(this).parents('form').find(".submit").trigger("click");
            return false;
        }
    });

    /* vysviceni radku tabulky pri najeti */
    $("tbody.highlight td").live('mouseover mouseout', function(event){
            if (event.type == 'mouseover') {
                $(this).parent("tr").addClass("hover");
             } else {
                $(this).parent("tr").removeClass("hover");
            }
        });

    /* Zavřít menu po kliku */
    $("ul.dropdown li ul li").live("click", function(){
        $("ul.dropdown li ul").css("visibility", "hidden");
    });

    /* Volání AJAXu u všech odkazů s třídou ajax */
    $("a.ajax, #snippet--comments .paginator a").live("click", function (event) {
        event.preventDefault();
        $.get(this.href);
    });
    
    /* AJAXové odeslání formulářů */
    $("form.ajax").live("submit", function () {
        $(this).ajaxSubmit();
        return false;
    });
    
    $("form.ajax :submit").live("click", function () {
        $(this).ajaxSubmit();
        return false;
    });

    /* tooltip init */
    $(".tooltip").tooltip({
        showURL: false
    });
    
    /* accordion init */
    $(".accordion").accordion({collapsible: true, active: false, autoHeight: false});

    /* datepicker localization */
    jQuery(function($) {
        $.datepicker.regional['cz'] = {
            closeText: 'Zavřít',
            prevText: '&#x3c;Dříve',
            nextText: 'Později&#x3e;',
            currentText: 'Nyní',
            monthNames: ['leden', 'únor', 'březen', 'duben', 'květen', 'červen', 'červenec', 'srpen',
                'září', 'říjen', 'listopad', 'prosinec'],
            monthNamesShort: ['led', 'úno', 'bře', 'dub', 'kvě', 'čer', 'čvc', 'srp', 'zář', 'říj', 'lis', 'pro'],
            dayNames: ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'],
            dayNamesShort: ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'],
            dayNamesMin: ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'],
            weekHeader: 'Týd',
            dateFormat: 'dd.mm.yy',
            firstDay: 1,
            isRTL: false,
            showMonthAfterYear: false,
            yearSuffix: '',
            buttonText: 'Vyberte datum'
        };
        $.datepicker.setDefaults($.datepicker.regional['cz']);
    });

    /* datepicker init */
    $("input.date").each(function () { // input[type=date] does not work in IE
        var el = $(this);
        var value = el.val();
        var date = (value ? $.datepicker.parseDate($.datepicker.W3C, value) : null);

        var minDate = el.attr("min") || null;
        if (minDate) minDate = $.datepicker.parseDate($.datepicker.W3C, minDate);
        var maxDate = el.attr("max") || null;
        if (maxDate) maxDate = $.datepicker.parseDate($.datepicker.W3C, maxDate);

        // input.attr("type", "text") throws exception
        if (el.attr("type") == "date") {
            var tmp = $("<input/>");
            $.each("class,disabled,id,maxlength,name,readonly,required,size,style,tabindex,title,value".split(","), function(i, attr)  {
                tmp.attr(attr, el.attr(attr));
            });
            el.replaceWith(tmp);
            el = tmp;
        }
        el.datepicker({
            minDate: minDate,
            maxDate: maxDate,
            changeMonth:true,
            changeYear:true,
            showAnim:"slideDown",
            showOn: "both",
            buttonImage: '/images/datepicker.gif',
            buttonImageOnly: true,
            autoSize: true,
            yearRange: '1900:2100',
            /*
            onSelect: function (dateText, inst) {
                $(this).parents("form").find(".submit").trigger('click');
			}
			*/
        });
        el.val($.datepicker.formatDate(el.datepicker("option", "dateFormat"), date));
    });
    
    
});
} ) ( jQuery );
