var FancyboxHandler = {
    ResizeFancybox: function() {
        $.fancybox.resize();
    },

    ShowFancybox: function(headline, text, cssclass, showOverlay, hideOnOverlayClick) {

        if (hideOnOverlayClick == undefined) {
            hideOnOverlayClick = true;
        }

        var h3 = (headline != '') ? $('<h3/>').append(headline) : '';
        var cont = $('<div/>').append(h3).append(text);
        $('#fancybox_content').empty().css('display', 'block').addClass(cssclass).append(cont);
        showOverlay = (showOverlay == null || showOverlay == undefined) ? true : showOverlay;
        $('#fancybox_trigger').fancybox({
                'hideOnContentClick': false,
                'overlayShow': showOverlay,
                'hideOnOverlayClick': hideOnOverlayClick,
                onComplete: function() {
                    setTimeout('FancyboxHandler.ResizeFancybox()', 0);
                },
                onClosed: function() {
                    $('#fancybox_content').hide().removeClass();
                }
            }).trigger('click');
    },
    ShowFancyboxCustom: function(headline, text, cssclass, showOverlay, delay, customTrigger, transitionOut, callbackClosed) {
        var h3 = $('<h3/>').append(headline);
        var cont = $('<div/>').append(h3).append(text);
        $('#fancybox_content').empty().css('display', 'block').addClass(cssclass).append(cont);

        showOverlay = (showOverlay == null || showOverlay == undefined) ? true : showOverlay;
        customTrigger = (customTrigger == '' || customTrigger == undefined) ? '#fancybox_trigger' : customTrigger;
        transitionOut = (transitionOut == '' || transitionOut == undefined) ? 'none' : transitionOut;

        $(customTrigger).fancybox({
            'hideOnContentClick': false,
            'transitionOut': transitionOut,
            'overlayShow': showOverlay,
            onComplete: function() {
                setTimeout('FancyboxHandler.ResizeFancybox()', 0);

                if (delay != undefined)
                    setTimeout('FancyboxHandler.HideFancyboxText();', delay);
            },
            onClosed: function() {
                $('#fancybox_content').hide().removeClass();
                (callbackClosed || $.noop)();
            }
        }).trigger('click');
    },
    ShowFancyboxAndFade: function(headline, text, delay, cssclass, showOverlay) {
        FancyboxHandler.ShowFancybox(headline, text, cssclass, showOverlay);
        setTimeout('FancyboxHandler.HideFancyboxText();', delay);
    },
    HideFancyboxText: function(delay) {
        if (delay == undefined || delay == null) {
            $.fancybox.close();
            return;
        }
        setTimeout(function() {
            $.fancybox.close();
        }, delay);
    }
    , Close: function() {
        $.fancybox.close();
    }
};

function CreateULErrorList(ulclass, liclass, errors) {
    var list = $('<ul/>').addClass(ulclass);
    $.each(errors, function() {
        list.append($('<li/>').addClass(liclass).append(this.toString()));
    });
    return list;
}

function CreateULList(ulclass, liclass, listOfStringItems) {
    var list = $('<ul/>').addClass(ulclass);
    $.each(listOfStringItems, function() {
        list.append($('<li/>').addClass(liclass).append(this.toString()));
    });
    return list;
}

/*
function FancyBoxConfig()
{
    this.Headline = "";
    this.Content = "";
}

var x = new FancyBoxConfig();
x.Content= "Test";
alert(x.Content);
*/
