
var tmrResponseSecs
var tmrResponseID = null
var tmrResponseRunning = false
var tmrResponseDelay = 1000

var responseWaitSecs = 0
var response = ""
var prevResponse = ""
var prevText = ""
var sequence 
var confirmRet
var CRLF = String.fromCharCode(13) + String.fromCharCode(10)


// Ajax Response Timer functions --------------------------------------------------------------------------------------

function tmrResponse_Init(pSequence)
{
	sequence = pSequence

    // Set the length of the timer, in seconds
    tmrResponseSecs = 1
    tmrResponse_Stop()
    tmrResponse_Start()

	document.getElementById("txtSentinel").style.color = "Green"					//JIC
	document.status.LoadMovie(0, "templates/" + theme_folder + "/flash/request_2.swf")
}

function tmrResponse_Stop()
{
    if(tmrResponseRunning)
        clearTimeout(tmrResponseID)

    tmrResponseRunning = false
}

function tmrResponse_Start()
{
    if (tmrResponseSecs==0)
    {
        tmrResponse_Stop()

		var AjaxResponse = _default.AjaxTextResponse(sequence)

		ShowResponse(AjaxResponse.value)		
    }
    else
    {
        self.status = tmrResponseSecs
        tmrResponseSecs = tmrResponseSecs - 1
        tmrResponseRunning = true
        tmrResponseID = self.setTimeout("tmrResponse_Start()", tmrResponseDelay)
    }
}

function ShowResponse(pResponse)
{
	response = pResponse
	//alert('response: ' + response)	
	if (prevResponse == response)
	{
		ResponseWaitSecs = ResponseWaitSecs + 1
		if (ResponseWaitSecs == 1)
		{
				prevText = GetSentinelText();
				AppendSentinelText(CRLF +" Waiting.");
		}			
		else
		{	
			if (ResponseWaitSecs % 10 != 0)
			{
				
				AppendSentinelText(".");
			}
			else
			{
				SetSentinelText(prevText + CRLF + " Waiting " + ResponseWaitSecs + " seconds.");

			}
		}	
		tmrResponse_Init(sequence)													//Restart timer
	} 
	else
	{	
		ResponseWaitSecs = 0
		
		AppendSentinelText(CRLF + response);
		
		prevResponse = response

		var state = response.substring(7,10)

		if (state < "500")
			tmrResponse_Init(sequence)												//Restart timer	
		else
		{
			if (state == "500") 	
			{
				document.getElementById("txtSentinel").style.color = "Blue"			//Done	OK	

				document.status.LoadMovie(0, "templates/" + theme_folder + "/flash/locate_2.swf")

				// Got an OK response; Let's map
						
				var f = document.customer_form						
				var AssetList = f.elements["CMenuLocate1:lstAssets"]
				var sAsset
				if (AssetList == null ) 
				{ 
					sAsset = "Menu" + theme_folder.toUpperCase() + "1:lstAssets";
					AssetList = f.elements[sAsset] ;
				}
				var SelectedAsset = AssetList.selectedIndex
	
															
				f.action = "default.aspx?center_logged=map_logged&&assetid=" + AssetList.options[SelectedAsset].value + "&count=" + date.getTime()
				f.submit()
			}
			else				
			{
				document.getElementById("txtSentinel").style.color = "Red"			//Done	NOT OK	
				document.status.LoadMovie(0, "templates/" + theme_folder + "/flash/fail.swf")
			}
		}
	}
	
	//alert("Response=" + result)
}

function ServerSideAdd_CallBack(result, xmlHttp)
{
	response = result
	ShowResponse()
}

function ServerSideAdd_Error(xmlHttp)
{
	alert(xmlHttp.status);
	alert(xmlHttp.responseText);
}

function CancelResponse()
{
	if(tmrResponseRunning)
	{
		
		AppendSentinelText(CRLF +"*Cancelled Command still in process by Yosemite");
		tmrResponse_Stop();
		document.getElementById("txtSentinel").style.color = "Red";				//Done		

		document.status.LoadMovie(0, "templates/" + theme_folder + "/flash/rest.swf");
	}
}

function ScrollBottom(txtBox)
{
	var objControl = document.getElementById("txtBox");
	objControl.scrollTop = objControl.scrollHeight;
}




//  Change Flash movie "status" on SentinelStatus.ascx for DTMF devices ----------------------------------------------------------
//  Based on old timed_flash_load
//
function telephonyStatus() {

	getAllFlashObjects(); 

	//alert(status);
	
	if(simul=="true"){
		simulation();
		return;
	}
	if(status==status_complete) { //we are done
		window.clearInterval(oInterval);
		window.clearInterval(movie_loaded_timer);
		
		var f = document.customer_form;
		f.action = "default.aspx?center_logged=map_logged&count=" + date.getTime() ;
		f.submit();

	}
	if(status==request_msg){ //verifying connection
		if(!request_msg_flash_loaded) {
			request_msg_flash_loaded=true;
			if(movstats) movstats.LoadMovie(0, ff_request_message);
			window.setTimeout('request_msg_clear()',30000);
			window.setTimeout('delay_location_vehicle()',60000);
		}


		if(theme_folder=='adt' || theme_folder=='ADT' || theme_folder=='Adt')
		{
			if(satflash) satflash.LoadMovie(0, "templates/" + theme_folder + "/flash/sat.swf");
		} 
		else 
		{
			//if(satflash) satflash.LoadMovie(0, "templates/" + theme_folder + "/flash/satellite_animation_base.swf?satellite=three");
			if (document.all)  // IE
				if (satflash) document.satflash.LoadMovie(0, "templates/" + theme_folder + "/flash/SatelliteAnimationBaseIE.swf?satellite=three");
			else
				if (satflash) document.satflash.LoadMovie(0, "templates/" + theme_folder + "/flash/SatelliteAnimationBaseMOZ.swf?satellite=three");
			
			//alert('Theme: '+ theme_folder);
		}
			
	}
	
	if(status ==status_fail || status ==status_fail2){ //fail message
		window.clearInterval(oInterval);
		window.clearInterval(movie_loaded_timer);
		
		fail_msg = mov.GetVariable("/:txtFailStatus");
		if(fail_msg==fail_busy){
			if(movstats) movstats.LoadMovie(0, ff_fail_busy);
		}
		if(fail_msg==fail_noresponse){
			if(movstats) movstats.LoadMovie(0, ff_fail_no_response);
		}
		
	}
	

	count++;
	var this_src = src + "?count=" + count;
	var this_src2 = src2 + "&count=" + count;
	//alert("load movie " + this_src + " " + this_src2 );	
	
	if(mov) {

		mov.LoadMovie(0, this_src);
		}
		
	if(mov2) mov2.LoadMovie(0, this_src2);
	
	//to make sure the variable in flash is available
	
	//normal ie etc//
	//movie_loaded_timer = window.setInterval("movie_loaded()",1000);
}

function GetSentinelText(text)
{
	if (document.all)
	{
		return document.getElementById("txtSentinel").innerText;
	}
	else
	{
		return document.getElementById("txtSentinel").textContent;
	}
}

function AppendSentinelText(text)
{
	if (document.all)
	{
		document.getElementById("txtSentinel").innerText += text;
	}
	else
	{
		document.getElementById("txtSentinel").textContent += text;
	}
}

function SetSentinelText(text)
{
	if (document.all)
	{
		document.getElementById("txtSentinel").innerText = text;
	}
	else
	{
		document.getElementById("txtSentinel").textContent = text;
	}
}
