//Copyright 2007, Air Traffic Control the Netherlands (LVNL). 
//Unauthorised use or copying of this document is prohibited.
//Developed by Jonas van Straaten.


var Map, ControlPanel, StyleEditor, factor, transp, CurrentClassAtt
var oldTopLevelId="level-9000-9500";
 
function initMap() 
{
Map = this.document.svgMap.getSVGDocument()
}
function initControlPanel() 
{
ControlPanel = this.document.svgControlPanel.getSVGDocument()
}


function hidebox(evt)
{
box=evt.getTarget().getParentNode();
box.setAttribute("visibility","hidden");
}

function displayOnOff(evt)
{
ListItem = evt.getTarget().getParentNode();
ListId = ListItem.getAttribute("id");
Checkmark = ListItem.getElementsByTagName("use").item(1);
if(Checkmark.getAttribute("opacity") == 1) {  opac = "0"; vis = "hidden"; }
else {  opac = "1"; vis = "visible"; };

if( Map.getElementById(ListId) )
{	MapObj = Map.getElementById(ListId);
	MapObj.setAttribute("visibility", vis);
	//If Obj is group of use elements, set visibility of all use elements:
	if(MapObj.getElementsByTagName("use").length > 0)
	{	MapObjParts = MapObj.getElementsByTagName("use");
		for(i=0; i<MapObjParts.length;++i)
		{	MapObjParts.item(i).setAttribute("visibility", vis);
		}
	}
}
Checkmark.setAttribute("opacity", opac); 
}

function AllLayersOnOff(evt)
{
Action=evt.getTarget().getParentNode().getAttribute("id");
ListParent=evt.getTarget().getParentNode().getParentNode();
List=ListParent.getElementsByTagName("g");
if(Action == "layersOn") { opac = "1"; vis = "visible"; }
if(Action == "layersOff") { opac = "0"; vis = "hidden"; }

for(i=0; i<List.length;++i)
{ if( List.item(i).getAttribute("class") == "listItem" )
  {	ListId=List.item(i).getAttribute("id");
	CheckMark = List.item(i).getElementsByTagName("use").item(1);
  	if(CheckMark.getAttribute("opacity") != opac)
  	{	if( Map.getElementById(ListId) )
		{	MapObj = Map.getElementById(ListId);
			MapObj.setAttribute("visibility", vis);
			//If Obj is group of use elements, set visibility of all use elements:
			if(MapObj.getElementsByTagName("use").length > 0)
			{	MapObjParts = MapObj.getElementsByTagName("use");
				for(j=0; j<MapObjParts.length;++j)
				{	MapObjParts.item(j).setAttribute("visibility", vis);
				}
			}
		}
	CheckMark.setAttribute("opacity", opac);
  	}
  }
}
}

function rotateChart(evt)
{
var rotateButton=evt.getTarget().getParentNode();
var Groups = Map.getElementsByTagName("g");
var GroupId;
for(i=0; i<Groups.length;++i)
   { 	GroupId=Groups.item(i).getAttribute("id");
      if (GroupId.substring(0,5)=="layer" || GroupId.substring(0,5)=="level" )
      {	var trans = Groups.item(i).getAttribute("transform");
		var pos1 = trans.indexOf("rotate") + 7;
		if (pos1 > 7)
		{
	    	 var angle = trans.substring(pos1,trans.length);
		 var pos2 = angle.indexOf(")");
		 if (rotateButton.getAttribute("id") == "rotateRight") 
		   {angle = parseInt(angle.substring(0,pos2))-5}
		 else
		   {angle = parseInt(angle.substring(0,pos2))+5}
		 trans = trans.substring(0,pos1) + angle + ")";
		 //alert(trans);
	       Groups.item(i).setAttribute("transform",trans);
	 	}  
	}
   }

}


