// JavaScript Document
/*

Author: Lukasz Koszanski

E-mail: lkoszanski@gmail.com

This code may not be be modified in any form or shape by anyone except the rightful author.

*/
var currentProjId, currentColName, xmlHttp

var getAllImgCalled = false


function setImgUrls(value,elmId)
{
	document.getElementById(elmId).setImgUrls(value);
}


function setLargeImgUrls(value,elmId)
{
	document.getElementById(elmId).setLargeImgUrls(value);
}


function setProjVars(projId, colName)
{
	currentProjId = projId
	currentColName = colName
}

function setProjId(projId)
{
	currentProjId = projId
	setTimeout("getImgUrls()", 500);
}


function loadFlashContainerRealizacje(projId)
{
	currentProjId = projId
	//setTimeout("getImgUrlsInstytucjonalni("+projId+")", 500);
	setTimeout("getImgUrlsRealizacje()", 500);	
}

function getImgUrlsRealizacje(){
	
	if(getAllImgCalled == false)
	{	
		getAllImgCalled = true	
		
		xmlHttp=GetXmlHttpObject()
		
		if (xmlHttp==null)
		{
			alert ("Browser does not support HTTP Request")
			return
		}
		
		var url="/palladio/code/getImgUrlsRealizacje.php"
		
		url=url+"?projId="+currentProjId
		url=url+"&sid="+Math.random()
		
		//console.log("getImgUrls :: "+url)
		
		xmlHttp.onreadystatechange=processGetImgUrlsRealizacje
		xmlHttp.open("GET",url,true)
		xmlHttp.send(null)	
	}
}

function processGetImgUrlsRealizacje()
{
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		
		var server = eval('('+xmlHttp.responseText+')');
		
		var imgsRealizacjeArr =  new Array();
		
		for(var i in server.picture_path)
			imgsRealizacjeArr[i] = server.picture_path[i];
		
		setImgUrls(imgsRealizacjeArr, "ImageGalleryRealizacje");
	}
}


function loadFlashContainer(projId)
{
	currentProjId = projId
	//setTimeout("getImgUrlsInstytucjonalni("+projId+")", 500);
	setTimeout("getImgUrlsInstytucjonalni()", 500);
}

function getImgUrlsInstytucjonalni(){
	
	if(getAllImgCalled == false)
	{	
		getAllImgCalled = true	
		
		xmlHttp=GetXmlHttpObject()
		
		if (xmlHttp==null)
		{
			alert ("Browser does not support HTTP Request")
			return
		}
		
		var url="/palladio/code/getImgUrlsInstytucjonalni.php"
		
		url=url+"?projId="+currentProjId
		url=url+"&sid="+Math.random()
		
		//console.log("getImgUrls :: "+url)
		
		xmlHttp.onreadystatechange=processGetImgUrlsInstytucjonalni
		xmlHttp.open("GET",url,true)
		xmlHttp.send(null)	
	}
}

function processGetImgUrlsInstytucjonalni()
{
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		var response = eval('('+xmlHttp.responseText+')');
		
		var imgsArr =  new Array();
		
		for(var i in response.picture_path)
			imgsArr[i] = response.picture_path[i];
		
		setImgUrls(imgsArr, "ImageGalleryInstytucjonalni");
	}
}

function getImgUrls(){
	
	if(getAllImgCalled == false)
	{	
		getAllImgCalled = true	
		
		xmlHttp=GetXmlHttpObject()
		
		if (xmlHttp==null)
		{
			alert ("Browser does not support HTTP Request")
			return
		}
		
		var url="/palladio/code/getImgUrls.php"
		
		url=url+"?projId="+currentProjId
		url=url+"&sid="+Math.random()
		
		//console.log("getImgUrls :: "+url)
		
		xmlHttp.onreadystatechange=processGetImgUrls
		xmlHttp.open("GET",url,true)
		xmlHttp.send(null)	
	}
}


function processGetImgUrls(){
	
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		var response = eval('('+xmlHttp.responseText+')');

		var anonsArr =  new Array()
		anonsArr = response.anons_media

		var parterjArr = new Array()
		for(var i in response.parter_media)
			parterjArr[i] = response.parter_media[i]
		
		var pietrojArr = new Array()
		for(var i in response.pietro_media)
			pietrojArr[i] = response.pietro_media[i]
		
		var rzutArr = new Array()
		for(var i in response.rzut_media)
			rzutArr[i] = response.rzut_media[i]
			
		var przekrojArr = new Array()
		for(var i in response.przekroj_media)
			przekrojArr[i] = response.przekroj_media[i]
		
		var elewacjeArr =  new Array()
		for(var i in response.elewacje_media)
			elewacjeArr[i] = response.elewacje_media[i]
		
		var dzialkaArr = new Array()
		for(var i in response.dzialka_media)
			dzialkaArr[i] = response.dzialka_media[i]
		
		var renderingiArr = new Array()
		for(var i in response.renderingi_media)
			renderingiArr[i] = response.renderingi_media[i]
		
		var piwnicaArr = new Array()
		for(var i in response.piwnica_media)
			piwnicaArr[i] = response.piwnica_media[i]
		
		setImgUrls(anonsArr, "ImageGalleryAnons")
		
		if(response.hasParter == "t"){
			setImgUrls(parterjArr, "ImageGalleryParter")
		}
		
		if(response.hasPietro == "t"){
			setImgUrls(pietrojArr, "ImageGalleryPietro")
		}
		
		if(response.hasRzut == "t"){
			setImgUrls(rzutArr, "ImageGalleryRzut")
		}
		
		setImgUrls(przekrojArr, "ImageGalleryPrzekroj")
		setImgUrls(elewacjeArr, "ImageGalleryElewacje")
		setImgUrls(dzialkaArr, "ImageGalleryDzialka")
		
		if(response.hasPiwnica == "t"){
			setImgUrls(piwnicaArr, "ImageGalleryPiwnica")
		}
		
		//This is only usefull if we have large renderigs
		//setLargeImgUrls(renderingiArr, "ImageGalleryLarge")
	
	}	
}

/* Example of ajax communication

function callServerFunction( arg1, arg2, arg3){	

	xmlHttp=GetXmlHttpObject()
	
	if (xmlHttp==null){
 		
		alert ("Browser does not support HTTP Request")
 
 	return

	}
	
	
	//GET REQUEST - used to pass small amount of data to the server
	var url="/root/somefile.php"
	url=url+"?arg1Name="+arg1
	url=url+"&arg2Name="+arg2
	url=url+"&arg3Name="+arg3
	url=url+"&sid="+Math.random()
	xmlHttp.onreadystatechange=processcallServerFunction
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
	
	//POST REGUEST - used to pass large amount of data to the server
	var url = "/root/somefile.php";
	var params = "arg1="+arg1+"&arg2="+arg2+"&arg3="+arg3+"&sid="+Math.random();
	xmlHttp.open("POST", url, true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.setRequestHeader("Content-length", params.length);
	xmlHttp.setRequestHeader("Connection", "close");
	xmlHttp.onreadystatechange=processcallServerFunction
	xmlHttp.send(params);	

}

function processcallServerFunction(){

	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ 
 		
		
	}
}

End Example of ajax communication */


function GetXmlHttpObject(){


	var xmlHttp=null;
	
	try{
 	
	// Firefox, Opera 8.0+, Safari
 	
	xmlHttp=new XMLHttpRequest();
 	
	}catch (e){
 	
	//Internet Explorer
 	
		try{
  		
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  		
		}catch (e){
  
  			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  		}
 	}

	return xmlHttp;

}
