var eventContainer = false;
var galleryContainer = false;
var galleryContainerWrapper = false;
var menuContainer = false;
var menuTable = false;
                           
var regularEventContainer = false;

var banner = false;
var bannerPlaceHolder = false;

var eventTitle = false;
var eventDate = false;
var eventText = false;

var XmlHttpRequest = false;

var msgBox = false;
var mask = false;

function createXmlHttp()
{
	try
	{
		return new ActiveXObject("Msxml2.XMLHTTP");
	}
	catch (e)
	{
		try
		{
			return new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch (ee)
		{
		}
	}

	if (typeof XMLHttpRequest!='undefined')
	{
		return new XMLHttpRequest();
	}
}

function showEvent(eventId)
{
	banner = document.getElementById('banner');
	eventTitle = document.getElementById('eventTitle');
	eventDate = document.getElementById('eventDate');
	eventText = document.getElementById('eventText');
	eventContainer = document.getElementById('eventContainer');
	bannerPlaceHolder = document.getElementById('bannerPlaceHolder');


	if ($('#eventContainerWrapper').css('display') == 'none' )
	{
		$('#eventContainerWrapper').animate({height: 'show'}, 400);
		bannerPlaceHolder.style['display'] = 'block';
		bindEvent(eventId);
	}
	else
	{
		eventTitle.innerHTML = '';
		eventDate.innerHTML = '';
		eventText.innerHTML = '';
		bannerPlaceHolder.innerHTML = '';
		bannerPlaceHolder.style['display'] = 'none';
   		$('#eventContainerWrapper').animate({width: 'hide'}, 300);
	}
}

function showRegularEvent(eventId)
{
	eventTitle = document.getElementById('eventTitle');
	eventDate = document.getElementById('eventDate');
	eventText = document.getElementById('eventText');
	eventContainer = document.getElementById('eventContainer');

	if ($('#eventContainerWrapper').css('display') == 'none' )
	{
		$('#eventContainerWrapper').animate({height: 'show'}, 400);
		bindRegularEvent(eventId);
	}
	else
	{
		eventTitle.innerHTML = '';
		eventDate.innerHTML = '';
		eventText.innerHTML = '';
   		$('#eventContainerWrapper').animate({width: 'hide'}, 300);
	}

}

function bindEvent(eventId)
{
	var xmlhttp = createXmlHttp();
	if (xmlhttp)
	{
		xmlhttp.open('GET', '/events.php?event_id=' + eventId, true);
		xmlhttp.onreadystatechange = function()
		{
			if (xmlhttp.readyState == 4)
			{
				if(xmlhttp.status == 200)
				{
					var xml = xmlhttp.responseXML;

					bannerNode = xml.getElementsByTagName('banner');
					try
					{
						if (bannerNode[0].childNodes[0].nodeValue!='')
						{
							var bannerImg = document.createElement('img');
							bannerImg.setAttribute('src', 'http://www.emporiocafe.ru/events/' + bannerNode[0].childNodes[0].nodeValue);
							bannerImg.setAttribute('id', 'bannerImage');
							bannerImg.setAttribute('style', 'display: block');
							bannerPlaceHolder.appendChild(bannerImg);
						}
					}
					catch (err)
					{}
			

					var dateNode = xml.getElementsByTagName('userFriendlyDate');
						eventDate.innerHTML = dateNode[0].childNodes[0].nodeValue;
					
					var headerNode = xml.getElementsByTagName('title');
						eventTitle.innerHTML = headerNode[0].childNodes[0].nodeValue;

					var textNode = xml.getElementsByTagName('text');
						eventText.innerHTML = textNode[0].childNodes[0].nodeValue;
					
				}
			}
		}
	}

	xmlhttp.send(null);
}

function hideGallery()
{
	galleryContainer = document.getElementById('galleryContainer');
	galleryContainer.innerHTML = '';
	$('#galleryContainerWrapper').animate({width: 'hide'}, 300);
}


function showGallery(galleryId)
{
	galleryContainer = document.getElementById('galleryContainer');
	if (galleryContainer.style['visibility'] == 'hidden')
		galleryContainer.style['visibility'] = 'visible';

	if ($('#galleryContainerWrapper').css('display') == 'none' )
		$('#galleryContainerWrapper').animate({height: 'show'}, 400);

	var xmlhttp = createXmlHttp();
	if (xmlhttp)
	{
		var reqPath = '/galleries.php?gallery_id=' + galleryId;
		xmlhttp.open('GET', reqPath, false);
		xmlhttp.onreadystatechange = function()
		{
			if (xmlhttp.readyState == 4)
				if(xmlhttp.status == 200)
					galleryContainer.innerHTML = xmlhttp.responseText;
		}
	}

	xmlhttp.send(null);
}


function hideMenu()
{
	menuContainer = document.getElementById('menuContainer');
	menuContainer.innerHTML = '';

//	menuTable = document.getElementById('menuTable');
//	menuTable.innerHTML = '';

	$('#menuContainerWrapper').animate({width: 'hide'}, 300);
}


function showMenu(categoryId)
{
	menuContainer = document.getElementById('menuContainer');

	if (menuContainer.style['visibility'] == 'hidden')
		menuContainer.style['visibility'] = 'visible';

	if ($('#menuContainerWrapper').css('display') == 'none' )
		$('#menuContainerWrapper').animate({height: 'show'}, 400);

	var xmlhttp = createXmlHttp();
	if (xmlhttp)
	{
		xmlhttp.open('GET', '/menu.php?category=' + categoryId, true);
		xmlhttp.onreadystatechange = function()
		{
			if (xmlhttp.readyState == 4)
			{
				if(xmlhttp.status == 200)
				{
					var html = xmlhttp.responseText;
					menuContainer = document.getElementById('menuContainer');
					menuContainer.innerHTML = html;
				}
			}
		}
	}

	xmlhttp.send(null);
}


function showImage(imageId)
{
	galleryContainerWrapper = document.getElementById('galleryContainerWrapper');
	galleryContainerWrapper.style['visibility'] = 'hidden'; 

	createMask(80);

	var xmlhttp = createXmlHttp();
	if (xmlhttp)
	{
		xmlhttp.open('GET', '/galleries.php?image_id=' + imageId, true);
		xmlhttp.onreadystatechange = function()
		{
			if (xmlhttp.readyState == 4)
			{
				if(xmlhttp.status == 200)
				{

					//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
					//msgBox.innerHTML += 'status=200<br/>';
					//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

					var xml = xmlhttp.responseXML;
					var imageNode = xml.getElementsByTagName('image');

					//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
					//msgBox.innerHTML += 'imageNode='+imageNode[0]+'<br/>';
					//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


					var width = false;
					width = imageNode[0].childNodes[3].childNodes[0].nodeValue;
					var height = false;
					height = imageNode[0].childNodes[4].childNodes[0].nodeValue;

					//++++++++++++++++++++++++++++++++++++++++++++++++++++
					//msgBox.innerHTML += 'height=' + height;
					//msgBox.innerHTML += 'width=' + width;
					//++++++++++++++++++++++++++++++++++++++++++++++++++++

					var imageWrapper = document.getElementById('imageWrapper');
					imageWrapper.style['display'] = 'block';
					imageWrapper.style['z-index'] = '10';
					
					imageWrapper.style['width'] = Number(width) + 20 + 'px';
					imageWrapper.style['height'] = Number(height) + 40 + 'px';

					//++++++++++++++++++++++++++++++++++++++++++++++++++++
					//msgBox.innerHTML += 'height=' + Number(window.innerWidth/2 - width/2);
					//msgBox.innerHTML += 'width=' + Number(-1*height/2-10) + 'px';
					//++++++++++++++++++++++++++++++++++++++++++++++++++++
					
					var viewPortWidth;
					var viewPortHeight;


					if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight))
					{
						viewPortWidth = document.documentElement.clientWidth;
						viewPortHeight = document.documentElement.clientHeight;
					}
					else
					{
						viewPortWidth = window.innerWidth;
						viewPortHeight = window.innerHeight;
					}


					//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
					//alert('posX=' + Number(viewPortWidth/2 - width/2 - 10));
					//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

				
					var topPos = (Number(viewPortHeight/2 - height/2 - 10) < 0) ? 50 : Number(viewPortHeight/2 - height/2 - 10);

					imageWrapper.style['left'] = Number(viewPortWidth/2 - width/2 - 10) + 'px';
					imageWrapper.style['top'] = topPos + 'px';
			
					var image = document.createElement('img');
					image.setAttribute('src', 'http://www.emporiocafe.ru/gallery/' + imageNode[0].childNodes[1].childNodes[0].nodeValue);
					image.style['margin-top'] = '20px';
					imageWrapper.appendChild(image);
				}
			}
		}
	}

	xmlhttp.send(null);
	
}