function initViewAngle() 
{
var Groups = Map.getElementsByTagName("g");
var GroupId;
var z=0;
var ViewAngleHolder=Map.getElementById("ViewAngle");
var ViewAngle=ViewAngleHolder.getAttribute("fme:angle");
var ChangeAngle=35;

ViewAngle=ViewAngle-ChangeAngle;

if (ViewAngle <= 90 && ViewAngle >= 0)
   { ViewAngleHolder.setAttribute("fme:angle",ViewAngle);
   for(i=0; i<Groups.length;++i)
   { 	GroupId=Groups.item(i).getAttribute("id");
      if (GroupId.substring(0,5)=="layer" || GroupId.substring(0,5)=="level")
      {	var trans = Groups.item(i).getAttribute("transform");
		var pos1 = trans.indexOf("translate") + 10;
		var pos2 = trans.indexOf("scale") + 6;
	    	var scaleItems = trans.substring(pos2,trans.length);
		var pos3 = scaleItems.indexOf(")");
		if (ViewAngle==0)
		{
		scaley = 0.001;
		transy = Math.abs(z*0.22*Math.cos(ViewAngle*Math.PI/180));
		}
		else
		{
		scaley = Math.abs(Math.sin(ViewAngle*Math.PI/180));
		transy = Math.abs(z*0.22*Math.cos(ViewAngle*Math.PI/180));
		}
		trans = trans.substring(0,pos1) + "0 " + transy + ") scale(1, " + scaley + scaleItems.substring(pos3,trans.length);
		Groups.item(i).setAttribute("transform",trans);
		
		if (GroupId.substring(0,5)=="level") z=z+1;
	}
   }
   }

}

function changeOblique(evt)
{
var obliqueButton=evt.getTarget().getParentNode();
var Groups = Map.getElementsByTagName("g");
var GroupId;
var z=0;
var ViewAngleHolder=Map.getElementById("ViewAngle");
var ViewAngle=ViewAngleHolder.getAttribute("fme:angle");
var ChangeAngle=5;

if (obliqueButton.getAttribute("id") == "moveDown") 
{  ViewAngle=ViewAngle-ChangeAngle;}
else
{  ViewAngle=parseInt(ViewAngle)+ChangeAngle;}

if (ViewAngle <= 90 && ViewAngle >= 0)
   { ViewAngleHolder.setAttribute("fme:angle",ViewAngle);
   for(i=0; i<Groups.length;++i)
   { 	GroupId=Groups.item(i).getAttribute("id");
      if (GroupId.substring(0,5)=="layer" || GroupId.substring(0,5)=="level")
      {	var trans = Groups.item(i).getAttribute("transform");
		var pos1 = trans.indexOf("translate") + 10;
		var pos2 = trans.indexOf("scale") + 6;
	    	var scaleItems = trans.substring(pos2,trans.length);
		var pos3 = scaleItems.indexOf(")");
		if (ViewAngle==0)
		{
		scaley = 0.001;
		transy = Math.abs(z*0.22*Math.cos(ViewAngle*Math.PI/180));
		}
		else
		{
		scaley = Math.abs(Math.sin(ViewAngle*Math.PI/180));
		transy = Math.abs(z*0.22*Math.cos(ViewAngle*Math.PI/180));
		}
		trans = trans.substring(0,pos1) + "0 " + transy + ") scale(1, " + scaley + scaleItems.substring(pos3,trans.length);
		Groups.item(i).setAttribute("transform",trans);
		
		if (GroupId.substring(0,5)=="level") z=z+1;
	}
   }
   }
}

function hilight(evt)
{
var ListItem=evt.getTarget();
var ListId = ListItem.getParentNode.getAttribute("id");

ListItem.getParentNode.getElementsByTagName("rect").item(0).setAttribute("fill","yellow");
ListItem.getParentNode.getElementsByTagName("rect").item(0).setAttribute("stroke","black");
if( Map.getElementById(ListId) )
{  MapObj = Map.getElementById(ListId);
   if(MapObj.getAttribute("fme:classh"))
   { HilightClass=MapObj.getAttribute("fme:classh"); }
   else 
   { HilightClass="MARK-default"; } 
   if(MapObj.getParentNode.getAttribute("id") == "all-airspaces")
   { 	showInfo(ListId);
      MapObj.setAttribute("class",HilightClass);
	//If Obj is group of use elements, hilight all use elements:
	if(MapObj.getElementsByTagName("use").length > 0)
	{	MapObjParts = MapObj.getElementsByTagName("use");
		for(i=0; i<MapObjParts.length;++i)
		{ if(MapObjParts.item(i).getAttribute("fme:classh"))
   		  { HilightClass=MapObjParts.item(i).getAttribute("fme:classh"); }
   		  else 
   		  { HilightClass="MARK-default"; } 
		  MapObjParts.item(i).setAttribute("class",HilightClass); 
		}
	}
   }
   else 
   {  MapObj.setAttribute("class",HilightClass);
   }
}
}

