var ObjectEffected;
//////////////////////////////////////////////////////////////////////////////////////////
//	getFolderImages()													//
//  a private Qumran case.
//  Some parameters on VirtualTour.js
//////////////////////////////////////////////////////////////////////////////////////////
function getFolderImages(url,Resaultobj)
{

	var div = document.getElementById(Resaultobj);
	ExecuteAjax(url,div);

}
//////////////////////////////////////////////////////////////////////////////////////////
//			Execute Ajax Function														//
//////////////////////////////////////////////////////////////////////////////////////////
function ExecuteAjax( url, obj, IsNaObj, callfunction)
{
	try
	{
		if ( IsNaObj )
		{
			ExecuteAjax.IsNaObj = true;
			ExecuteAjax.callfunction = callfunction;
		}
		else ExecuteAjax.IsNaObj = false;
		document.body.style.cursor = 'wait';
		xmlHttp = GetXmlHttpObject();
		if (xmlHttp==null)
		{
			document.body.style.cursor='default';
			alert(document.getElementById(prefix+"Ajax_Error").value + "123" );
			return;
		} 
		//shiftOpacity('ajaxResault', 1000);
		document.body.style.cursor = 'default';
		url += "&sid="+Math.random();
		ObjectEffected = obj;
		xmlHttp.onreadystatechange = stateChanged;	
		ObjectEffected.innerHTML = "";
		CreateLoadingImg(ObjectEffected);
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
		
	}
	catch(e){}
}
//////////////////////////////////////////////////////////////////////////////////////////
//			State Chang xml http requst function										//
//////////////////////////////////////////////////////////////////////////////////////////
function stateChanged() 
{	
	if (xmlHttp.readyState == 4)
	{
		// if "OK"
		if ( xmlHttp.status == 200 )
		{
			ObjectEffected.innerHTML = "";
			if ( ExecuteAjax.IsNaObj ) 
			{
				ExecuteAjax.ret = xmlHttp.responseText;
				eval(ExecuteAjax.callfunction + "(" + ExecuteAjax.ret + ")" );
				return;
			}
			if ( xmlHttp.responseText.replace(/\n/gi,"") == "NODATA" )
			{
				ObjectEffected.style.display = 'none';
				return;
			}
			
			var sn = document.createElement('span');
			ObjectEffected.innerHTML = xmlHttp.responseText
			sn.style.align = "center;"
			ObjectEffected.appendChild(sn)
		}
		else
		{
				ObjectEffected.innerHTML = "";
				var sn = document.createElement('span');
				ObjectEffected.innerHTML = xmlHttp.responseText;
				
				//** comment on error
				ObjectEffected.innerHTML = document.getElementById(prefix+"Ajax_Error").value;
				sn.style.align = "center;"
				ObjectEffected.appendChild(sn)
		}
	}
}
//////////////////////////////////////////////////////////////////////////////////////////
//			create XMLHttpReuest object for Firefox, Opera 8.0+, Safari	and explorer	//
//////////////////////////////////////////////////////////////////////////////////////////
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;
}
//////////////////////////////////////////////////////////////////////////////////////////
//			create Loading image														//
//////////////////////////////////////////////////////////////////////////////////////////
function CreateLoadingImg(ObjectEffected)
{
	try
	{
		var spn = document.createElement('span');
		spn.style.padding = "0 6px 0 6px;"
		spn.style.align	= "center;"
		var pleaseWait=document.getElementById(prefix+"Please_Wait");
		if(pleaseWait)
			spn.innerHTML = pleaseWait.value  ;//Please_Wait.value;
		var img = document.createElement('img');
		img.src= "../../images/tiny_red.gif";
		
		ObjectEffected.appendChild (spn);
		ObjectEffected.appendChild (img);
	}
	catch(e){}
}
//////////////////////////////////////////////////////////////////////////////////////////
//			Opacity object filter														//
//////////////////////////////////////////////////////////////////////////////////////////
function opacity(id, opacStart, opacEnd, millisec) 
{ 
    //speed for each frame 
    var speed = Math.round(millisec / 100); 
    var timer = 0; 

    //determine the direction for the blending, if start and end are the same nothing happens 
    if(opacStart > opacEnd) 
    { 
        for(i = opacStart ; i >= opacEnd; i--) 
        { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++; 
        } 
    } 
    else if(opacStart < opacEnd) 
    { 
        for(i = opacStart; i <= opacEnd; i++) 
        { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++; 
        } 
    } 
} 
//////////////////////////////////////////////////////////////////////////////////////////
//			change the opacity for different browsers 									//
//////////////////////////////////////////////////////////////////////////////////////////
function changeOpac(opacity, id) 
{ 
    var object = document.getElementById(id).style; 
    object.opacity = (opacity / 100); 
    object.MozOpacity = (opacity / 100); 
    object.KhtmlOpacity = (opacity / 100); 
    object.filter = "alpha(opacity=" + opacity + ")"; 
} 
//////////////////////////////////////////////////////////////////////////////////////////
//			shift Opacity 																//
//////////////////////////////////////////////////////////////////////////////////////////
function shiftOpacity(id, millisec) 
{ 
    //if an element is invisible, make it visible, else make it ivisible 
    if(document.getElementById(id).style.opacity == 0) 
    { 
        opacity(id, 100, 0, millisec); 
    } 
    else 
    { 
        opacity(id, 0, 100, millisec); 
    } 
} 
