// ltisvms.js

// TD 001 05-Oct-2006
//	Remove Textual Event Data from Map Frame
//	Add Init/Done to LTIS processing so DOM not continually being updated.
//
// TD 002 19-Feb-2006
//  Add capability to notify users of stale LTIS data

ltisvmsCycle = 0;
ltis_infolib_updated = false;
ltisInfoText = "" ;

function ltisvmsLoad ( ltisopt, minx, maxx, miny, maxy, metresPerPixel, cycle ) {

	var elem = document.getElementById("ltisvmsFrame");
	
	if ( !elem ) return;

	//	Get current ltis id from infolib...
	var ltisid = infolibGetCurrLTISId ();

	if ( ltisvmsLoad.arguments.length == 8 ) {
		if ( ltisvmsLoad.arguments[7] == 'text' ) {
			var url = "ltistext.php?ltis=" + ltisopt + "&minx=" + minx + "&maxx=" + maxx + "&miny=" + miny + "&maxy=" + maxy;
			}
		}
	else {
		var url = "ltisvms.php?cycle=" + cycle;
		url += "&minx=" + minx + "&maxx=" + maxx + "&miny=" + miny + "&maxy=" + maxy;
		url += "&mpp=" + metresPerPixel + "&ltis=" + ltisopt;
		url += "&vms=" + cmdVMS;
		if ( ltisid != 0 )
			url += "&ltisid=" + ltisid;
		}
			
	elem.src = url;

	//LKL Accessibility
//	parent.getLTISText(ltisopt); // TD 001
	}


function ltisvmsReload () {

	if ( parent.isOn )
		if ( parent.isOn ( 'LTIS' ) ) {
			ltisvmsCycle++;
			var ltisOptions = parent.getLTISOptions();
			ltisvmsLoad(ltisOptions,minx,maxx,miny,maxy,metresPerPixel,ltisvmsCycle);		
			}
	}


function ltisvmsStartUpdate () {

	var elem = document.getElementById ( "ltisvmsDisplayDiv" );
	if ( !elem ) return;

	elem.style.visibility = "hidden";
	elem.innerHTML = "";

	}

function ltisvmsEndUpdate () {

	var elem = document.getElementById ( "ltisvmsDisplayDiv" );
	if ( !elem ) return;

	elem.style.visibility = "visible";

	var tmp_ltis_id = infolibGetCurrLTISId ();

	if ( tmp_ltis_id != 0 ) {
		var tmp_id = 'ltis_div_' + tmp_ltis_id;
		var tmp_elem = document.getElementById ( tmp_id );
		if ( !tmp_elem )
			infolibHide (); 
		}

/*
	if ( tmp_ltis_id != 0 )
		if ( ltis_infolib_updated == false ) {
			//	We have a dangling infolib box with old/unwanted ltis event text, so get rid of it...
			infolibHide ();
			}
*/
	}

function ltisShowText ( html ) {

	var elem = document.getElementById ( "ltisTextDiv" );
	if ( !elem ) return;

	if ( html == '' ) {
		alert ( "There are no alerts in the current map area" );
		return;
		}

	elem.innerHTML = html;
	elem.style.visibility = "visible";

	}

function ltisClose() {

	var elem = document.getElementById ( "ltisTextDiv" );
	if ( !elem ) return;

	elem.style.visibility = 'hidden';

	}
	
function ltisDisplayInit ()
	{
//	alert ("init") ;
	ltisInfoText = "" ;
	if (arguments.length < 1)
		return ;
		
	if (arguments[0])
		{
		ltisInfoText = '<div id="ltisWarnDiv" style="font-family: Verdana, Arial, Helvetica, sans-serif; ' ;
		ltisInfoText += 'BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; ' ;
		ltisInfoText += 'BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid;  ' ;
		ltisInfoText += 'font-size: 9px; font-style: normal; background-color: #eeaaaa; color: #214163; ' ;
		ltisInfoText += 'filter:DXImageTransform.Microsoft.Alpha(opacity=85); opacity:0.85; ' ;
		ltisInfoText += 'position:absolute; left:1px; top:370px; width:599px; height:15px; z-index:100000;">' ;
		ltisInfoText += 'Owing to technical problems, information about incidents occurring today may be delayed or incomplete.</div>' ;	
		}
	}