function hilightout(evt)
{
var ListItem=evt.getTarget();
var ListId = ListItem.getParentNode.getAttribute("id");

ListItem.getParentNode.getElementsByTagName("rect").item(0).setAttribute("fill","lightgrey");
ListItem.getParentNode.getElementsByTagName("rect").item(0).setAttribute("stroke","");

if( Map.getElementById(ListId) )
{  MapObj = Map.getElementById(ListId);
   if(MapObj.getParentNode.getAttribute("id") == "all-airspaces")
   {	clearInfo();
      oldClass=MapObj.getAttribute(CurrentClassAtt);
	MapObj.setAttribute("class",oldClass);
	//If Obj is group of use elements, undo hilight of all use elements:
	if(MapObj.getElementsByTagName("use").length > 0)
	{	MapObjParts = MapObj.getElementsByTagName("use");
		for(i=0; i<MapObjParts.length;++i)
		{	if(MapObjParts.item(i).getAttribute(CurrentClassAtt))
			{ oldClass=MapObjParts.item(i).getAttribute(CurrentClassAtt); }
			else
			{ oldClass=MapObjParts.item(i).getParentNode().getAttribute(CurrentClassAtt); }
			if(MapObjParts.item(i).getAttribute("fme:class1").substring(0,6)=="ground")
			{ oldClass=MapObjParts.item(i).getAttribute("fme:class1"); }

			MapObjParts.item(i).setAttribute("class",oldClass);
		}
	}
   }
   else
   {	oldClass=MapObj.getAttribute("fme:class1");
	MapObj.setAttribute("class",oldClass);
   }
}
}

function maphilight(evt)
{
selectedId=evt.getTarget().getAttribute("xlink:href");
ListId=selectedId.substring(1,selectedId.length);
if(ListId.substring((ListId.length-3),(ListId.length-1)) == "-u")
{ ListId = ListId.substring(0,(ListId.length-3));} 
ListItem=ControlPanel.getElementById(ListId);
ListItem.getElementsByTagName("rect").item(0).setAttribute("fill","yellow");
ListItem.getElementsByTagName("rect").item(0).setAttribute("stroke","black");

showInfo(ListId);

if( Map.getElementById(ListId) )
{	MapObj = Map.getElementById(ListId);
	if(MapObj.getAttribute("fme:classh"))
   	{ HilightClass=MapObj.getAttribute("fme:classh"); }
   	else 
   	{ HilightClass="MARK-default"; } 
	MapObj.setAttribute("class",HilightClass);

	//If Obj is group of use elements, hilight all use elements:
	if(MapObj.getElementsByTagName("use").length > 0)
	{	MapObjParts = MapObj.getElementsByTagName("use");
		for(i=0; i<MapObjParts.length;++i)
		{ if(MapObjParts.item(i).getAttribute("fme:classh"))
   		  { HilightClass=MapObjParts.item(i).getAttribute("fme:classh"); }
   		  else 
   		  { HilightClass="MARK-default"; } 
		  MapObjParts.item(i).setAttribute("class",HilightClass); 
		}
	}
}
}

function maphilightout(evt)
{
selectedId=evt.getTarget().getAttribute("xlink:href");
ListId=selectedId.substring(1,selectedId.length);
if(ListId.substring((ListId.length-3),(ListId.length-1)) == "-u")
{ ListId = ListId.substring(0,(ListId.length-3));} 

ListItem=ControlPanel.getElementById(ListId);
ListItem.getElementsByTagName("rect").item(0).setAttribute("fill","lightgrey");
ListItem.getElementsByTagName("rect").item(0).setAttribute("stroke","");

clearInfo();
if( Map.getElementById(ListId) )
{	MapObj = Map.getElementById(ListId);
	oldClass=MapObj.getAttribute(CurrentClassAtt);
	MapObj.setAttribute("class",oldClass);
	//If Obj is group of use elements, undo hilight of all use elements:
	if(MapObj.getElementsByTagName("use").length > 0)
	{	MapObjParts = MapObj.getElementsByTagName("use");
		for(i=0; i<MapObjParts.length;++i)
		{	if(MapObjParts.item(i).getAttribute(CurrentClassAtt))
			{ oldClass=MapObjParts.item(i).getAttribute(CurrentClassAtt); }
			else
			{ oldClass=MapObjParts.item(i).getParentNode().getAttribute(CurrentClassAtt); }
			if(MapObjParts.item(i).getAttribute("fme:class1").substring(0,6)=="ground")
			{ oldClass=MapObjParts.item(i).getAttribute("fme:class1"); }

			MapObjParts.item(i).setAttribute("class",oldClass);
		}
	}
}
}

