


var Site = null;
var Browser = null;

function WebSite(serverDate)
{
	Site = this;
	Browser = new WebBrowser();
	this.Body = new Body();
	this.BackgroundCover = document.getElementById("backgroundCover");
	this.ContentItems = new Array();
	this.GalleryList = null;
	this.Dialogs = new Array();
	this.ActiveDialog = null;

	Network.ServerTime = TimeDate.FromString(serverDate);

	this.LCID = System.Load("LCID");
	if (this.LCID == null)
		this.LCID = System.Save("LCID", "1053");

	layers = document.getElementsByTagName("div");

	this.FindId = function (id)
	{
		var object = null;
		if (Persons != null)
			object = Persons.Get(id);
		if (object == null && Companies != null)
			object = Companies.Get(id);
		if (object == null && Locations != null)
			object = Locations.Get(id);
		return object;
	}
	Locations.Load();
	Companies.Load();
	Persons.Load();
	Events.Load();
	for (var i = 0; i < layers.length; i++)
	{
		if (layers[i].className == "ContentItem")
		{
			this.ContentItems.push(layers[i]);
			this.ContentItems[this.ContentItems.length - 1].prototype = new ContentItem(layers[i]);
		}
		else if (layers[i].className == "Picture")
			MediaItems.AddPicture(layers[i]);
		else if (layers[i].className == "Video")
			MediaItems.AddVideo(layers[i]);
		else if (layers[i].className == "GalleryList")
			this.GalleryList = layers[i];
	}
	Events.List = document.getElementById("eventsList");
	Events.Map = document.getElementById("eventsMap");
	Events.Calendar = document.getElementById("eventsCalendar");

	Events.Update();
	ScrollBar.Attach(Events.List, ScrollBars.Vertical)
	ScrollBar.Attach(this.GalleryList, ScrollBars.Vertical)
	Contact.Sender = new ServerConnection("ContactRequest.aspx", Contact.FormSubmitted, Contact.FormFailed);
	Contact.LoadLastInput();
	Languages.Switch(this.LCID);
	Network.AddConnection(Contact.Sender);

	document.oncontextmenu = function ()
	{
		return false;
	}
	window.onresize = function ()
	{
		var width = Site.Body.getSize().Width;
		var height = Site.Body.getSize().Height;
		var tables = document.getElementsByTagName("table");
		var eventsListContent = null;
		var dialog = null;

		for (var i = 0; i < Site.ContentItems.length; i++)
		{
			var item = Site.ContentItems[i];
			item.prototype.Update();
			if (item.prototype.Id == "mainLogo")
			{
				item.style.top = "5px";
				item.style.left = "5px";
				item.style.zIndex = 99;
			}
			else if (item.prototype.Id == "languageSelector")
			{
				item.style.top = "5px";
				item.style.left = (width - parseInt(item.clientWidth) - 5) + "px";
				item.style.zIndex = 98;
			}
			else
			{
				item.style.top = ((height - parseInt(item.clientHeight)) / 2 - item.prototype.Offset.Y) + "px";
				item.style.left = ((width - parseInt(item.clientWidth)) / 2 + item.prototype.Offset.X) + "px";
			}
		}

		if (Site.ActiveDialog != null)
		{
			var item = Site.ActiveDialog;
			var itemHeaderTable = null;
			var itemTables = item.getElementsByTagName("table");
			var top = 0;
			var left = 0;
			dialog = Site.ActiveDialog;

			for (var i = 0; i < itemTables.length; i++)
			{
				if (itemTables[i].className == "DialogHeader")
					itemHeaderTable = itemTables[i];
			}

			if (item.id == "newsDialog")
			{
				var subLayers = item.getElementsByTagName("div");
				var dialogHeight = height - 20;
				if (dialogHeight < 300)
					dialogHeight = 300;
				var itemDataHeight = dialogHeight - 20;
				var itemDataLayerHeight = dialogHeight - 22;
				var listContentHeight = dialogHeight - 168;
				var headerAndBodyHeight = dialogHeight - 97;
				var itemData = null;
				var itemDataLayer = null;
				var eventsList = Events.List;

				Tables.AttachTo(item);
				itemData = item.Tables[0].Rows[1].Cells[1];
				itemDataLayer = itemData.childNodes[0];
				Tables.AttachTo(itemDataLayer);

				for (var i = 0; i < subLayers.length; i++)
					if (subLayers[i].className == "EventsListContent")
						eventsListContent = subLayers[i];
				if (eventsListContent != null)
					eventsListContent.style.height = listContentHeight + "px";
				Tables.AttachTo(eventsList);
				Events.Map.style.height = listContentHeight + "px";
				Events.Calendar.style.height = listContentHeight + "px";
				eventsList.style.height = listContentHeight + "px";
				eventsList.Tables[0].style.height = listContentHeight + "px";
				eventsList.Tables[0].Rows[0].Cells[0].style.height = listContentHeight + "px";
				eventsList.Tables[0].Rows[0].Cells[1].style.height = listContentHeight / 2 + "px";
				eventsList.Tables[0].Rows[1].Cells[0].style.height = listContentHeight / 2 + "px";
				itemData.style.height = itemDataHeight + "px";
				itemDataLayer.style.height = itemDataLayerHeight + "px";
				itemDataLayer.Tables[0].style.height = itemDataLayerHeight + "px";
				itemDataLayer.Tables[0].Rows[0].style.height = headerAndBodyHeight + "px";
				itemDataLayer.Tables[0].Rows[0].Cells[0].style.height = headerAndBodyHeight + "px";
				item.Tables[0].style.height = dialogHeight + "px";
				item.style.height = dialogHeight + "px";
			}
			else if (item.id == "galleryDialog")
			{
				var subLayers = item.getElementsByTagName("div");
				var galleryListContent = null;
				var dialogHeight = height - 40;

				for (var i = 0; i < subLayers.length; i++)
					if (subLayers[i].className == "GalleryListContent")
						galleryListContent = subLayers[i];

				if (dialogHeight < 300)
					dialogHeight = 300;
				if (galleryListContent != null)
					galleryListContent.style.height = (dialogHeight - 170) + "px";
				item.style.height = dialogHeight + "px";
			}
			else if (item.id == "treeAssessmentDialog" || item.id == "treePlanningDialog")
			{
				item.style.width = "1000px";
			}
			else if (item.id == "educationDialog" || item.id.indexOf("tree") > -1)
			{
				item.style.width = "800px";
			}
			else if (item.id == "consultingDialog")
			{
				item.style.width = "600px";
			}
			else if (item.id == "aboutDialog")
			{
				item.style.width = "820px";
			}
			if (itemHeaderTable != null)
			{
				itemHeaderTable.style.width = (item.clientWidth - 40) + "px";
			}
			top = (height - parseInt(item.clientHeight)) / 2;
			left = (width - parseInt(item.clientWidth)) / 2;
			item.style.top = top > 10 ? top + "px" : "10px";
			item.style.left = left > 10 ? left + "px" : "10px";
		}
		if (tables != null)
		{
			for (var i = 0; i < tables.length; i++)
			{
				if (tables[i].className == "EventTable")
				{
					var width = tables[i].clientWidth;

					if (width > 0)
					{
						var rows = tables[i].getElementsByTagName("tr");
						rows[2].getElementsByTagName("td")[0].style.width = "200px";
						rows[2].getElementsByTagName("td")[1].style.width = "400px";

						if (rows[rows.length - 1].className == "EventDescription")
							rows[rows.length - 1].getElementsByTagName("td")[0].style.width = "600px";
					}
				}
			}
		}
		if (System.EventCollection)
		{
			for (var i = 0; i < System.EventCollection.length; i++)
			{
				System.EventCollection[i].Invoke("resize");
			}
		}
		/*
		if (dialog != null && dialog.id == "newsDialog")
		{
		var top = (height - parseInt(dialog.clientHeight)) / 2;
		var left = (width - parseInt(dialog.clientWidth)) / 2;
		var h22 = Site.Body.getSize().Height - 190;
		var h190 = Site.Body.getSize().Height - 190;
			
		dialog.style.top = "10px";
		dialog.getElementsByTagName("table")[0].style.height = (Site.Body.getSize().Height - 22) + "px"
		dialog.style.height = dialog.getElementsByTagName("table")[0].clientHeight + "px";
		//dialog.style.left = left > 10 ? left + "px" : "10px";
		if (eventsListContent != null)
		{
		eventsListContent.style.height = h > 0 ? h + "px" : "0px";
		eventsListContent.style.top = "0px";
		}
		}*/
	}

	window.onresize();
	if (System.Load("ActiveDialog") != null)
		ContentItem.OpenChild(System.Load("ActiveDialog"));
}