function ltisDisplayDone ()
	{
	var elem = document.getElementById ( "ltisvmsDisplayDiv" );
	if ( !elem ) return;
	elem.innerHTML = ltisInfoText ;
//	alert ("done") ;
	}


function ltisDisplaySite ( id, html, title, x, y, img, z ) {

//	var elem = document.getElementById ( "ltisvmsDisplayDiv" );
	var actionStr = "'" + title + "','#96a297','standardWhite','" + html + "','#ffffff','ilib', 100, 'ltis-online', '', '" + id + "'";
	var js = "onmouseover=\"return parent.infolib(" + actionStr + ");\" ";
	js += " onmouseout=\"parent.infolibClearTimeout();\"";

	var divid = 'ltis_div_' + id;

	var div = "<div id=" + divid + " style='position:absolute; left:" + x + "px; top:" + y + "px; cursor:pointer; z-index: " + z + ";'>";
	div += "<a href=\"javascript:parent.infolib(" + actionStr + ")\";>";	
	//LKL Accessibility added alt text in
	div += "<img " + js + " alt = " + "'" + title + "'" + " src=" + img + " border=0px /></a>";  	
	div += "</div>\n";

//	elem.innerHTML += div ;
	ltisInfoText += div ;

	}

function ltisDisplayInfo ( id, html, title, x, y, img ) {

	if (( ilId = infolibGetCurrLTISId ()) == 0 ) return;

	var elem = document.getElementById("infoDiv");
	if ( !elem ) return;
	if ( elem.style.visibility != 'visible' )
		return;

	infolib( title, '#96a297', 'standardWhite', html, '#ffffff', 'ilib', 100, 'ltis-online', '', id );

	ltis_infolib_updated = true;

	}
	
//NCG 07/12/2007 - Added addslashes function to enable use of quotes in VMS messages (MAPPING-FAULT-0048)
function addslashes(str) {
	str=str.replace(/\\/g,'\\\\');
	str=str.replace(/\'/g,'\\\'');
	str=str.replace(/\"/g,'\\&quot;');
	return str;
}
	
function vmsDisplaySite ( id, title, html, x, y, img ) {


	var elem = document.getElementById ( "ltisvmsDisplayDiv" );
	if ( !elem ) return;
	
	//var s = "'" + title + "','#96a297','standardWhite','" + "test" + "','#ffffff','standard', 100, 'ltis-online'";
	//var js = "onmouseover=return infolib(" + s + "); ";
	

	//LKL Accessibility = put the infolib into actionStr so I could apply to the href
	//NCG 07/12/2007 - Added addslashes to allow quotes in VMS messages (MAPPING-FAULT-0048)
	var actionStr = "'" + title + "','#96a297','standardWhite','" + addslashes(html) + "','#ffffff','ilib', 100, 'vms', '" + id + "'";
	var js = "onmouseover=\"return parent.infolib(" + actionStr + ");\" ";
	js += " onmouseout=\"parent.infolibClearTimeout();\"";

	//LKL Accessibility added href to make icon tabable
	var div = "<div style='position:absolute; left:" + x + "px; top:" + y + "px; cursor:pointer; z-index:2;'>";	
	div += "<a href=\"javascript:infolib(" + actionStr + ");\">";
	//LKL Accessibility added alt text in
	div += "<img " + js + " alt='Variable Message Sign'" + " src=" + img + " border=0px /></a>"; 
	div += "</div>\n";

/*
	var div = "<div style='position:absolute; left:" + x + "px; top:" + y + "px; cursor:pointer; z-index:2;'>";	
	div += "<img " + js + " src=" + img + " border=0px />";  	
	div += "</div>\n";
*/
	elem.innerHTML += div;

	}