function showInfo(ObjId)
{
ObjType=Map.getElementById(ObjId).getAttribute("fme:type");
legend=ControlPanel.getElementById("airspaceLegend");
legend.setAttribute("display","none");

if(ObjType=="CTR" || ObjType=="TMA" || ObjType=="CTA")
{
info=ControlPanel.getElementById("airspaceInfo");
info.setAttribute("display","inline");
infotext=ControlPanel.getElementById("name").getFirstChild();
infotext.setData(ObjId);

class1=Map.getElementById(ObjId).getAttribute("fme:class1");
infotext=ControlPanel.getElementById("class1").getFirstChild();
infotext.setData(class1);

upplim1=Map.getElementById(ObjId).getAttribute("fme:upp1");
infotext=ControlPanel.getElementById("upplimit1").getFirstChild();
infotext.setData(upplim1);

lowlim1=Map.getElementById(ObjId).getAttribute("fme:low1");
infotext=ControlPanel.getElementById("lowlimit1").getFirstChild();
infotext.setData(lowlim1);

if(Map.getElementById(ObjId).getAttribute("fme:class2"))
{	info2=ControlPanel.getElementById("airspaceInfo2");
	info2.setAttribute("display","inline");
	class2=Map.getElementById(ObjId).getAttribute("fme:class2");
	infotext=ControlPanel.getElementById("class2").getFirstChild();
	infotext.setData(class2);

	upplim2=Map.getElementById(ObjId).getAttribute("fme:upp2");
	infotext=ControlPanel.getElementById("upplimit2").getFirstChild();	
	infotext.setData(upplim2);

	lowlim2=Map.getElementById(ObjId).getAttribute("fme:low2");
	infotext=ControlPanel.getElementById("lowlimit2").getFirstChild();	
	infotext.setData(lowlim2);
	
	lowlim1=lowlim2;
}
}
else if(ObjType=="LFR") 
{
info=ControlPanel.getElementById("routeInfo");
info.setAttribute("display","inline");
infotext=ControlPanel.getElementById("routeName").getFirstChild();
infotext.setData(ObjId);

upplim1=Map.getElementById(ObjId).getAttribute("fme:upp1");
infotext=ControlPanel.getElementById("routeUpplimit1").getFirstChild();
infotext.setData(upplim1);

lowlim1=Map.getElementById(ObjId).getAttribute("fme:low1");
infotext=ControlPanel.getElementById("routeLowlimit1").getFirstChild();
infotext.setData(lowlim1);
}
// display airspace in FlightLevel-Tool:

if(upplim1.substring(0,2)=="FL" ) upplim1=100*upplim1.substring(3,6);
upplim1=parseFloat(upplim1);
y1=400-upplim1*10/500;
if(lowlim1.substring(0,3)=="GND" ) lowlim1="0";
if(lowlim1.substring(0,2)=="FL" ) lowlim1=100*lowlim1.substring(3,6);
lowlim1=parseFloat(lowlim1);
h1=(upplim1-lowlim1)*10/500;
airspaceVertical=ControlPanel.getElementById("airspaceVertical");
airspaceVertical.setAttribute("display","inline");
airspaceVertical.setAttribute("y",y1);
airspaceVertical.setAttribute("height",h1);

}

function clearInfo()
{
airspaceVertical=ControlPanel.getElementById("airspaceVertical");
airspaceVertical.setAttribute("display","none");

info=ControlPanel.getElementById("airspaceInfo");
info.setAttribute("display","none");
info2=ControlPanel.getElementById("airspaceInfo2");
info2.setAttribute("display","none");
info3=ControlPanel.getElementById("routeInfo");
info3.setAttribute("display","none");

infotext=ControlPanel.getElementById("name").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("class1").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("upplimit1").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("lowlimit1").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("class2").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("upplimit2").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("lowlimit2").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("routeName").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("routeUpplimit1").getFirstChild();
infotext.setData("");

infotext=ControlPanel.getElementById("routeLowlimit1").getFirstChild();
infotext.setData("");

legend=ControlPanel.getElementById("airspaceLegend");
legend.setAttribute("display","inline");

}

