jQuery(document).ready(function($) {

    $.fn.fancybox.defaults.centerOnScroll = true;
    $.fn.fancybox.defaults.autoScale = false;

    // ClearInputData
    $.fn.clearInputData = function(tagId) {
        document.getElementById(tagId).innerHTML = document.getElementById(tagId).innerHTML;
    }


    ///////////////////////////
    // BEGIN: from layout/_header_search
    ///////////////////////////

    function setSearchMode($modeLink) {
        $('#search_select_box a').removeClass('select');
        $modeLink.addClass('select');
        $('#search_input_box a.open b').html($modeLink.html());
        $('#search_input_box input[name="mode"]').val($modeLink.attr('href'));
    }

    var search_mode = 'places';
    if (location.pathname.match(/search/)) {
        search_mode = location.search.replace(/^.+&?mode=([^&]*).*$/, "$1");
    }

    setSearchMode($('#search_select_box [href='+search_mode+']'));

    $('#search_input_box a.open').click(function() {
        if($('#search_select_box').css('display') == 'none') {
            $('#search_select_box').show('fast');
        } else {
            $('#search_select_box').hide('fast');
        }
        return false;
    });

    $('#search_select_box a').click(function() {
        setSearchMode($(this));
        $('#search_select_box').hide('fast');
        $('#search_input_box input[name="query"]').focus();
        return false
    });

    $('#search_input_submit_link').click(function() {
        $('#search_input_box form').submit();
        return false;
    });

    $('#search_input_box input').keypress(function(event) {
        if(event.keyCode == '13') {
            $('#search_input_box form').submit();
            return false;
        }
    });


    ///////////////////////////
    // BEGIN: from layout/_header_search
    ///////////////////////////

    ///////////////////////////
    // BEGIN: from search people search
    ///////////////////////////
    $("a.friend_request").click(function() {
        href = $(this).attr('href');
        data = jQuery.parseJSON(href);
        $('#friend-request-form span.full_name').html(data.name);
        $('#friend-request-form input.friend_id').val(data.id);

        $.fancybox( $('#friend-request-form'), {});

        return false;
    });

    $('#friend-request-form').bind('submit', function() {
        $.fancybox.showActivity();

        data = $('#friend-request-form').serialize();

        $.ajax({
            type: 'POST',
            url: "/setting/friends", // todo
            data: data,
            async: false,
            success: function(response) {
                friend_id = $('#friend-request-form input.friend_id').val();
                $('#'+friend_id).html('<span>'+$('#friend-request-form').attr('data-pending-text')+'</span>');
                $.fancybox.close();
            },
            dataType: 'json'
        });

        return false;
    });
    ///////////////////////////
    // END: from search people search
    ///////////////////////////

    $.datepicker.regional['de'] = {
        clearText: 'löschen',
        clearStatus: 'aktuelles Datum löschen',
        closeText: 'schließen',
        closeStatus: 'ohne Änderungen schließen',
        prevText: '&#x3c;zurück',
        prevStatus: 'letzten Monat zeigen',
        nextText: 'Vor&#x3e;',
        nextStatus: 'nächsten Monat zeigen',
        currentText: 'heute',
        currentStatus: '',
        monthNames: ['Januar','Februar','März','April','Mai','Juni',
        'Juli','August','September','Oktober','November','Dezember'],
        monthNamesShort: ['Jan','Feb','Mär','Apr','Mai','Jun',
        'Jul','Aug','Sep','Okt','Nov','Dez'],
        monthStatus: 'anderen Monat anzeigen',
        yearStatus: 'anderes Jahr anzeigen',
        weekHeader: 'Wo',
        weekStatus: 'Woche des Monats',
        dayNames: ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag'],
        dayNamesShort: ['So','Mo','Di','Mi','Do','Fr','Sa'],
        dayNamesMin: ['So','Mo','Di','Mi','Do','Fr','Sa'],
        dayStatus: 'Setze DD als ersten Wochentag',
        dateStatus: 'Wähle D, M d',
        dateFormat: 'dd.mm.yy',
        firstDay: 1,
        initStatus: 'Wähle ein Datum',
        isRTL: false,
        changeMonth: true,
        changeYear: true
    };
    $.datepicker.setDefaults($.datepicker.regional['de']);

    $('#date_of_birth').datepicker({
        altField: '#user_profile_attributes_date_of_birth' ,
        altFormat: 'yy-mm-dd'
    });


    $('a[data-remote][data-fancy], form[data-remote][data-fancy], form[ie-remote]').live('ajax:success', function(event, data, status, xhr) {
        $.fancybox(data)
    });

    $('a[data-remote], input[data-remote], form[data-remote], form[ie-remote]').live('ajax:beforeSend', function(event, data, status, xhr) {
        $.fancybox.showActivity();
    });

    $('a[data-remote], input[data-remote], form[data-remote], form[ie-remote]').live('ajax:complete', function(event, data, status, xhr) {
        $.fancybox.hideActivity();
    });

    $('a[data-remote], input[data-remote], form[data-remote], form[ie-remote]').live('ajax:error', function(event, data, status, xhr) {
        $.fancybox($('#fancy-error'));
    });


    $('#fancybox-outer a[data-remote][data-fancy], #fancybox-outer form[data-remote][data-fancy]').live('ajax:loading', function(event, data, status, xhr) {
        $(this).slideUp('fast', function() {
            $.fancybox.resize();
        });
    });

    $('#ie-remote').live('click', function(e) {
        $(this).parents('form[ie-remote]').callRemote();
        e.preventDefault();
    });

    $('a[data-remote][data-target], form[data-remote][data-target]').live('ajax:success', function(event, data, status, xhr) {
        var el = $(this);
        var target = $(el.attr('data-target'));
        target.html(data);
        var display = el.attr('data-display');
        if (display) {
            display = $(display);
        } else {
            display = target;
        }
        display.stop();
        display.slideDown();
    });

    $('.user_img, .opening_hours_icon').live('mouseenter', function(e) {

        $(this).tooltip({
            // effect: 'bouncy',
            delay: 0,
            opacity: 1,
            predelay: 0
        });

        $(this).trigger('mouseover');

    });

    $('#b_invite_mail').click(function() {
        $("#mail_message_form_wrapper").slideToggle("slow");
        return false;
    });

    $('form[data-remote].new_mail_message').live('ajax:success', function(event, data, status, xhr) {
        $("#mail_message_info_wrapper").replaceWith(data).show();
        //$(this)[0].reset();
    });


    $('#b_invite_sms').click(function() {
        $("#sms_message_form_wrapper").slideToggle("slow");
        return false;
    });

    $('form[data-remote].new_sms_message').live('ajax:success', function(event, data, status, xhr) {
        $("#sms_message_info_wrapper").replaceWith(data).show();
        $(this)[0].reset();
    });

});

