// this is just to make sure the plugin works correctly in "no-conflict" mode
jQuery.noConflict();

function test() {
    jQuery.ajax({ url: 'wait.php?' + new Date().getTime() });
}

jQuery(function($) {
    // global hook - unblock UI when ajax request completes
    $().ajaxStop($.unblockUI);

    $('#main').tabs();

    //
    // page blocking example
    //
        // embedded content used as message
        var messageElement = $('#domMessage');

        $('#pageDemo1').click(function() {
            $.blockUI();
            test();
        });
        $('#pageDemo2').click(function() {
            $.blockUI('<h1><img src="busy.gif" /> Just a moment...</h1>');
            test();
        });
        $('#pageDemo3').click(function() {
            $.blockUI({ backgroundColor: '#f00', color: '#fff' });
            test();
        });
        $('#pageDemo4').click(function() {
            $.blockUI(messageElement);
            test();
        });

    //
    // element blocking example
    //

        $('#blockButton').click(function() {
            $('div.blockMe').unblock().block();
        });
        $('#blockButton2').click(function() {
            $('div.blockMe').unblock().block('<h1>Processing...</h1>', { border: '3px solid #a00' });
        });
        $('#unblockButton').click(function() {
            $('div.blockMe').unblock();
        });
        $('a.test').click(function() {
            alert('link clicked');
            return false;
        });

    //
    // dialog example
    //
        // cache the question element
        var question = $('#question')[0];

        $('#showDialog').click(function() {
            $.blockUI(question, { width: '275px' });
        });

        $('#yes').click(function() {
            // update the block message
            $.blockUI("<h1>Remote call in progress...</h1>" );

            $.ajax({
                url: 'wait.php?' + new Date().getTime(), // prevent caching in IE
                complete: function() {
                    // unblock when remote call returns
                    $.unblockUI();
                }
            });
            return false;
        });

        $('#no').click($.unblockUI);

    //
    // customize examples
    //
        $('#try').click(function() {
            $.blockUI.defaults.pageMessage = "<h1>Bitte Wartezeit</h1>";
            $.extend($.blockUI.defaults.overlayCSS, { backgroundColor: '#00f' });
            $.extend($.blockUI.defaults.pageMessageCSS, { color: '#00a', backgroundColor: '#0f0' });
            $.blockUI();
            setTimeout($.unblockUI, 2000);
        });
        $('#resetDef').click(function() {
            $.blockUI.defaults.pageMessage = "<h1>Please wait...</h1>";
            $.extend($.blockUI.defaults.overlayCSS, { backgroundColor: '#fff' });
            $.extend($.blockUI.defaults.pageMessageCSS, { color: '#000', backgroundColor: '#fff' });
            $.blockUI();
            setTimeout($.unblockUI, 2000);
        });


    //
    // displayBox example
    //
        $('#displayExample a').click(function() {
		$.extend($.blockUI.defaults.overlayCSS, { backgroundColor: '#ccc' });
            $('<img width="500" height="500">')
                .attr('src', $(this).attr('href'))
                .appendTo('#main')
                .displayBox();
            return false;
        });

});