function lightButton(evt)
{	evt.getTarget().getParentNode().getElementsByTagName("rect").item(0).setAttribute("fill","lightcyan");
}

function dimButton(evt)
{	evt.getTarget().getParentNode().getElementsByTagName("rect").item(0).removeAttribute("fill");
}

function lightButton2(evt)
{	evt.getTarget().getParentNode().getElementsByTagName("rect").item(0).setAttribute("fill","yellow");
}

function ShowToolTip(evt)
{	evt.getTarget().getParentNode().getElementsByTagName("use").item(1).setAttribute("display","inline"); 
//alert(evt.getTarget().getParentNode().getElementsByTagName("use").item(1).getAttribute("xlink:href") ); 
}

function HideToolTip(evt)
{	evt.getTarget().getParentNode().getElementsByTagName("use").item(1).setAttribute("display","none"); 

}

function showMenu(evt)
{     MenuItemsId=evt.getTarget().getParentNode().getAttribute("id") + "-items";
	ControlPanel.getElementById(MenuItemsId).setAttribute("visibility","visible"); 
}

function hideMenu(evt)
{
for(i=1; i<10;++i)
{	MenuItemsId = "menu" + i + "-items";
	if(!ControlPanel.getElementById(MenuItemsId) ) break;
	if(ControlPanel.getElementById(MenuItemsId).getAttribute("visibility") == "visible")
	{	ControlPanel.getElementById(MenuItemsId).setAttribute("visibility", "hidden");
		break;
	}
}
}

function showForm(evt)
{
dimButton(evt);
MenuItemId=evt.getTarget().getParentNode().getAttribute("id");;
CurrentFormId = "form" + MenuItemId.substring(4,MenuItemId.length);

for(i=1; i<10;++i)
{ FormId = "form" + MenuItemId.substring(4,5) + "-" + i;
  if(!ControlPanel.getElementById(FormId) ) break;
  if(FormId==CurrentFormId)
  {	ControlPanel.getElementById(FormId).setAttribute("display","inline");
  }
  else
  {   ControlPanel.getElementById(FormId).setAttribute("display","none");
  }
}
} 

function showSubForm(evt)
{
CurrentSubMenuId=evt.getTarget().getParentNode().getAttribute("id");

for(i=1; i<10;++i)
{ FormId = CurrentSubMenuId.substring(0,7);
  SubMenuId = FormId + "-subm" + i;
  SubFormId = FormId + "-subf" + i;
  if(!ControlPanel.getElementById(SubMenuId) ) break;
  if(SubMenuId==CurrentSubMenuId)
  {	ControlPanel.getElementById(SubMenuId).getElementsByTagName("path").item(0).setAttribute("visibility","visible");
	ControlPanel.getElementById(SubFormId).setAttribute("visibility","visible");
  }
  else
  {   ControlPanel.getElementById(SubMenuId).getElementsByTagName("path").item(0).setAttribute("visibility","hidden");
	ControlPanel.getElementById(SubFormId).setAttribute("visibility","hidden");
  }
}
} 

function changeClass(evt)
{
if(evt.getType()=="SVGLoad")
{CurrentClassAtt="fme:class1" ;}
else
{	MenuItemId=evt.getTarget().getParentNode().getAttribute("id");
	if(MenuItemId == "menu3-1")CurrentClassAtt="fme:class1" ;
	if(MenuItemId == "menu3-2")CurrentClassAtt="fme:type" ;
}

if( Map.getElementById("all-airspaces") )
{	AirspaceGroup = Map.getElementById("all-airspaces"); 
	if(AirspaceGroup.getElementsByTagName("use").length > 0)
	{	AirspaceParts = AirspaceGroup.getElementsByTagName("use");
		for(i=0; i<AirspaceParts.length;++i)
		{  if(AirspaceParts.item(i).getAttribute("class").substring(0,6)!="ground")
		   {	if(CurrentClassAtt=="fme:type") 
			{ newClass=AirspaceParts.item(i).getParentNode().getAttribute(CurrentClassAtt);}
			else 
			{ newClass=AirspaceParts.item(i).getAttribute(CurrentClassAtt);}
			AirspaceParts.item(i).setAttribute("class",newClass);
		   }
		}
	}
}
}




