/**
 * @author trtik
 */

(function($) {
    
    /**
     * Shows advertisment layer
     * 
     * options:
     *   width   - Width of the layer.
     *   height  - Height of the layer.
     *   timeout - Layer destroys itself after timeout miliseconds.
     * 
     * @param {Object} options
     */
    
    $.layer = function(element, options) {
        
        element = $(element);

        var defaultOptions = {
            width: $(element).width()+'px',
            height: 'auto',
            timeout: 0,
            top: 0
        };
        
        // Recalculate layer position
        var onResize = function() {
            var left = parseInt(($(window).width() - layer.width())/2) + 'px';
            var top = options.top || parseInt(($(window).height() - layer.height())/2.3) + 'px';
            layer.css({
                left: left,
                top: top
            });
        }

        options = $.extend(defaultOptions, options);
        
        $(document.body).css({
            position: 'relative'
        });
        
        
        var layer = $('<div id="layer" style="display: none"/>').appendTo(document.body);
        var layerCss = {
            width: options.width,
            height: options.height,
            position: 'absolute'
        };
        element.show().appendTo(layer);
        layer.css(layerCss);
        onResize();
        
        // Close button and timeout (if set) trigger layer.close event
        var closeButton = $('<a id="layer-close-button" href="#" />').appendTo(layer).click(function() {
            layer.trigger('layer.close', [layer]);
        });
        if (options.timeout) {
            setTimeout(function() {
                layer.trigger('layer.close', [layer]);
            }, options.timeout);
        }
        
        // Default layer.close event handler
        layer.bind('layer.close', function(event, layer) {
            layer.fadeOut(300); 
        });
        
        $(window).resize(function(){
            onResize();
        });
        
        layer.show();
        
        return layer;

    }
    

/*
    $("#banner_layout").show();
    var width = Number($(window).width());
    var left = ((width/2) - ($("#hp_banner").width() / 2) );
    var height = Number($(document).height());

    $('#hp_banner').css('left',left+'px');
    $('#banner_layout').css('height',height+'px');
    $("#hp_banner").show();

    //$('#hd-logo-image').css('opacity','0.8');
    $('#hd-logo-text').css('z-index','0');
    $('#hd-logo-image').css('z-index','0');

    //$('#actimel').css('filter','alpha(opacity=80)');
    //$('#hd').css('filter','alpha(opacity=80)');

    $("#closeBanner").click(function() {
        $("#banner_layout").hide();
        $("#hp_banner").hide();
        $('#hd-logo-text').css('z-index','50');
        $('#hd-logo-image').css('z-index','50');
        return false;
    });
    */
    
})(jQuery);