function bindRegularEvent(eventId)
{
	var xmlhttp = createXmlHttp();
	if (xmlhttp)
	{
		xmlhttp.open('GET', '/regularevents.php?event_id=' + eventId, true);
		xmlhttp.onreadystatechange = function()
		{
			if (xmlhttp.readyState == 4)
			{
				if(xmlhttp.status == 200)
				{
					var xml = xmlhttp.responseXML;
			

					var dateNode = xml.getElementsByTagName('date');
						eventDate.innerHTML = dateNode[0].childNodes[0].nodeValue;
					
					var headerNode = xml.getElementsByTagName('title');
						eventTitle.innerHTML = headerNode[0].childNodes[0].nodeValue;

					var textNode = xml.getElementsByTagName('text');
						eventText.innerHTML = textNode[0].childNodes[0].nodeValue;
					
				}
			}
		}
	}

	xmlhttp.send(null);
}

function hideImage()
{
	var imageWrapper = document.getElementById('imageWrapper');
	imageWrapper.removeChild(imageWrapper.lastChild);
	imageWrapper.style['display'] = 'none';

	removeMask();

	galleryContainerWrapper = document.getElementById('galleryContainerWrapper');
	galleryContainerWrapper.style['visibility'] = 'visible'; 

}

function createMask(opacity)
{
    //var mask = document.createElement('div');
    //mask.id = 'maskDiv';
	mask = document.getElementById('maskDiv');
	if (mask)
	{
	    mask.style['background'] = 'rgb(0, 0, 0)';
    	mask.style['position'] = 'absolute';
	    mask.style['top'] = '0';
    	mask.style['left'] = '0';
	    mask.style['margin'] = '0';
    	mask.style['z-index'] = 5;
        
	    var ww = eval((document.body.scrollWidth > document.body.offsetWidth) ? document.body.scrollWidth : document.body.offsetWidth) + 'px';
	    mask.style['width'] = ww;
    	var hh = eval((document.body.scrollHeight > document.body.offsetHeight) ? document.body.scrollHeight : document.body.offsetHeight) + 'px';
	    mask.style['height'] = hh;
        
	    mask.style['overflow'] = 'hidden';
	    mask.style['opacity'] = eval('0.' + opacity);
    	mask.style.filter = 'alpha(opacity=' + opacity + ')';
		//document.body.appendChild(mask);
		mask.style['display'] = 'block';
	}
	//else
	//	alert ('Error! No mask found');
}

function removeMask()
{
    mask = document.getElementById('maskDiv');
    if (mask)
        mask.style['display'] = 'none';
}