//*********************************************************************************************************

var keepmoving, activeslider

function lightSlider(evt)
{	evt.getTarget().getParentNode().getElementsByTagName("path").item(0).setAttribute("fill","yellow");
}

function dimSlider(evt)
{	if(keepmoving==false)
	evt.getTarget().getParentNode().getElementsByTagName("path").item(0).setAttribute("fill","moccasin");
}

function StartMove(evt)
{	keepmoving=true;
	slider=evt.getTarget().getParentNode();
	slider.getElementsByTagName("path").item(0).setAttribute("fill","yellow");
	activeslider=slider.getAttribute("id");
	slider1=ControlPanel.getElementById("slider1");
	slider1.setAttribute("pointer-events","none");
	slider2=ControlPanel.getElementById("slider2");
	slider2.setAttribute("pointer-events","none");
}

function moveslider(evt)
{	if(keepmoving==true)
 	{	level=evt.getTarget();
		svgdoc=evt.getTarget().getOwnerDocument();
		leveltrans=level.getParentNode.getAttribute("transform");
		pos1 = leveltrans.indexOf(" ")+1;
		pos2 = leveltrans.indexOf(")");
		yleveltrans=parseInt(leveltrans.substring(pos1,pos2));

		slider1=ControlPanel.getElementById("slider1");
		s1trans=slider1.getAttribute("transform");
		pos1 = s1trans.indexOf(" ")+1;
		pos2 = s1trans.indexOf(")");
		ys1trans=parseInt(s1trans.substring(pos1,pos2));

		slider2=ControlPanel.getElementById("slider2");
		s2trans=slider2.getAttribute("transform");
		pos1 = s2trans.indexOf(" ")+1;
		pos2 = s2trans.indexOf(")");
		ys2trans=parseInt(s2trans.substring(pos1,pos2));

		if(activeslider=="slider1")
		{	if(yleveltrans > ys2trans) //slider2 pushed down by slider1
			{	ys2trans=yleveltrans; 
				slider2.setAttribute("transform",leveltrans);
			}
			ys1trans=yleveltrans; 
			slider1.setAttribute("transform",leveltrans);
		}
		if(activeslider=="slider2")
		{	if(yleveltrans < ys1trans) //slider1 pushed up by slider2
			{	ys1trans=yleveltrans; 
				slider1.setAttribute("transform",leveltrans);
			}
			ys2trans=yleveltrans; 
			slider2.setAttribute("transform",leveltrans);
		}

		levels=ControlPanel.getElementById("levels").getElementsByTagName("g");
		for(i=0; i<levels.length;++i)
		{	level=levels.item(i);
			leveltrans=level.getAttribute("transform");
			pos1 = leveltrans.indexOf(" ")+1;
			pos2 = leveltrans.indexOf(")");
			yleveltrans=parseInt(leveltrans.substring(pos1,pos2));
			levelrect=level.getElementsByTagName("use").item(1);
			opac=levelrect.getAttribute("opacity"); 
			levelid = levelrect.getAttribute("id"); 

			// Set different opacity to highest visible level:
			if(yleveltrans == ys1trans && levelid != "")
			{	oldTopLevel=Map.getElementById(oldTopLevelId);
				oldTopLevel.setAttribute("fill-opacity",0.01);
				TopLevel=Map.getElementById(levelid);
				TopLevel.setAttribute("fill-opacity",0.35);
				oldTopLevelId = levelid;
			}

			if(levelid != "")ChartGroup = Map.getElementById(levelid);
			if( (yleveltrans<ys1trans) || (yleveltrans>ys2trans)  )
			{	
			if(opac != "0.5") 
 				{	levelrect.setAttribute("opacity","0.5");
					if(levelid != "")ChartGroup.setAttribute("display", "none");
				}
			} 
			else
			{ 	
			if(opac != "0") 
 				{	levelrect.setAttribute("opacity","0");
					if(levelid != "")ChartGroup.setAttribute("display", "inline");
				}
			}
		}
	} 
}
		  
