FSite2.Layer = function(className, hidden, id)     //Tworzy nowa warstwe (idobiektu, klasaobiektu (obrazek preloadera), ukrywanie obiektu (text preloadera))
{
	var existingObject;
	if (id && (existingObject = document.getElementById(id)))
		this.object = existingObject;
	else
	{
		this.object = document.createElement('div');
		if (id)
			this.object.id=id;
		document.body.appendChild(this.object);
	}
	if (hidden)
		this.hide();
	if (className)
		this.object.className = className;
	this.object.style.position = 'absolute';
	this.object.style.left = '0px';
	this.object.style.top = '0px';
	return this;
}

// PowiÄkszenie warstwy na caÅy rozmiar zawartoÅci okna
FSite2.Layer.prototype.fullScreen = function(dontHideFlash)
{
	if (!dontHideFlash)
	{
		var objects = document.getElementsByTagName('object');
		var embeds = document.getElementsByTagName('embed');
		var i;
		if (!this._hideElements)
		{
			this._hideElements = true;
			for (i=0; i<objects.length; i++)
			{
				if (objects[i].style.visibility!=null)
					objects[i]._visibility=objects[i].style.visibility;
				objects[i].style.visibility='hidden';
			}
			for (i=0; i<embeds.length; i++)
			{
				if (embeds[i].style.visibility!=null)
					embeds[i]._visibility=embeds[i].style.visibility;
				embeds[i].style.visibility='hidden';
			}
		}
	}
	this.object.style.width = window.getContentWidth() + 'px';
	this.object.style.height = window.getContentHeight() + 'px';
	this.object.style.left = '0px';
	this.object.style.top = '0px';
}

// Wysrodkowanie wartsty
FSite2.Layer.prototype.center = function()
{
	this.object.style.left = window.getScrollX() + Math.round((window.getContentWidth() - window.getObjectWidth(this.object)) / 2) + 'px';
	var top = window.getScrollY() + Math.round((window.getWindowHeight() - window.getObjectHeight(this.object)) / 2);
	if (top < 0)
		top = 0;
	this.object.style.top = top + 'px';
}

FSite2.Layer.prototype.remove = function()
{
	if (this.object)
	{
		if (FSite2.removeCalendars)
			FSite2.removeCalendars(this.object);
		if (this.object.parentNode)
			this.object.parentNode.removeChild(this.object);
		this.object=null;
	}
	if (this._hideElements)
	{
		var objects = document.getElementsByTagName('object');
		var embeds = document.getElementsByTagName('embed');
		var i;
		for (i=0; i<objects.length; i++)
		{
			if (objects[i]._visibility!=null)
				objects[i].style.visibility=objects[i]._visibility;
		}
		for (i=0; i<embeds.length; i++)
		{
			if (embeds[i]._visibility!=null)
				embeds[i].style.visibility=embeds[i]._visibility;
		}
		this._hideElements = false;		
	}
}

FSite2.Layer.prototype.isVisible = function()
{
	return !(this.object.style.display == 'none');
}

FSite2.Layer.prototype.show = function()
{
	this.object.style.display = 'block';
	this.center();
	this.object.style.visibility = 'visible';
	if (this.object.onShow && (typeof this.object.onShow == 'function'))
		this.object.onShow();
}

FSite2.Layer.prototype.hide = function()
{
	if (this.object.onHide && (typeof this.object.onHide == 'function'))
		this.object.onHide();
	this.object.style.display = 'none';
	this.object.style.visibility = 'hidden';
}