function StopMove(evt)
{	
	keepmoving=false;
	slider1=ControlPanel.getElementById("slider1");
	slider1.getElementsByTagName("path").item(0).setAttribute("fill","moccasin");
	slider1.setAttribute("pointer-events","visiblePainted");
	slider2=ControlPanel.getElementById("slider2");
	slider2.getElementsByTagName("path").item(0).setAttribute("fill","moccasin");
	slider2.setAttribute("pointer-events","visiblePainted");
	
}

//*********************************************************************************************************

function timeSeason(evt)
{	
SelectedTimeSeason = evt.getTarget().getParentNode();
SelectedTimeSeasonId = SelectedTimeSeason.getAttribute("id");
WTime=ControlPanel.getElementById("wintertime");
STime=ControlPanel.getElementById("summertime");
if(SelectedTimeSeasonId=="wintertime")
{	WTime.getElementsByTagName("circle").item(1).setAttribute("opacity", "1");
	STime.getElementsByTagName("circle").item(1).setAttribute("opacity", "0");
	ControlPanel.getElementById("time1").setAttribute("xlink:href","#time1w"); 
	ControlPanel.getElementById("time2").setAttribute("xlink:href","#time2w"); 
	ControlPanel.getElementById("timeSeason").setAttribute("xlink:href","#wtime"); 
}	
else
{	WTime.getElementsByTagName("circle").item(1).setAttribute("opacity", "0");
	STime.getElementsByTagName("circle").item(1).setAttribute("opacity", "1");
	ControlPanel.getElementById("time1").setAttribute("xlink:href","#time1s"); 
	ControlPanel.getElementById("time2").setAttribute("xlink:href","#time2s"); 
	ControlPanel.getElementById("timeSeason").setAttribute("xlink:href","#stime"); 
}

}

function selectPeriod(evt)
{
selectedPeriod = evt.getTarget().getParentNode();
selectedPeriodId = selectedPeriod.getAttribute("id");

for(i=1; i<4;++i)
{	periodId = "period" + i;
	period=ControlPanel.getElementById(periodId);
	Checkmark = period.getElementsByTagName("circle").item(1);
	if(periodId == selectedPeriodId)
	{	Checkmark.setAttribute("opacity", "1"); 
	}
	else
	{	Checkmark.setAttribute("opacity", "0"); 
	}
}

Node=Map.getElementById("all-airspaces");
childNodes=Node.getElementsByTagName("use");
if(selectedPeriodId=="period1")
{	for(i=0; i<childNodes.length;++i)
	{	if(childNodes.item(i).getAttribute("fme:period")=="week")
		{	childNodes.item(i).setAttribute("display","inline");	
		}	
		if(childNodes.item(i).getAttribute("fme:period")=="weekend")
		{	childNodes.item(i).setAttribute("display","none");	
		}	
	}
}
if((selectedPeriodId=="period2") || (selectedPeriodId=="period3"))
{	for(i=0; i<childNodes.length;++i)
	{	if(childNodes.item(i).getAttribute("fme:period")=="weekend")
		{	childNodes.item(i).setAttribute("display","inline");	
		}	
		if(childNodes.item(i).getAttribute("fme:period")=="week")
		{	childNodes.item(i).setAttribute("display","none");	
		}	
	}
}	
}

function setPeriod(evt)
{
dimButton(evt);
for(i=1; i<4;++i)
{	periodId = "period" + i;
	period=ControlPanel.getElementById(periodId);
	Checkmark = period.getElementsByTagName("circle").item(1);
	if(Checkmark.getAttribute("opacity")=="1")
	{	currentPeriodId= "#p" + i;
		if(i==3) 
		{	TimeSeason=ControlPanel.getElementById("currentTimeSeason")
			TimeSeason.setAttribute("visibility","hidden"); 
		}
		else 
		{	TimeSeason=ControlPanel.getElementById("currentTimeSeason")
			TimeSeason.setAttribute("visibility","visible"); 
		}
		currentP=ControlPanel.getElementById("currentPeriod");
		currentP.setAttribute("xlink:href",currentPeriodId); 
		break;
	}
}
setPeriodForm=ControlPanel.getElementById("form4-1");
setPeriodForm.setAttribute("display", "none"); 

}


