<!DOCTYPE html>

<%@ include file = "EgLoginTracker.jsp" %>
<%@ page import = "java.util.*" %>
<%@ page import = "java.sql.*" %>
<%@ page import = "java.io.*"	%>
<%@ page import = "com.eg.EgInstallInfo" %>
<%@ page import = "com.eg.EgTablesInfo" %>
<%@ page import = "com.eg.EgDateInfo" %>
<%@ page import = "com.eg.EgDiscInfo" %>
<%@ page import = "com.eg.EgDbInfo" %>
<%@ page import = "com.eg.IniFile"%>
<%@ page import = "com.eg.EgTopoInfo" %>
<%@ page import = "com.eg.EgMappingInfo" %>
<%@ page import = "com.egurkha.util.StringUtils" %>
<%@ page import = "com.eg.EgDbAdapterTypeUI" %>
<%@ page import = "egurkha.EgDbAdapterUI" %>
<%@ page import = "net.sf.json.*" %>
<%@ page import = "com.egurkha.monitor.alarms.AlarmPriorities" %>
<%@ taglib prefix="egui" uri="../WEB-INF/eg-taglib.tld" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%
	EgDiscInfo discInfo = new EgDiscInfo("manager");
	UserRegistry registry = UserRegistry.getInstance();
	User user = registry.getUser(session.getId());
	EgMappingInfo mappingInfo= new EgMappingInfo(user.getLanguage());
	IniFile egDash = new com.eg.IniFile(EgInstallInfo.getInstallDir()+ "/manager/config/eg_dashboardConfig.ini");
	String port = "NULL";
	String iniName = request.getParameter("iniName");
	String isRum = request.getParameter("isRum");
	String isCitrix = request.getParameter("isCitrix");
	String isServiceMenu = request.getParameter("isServiceMenu");

	String user_name = request.getParameter("user_name");
	String dashboard_mapping = request.getParameter("dashboard_mapping");
	String view_name = request.getParameter("view_name");
	String fromServiceHomePage = request.getParameter("fromServiceHomePage");
	String fromSerComboChange = request.getParameter("fromSerComboChange");
	String isFromZone = request.getParameter("isFromZone");
	String iszoneName = request.getParameter("iszoneName");
	String parentZone = request.getParameter("parentZone");
	String appliesTo = request.getParameter("appliesTo");
	String compName = request.getParameter("compName");
	String ltest = request.getParameter("ltest");
	String scriptName = request.getParameter("scriptName");
	String fromp = request.getParameter("fromp");
	String msmt_host = request.getParameter("msmt_host");
	if(scriptName==null || scriptName.trim().length()==0 || scriptName.equalsIgnoreCase("NULL"))
		scriptName = "";
	if(msmt_host==null || msmt_host.trim().length()==0 || msmt_host.equalsIgnoreCase("NULL"))
		msmt_host = "";
	String selComp = "";
	if(compName == null || compName.trim().length() == 0)
		compName = "eGDP038:NULL";
	if(compName != null && compName.trim().length() > 0 && !compName.equalsIgnoreCase("NULL"))
		selComp = compName;

	if(compName != null && compName.trim().length() > 0 && compName.indexOf(":") > 0){		
		port = compName.substring(compName.indexOf(":")+1);
		compName = compName.substring(0,compName.indexOf(":"));
	}
	String serviceName = request.getParameter("serviceName");
	String compType = request.getParameter("compType");	
	String site = request.getParameter("site");
	if(site == null || site.trim().length() == 0)
		site = "NULL";
	String keyMeasure = request.getParameter("keyMeasure");
	if((ltest == null || ltest.trim().length()==0 ) &&  compType != null && compType.trim().length()>0)
	{
		String tempTest = egDash.getValue("Comp_Type_Based_Test",compType);
		if(tempTest == null || tempTest.trim().length() == 0)
			ltest = "CitraTest";
		else
			ltest = tempTest;
	}
	if((keyMeasure == null || keyMeasure.equalsIgnoreCase("NULL") || keyMeasure.trim().length() == 0) && ltest != null && ltest.trim().length()>0)
	{
		String tempKeyMeasure = egDash.getValue("Emulation_Key_Measure",ltest);
		if(tempKeyMeasure == null || tempKeyMeasure.trim().length() == 0)
			keyMeasure = "RESPONSE_TIME";
		else
			keyMeasure = tempKeyMeasure;
	}
	String stateMeasure = request.getParameter("stateMeasure");
	if(stateMeasure == null || stateMeasure.trim().length() == 0)
		stateMeasure = "Availability";
	String extraParams="";
	String layerExtraParams="";
	String isLogonType = request.getParameter("isLogonType");
	String zoneName = request.getParameter("zoneName");
	String isFromZoneMenu = request.getParameter("isFromZoneMenu");
	String fromPageView1 = request.getParameter("fromPageView");
	String from = request.getParameter("from");
	boolean isFromList = false;
	if(from != null && (from.equalsIgnoreCase("MainDashboard") || from.equalsIgnoreCase("ZoneDashboard") || from.equalsIgnoreCase("list") || from.equalsIgnoreCase("componentList") || from.equalsIgnoreCase("TreeMenu") ))
	{
		isFromList = true;
	}

	try
	{
		String qString = request.getQueryString();
		if(qString != null && qString.trim().length() > 0 )
		{
			StringTokenizer st4 = new StringTokenizer(qString,"&");
			while(st4.hasMoreTokens())
			{
				String str = (String) st4.nextToken();

				if(str.startsWith("site") || str.startsWith("compName") || str.startsWith("compType") )
					continue;
				if(str.startsWith("dashboard_mapping"))
					extraParams += "&dashboard_mapping=";
				else if(str.startsWith("serviceName"))
					extraParams += "&filterBy="+str.substring(str.indexOf("=")+1);
				else if(str.startsWith("fromHomepage"))
				{
					if((isLogonType!=null && (isLogonType.equalsIgnoreCase("true") || isLogonType.equalsIgnoreCase("false"))) || (isFromZoneMenu !=null && isFromZoneMenu.equalsIgnoreCase("true")))
						extraParams+="&fromHomepage=";
					else
						extraParams +="&"+str;
				}
				else
				{
					String getValue=str.substring(str.indexOf("=")+1);
					if(!getValue.equalsIgnoreCase("null") && !getValue.equals("") && getValue!= null && getValue.trim().length()>0)
					{
						extraParams += "&"+str;
					}
				}
			}
			if(extraParams != null && extraParams.trim().length() > 0)
			{
				if(isFromList)
				{
					extraParams = "&extraparam=true"+extraParams;
					layerExtraParams = "&isFromList=true&isFromSessionSim=true"+extraParams;
				}
				else if(fromp != null && fromp.trim().length()>0 && fromp.equalsIgnoreCase("ctxLogonDashboard"))
				{
					extraParams = "&extraparam=true"+extraParams;
					layerExtraParams = "&isFromSessionSim=true"+extraParams;
				}
				else
				{
					extraParams = "&extraparam=true&fromPageView=CitrixDashboard"+extraParams;
					layerExtraParams = "&isfromCitrix=true&fromPageView=CitrixDashboard"+extraParams;
				}
			}
		}
	}
	catch(Exception ee)
	{
	}
	


	String _isFromMetricsPage = request.getParameter("isFromMetricsPage");
	boolean isFromMetricsPage = false;
	String ltype = request.getParameter("ltype");
	
	String monitorsBy = request.getParameter("monitorsBy");
	String externalAgent = request.getParameter("externalAgent");
	String treeTitle = request.getParameter("treeTitle");
	String isFromInfraHome = request.getParameter("isFromInfraHome");
	String isFromMenu = request.getParameter("isFromMenu");
	String selectedState = request.getParameter("selectedState");
	String isFromZoneInfra = request.getParameter("isFromZoneInfra");
	String fromKioskMode = request.getParameter("fromKioskMode");

	if(_isFromMetricsPage != null && _isFromMetricsPage.equalsIgnoreCase("true"))
	{
		isFromMetricsPage = true;
		extraParams = "&isFromMetricsPage=true&ltype="+ltype+"&ltest="+ltest+"&monitorsBy="+monitorsBy+"&externalAgent="+externalAgent+"&treeTitle="+treeTitle;

		layerExtraParams = "&isFromMetricsPage=true&isFromSessionSim=true&ltype="+ltype+"&ltest="+ltest+"&monitorsBy="+monitorsBy+"&externalAgent="+externalAgent+"&treeTitle="+treeTitle;
	}
	
	String url = "/final/monitor/sessionSimulationData.jsp?msmtHost="+msmt_host+"&test="+ltest+"&compName="+compName+"&port="+port+"&site="+site+"&keyMeasure="+keyMeasure+"&stateMeasure="+stateMeasure+"&compType="+compType+"&serviceName="+serviceName+extraParams;

	String combo_url = "/final/monitor/sessionSimulationData.jsp?msmtHost="+msmt_host+"&test="+ltest+"&port="+port+"&site="+site+"&keyMeasure="+keyMeasure+"&stateMeasure="+stateMeasure+"&compType="+compType+"&serviceName="+serviceName+extraParams;
	
	String paramForBackButton1 ="fromp&isFromMenu&isFromInfraHome&selectedState";
	StringTokenizer paramForBack1 = new StringTokenizer(paramForBackButton1,"&");
	String params1="";
	while(paramForBack1.hasMoreTokens())
	{
		 params1 = (String) paramForBack1.nextToken();
		if(extraParams.indexOf(params1+"=")<0)
		{
			String requestParam1=request.getParameter(params1);
			if(requestParam1!= null && requestParam1.trim().length()>0 && !requestParam1.equalsIgnoreCase("NULL"))
			{
				combo_url+="&"+params1+"="+requestParam1;
				url+="&"+params1+"="+requestParam1;
			}
		}
	}
	String _isFromLayerModel = request.getParameter("isFromLayerModel");
	boolean isFromLayerModel = false;
	if(_isFromLayerModel != null && _isFromLayerModel.equalsIgnoreCase("true"))
		isFromLayerModel = true;

	
	
	String layerBackUrl="";
	if(isFromLayerModel)
	{
		
		layerBackUrl = "/final/monitor/EgSiteInfraView.jsp?qctr="+request.getParameter("qctr")+"&fromalarm=&host="+compName+":"+port+"&layer="+request.getParameter("layer")+"&site="+site+"&msmt_host="+msmt_host+"&comptype="+compType+"&newWindow=false&prevPage=MainDashBoard";
		layerBackUrl+="&ltest="+ltest+"&ltype="+ltype+"&test="+request.getParameter("test");
		if(isFromZoneMenu!=null && isFromZoneMenu.equalsIgnoreCase("true"))
		{
		
			layerBackUrl="/final/monitor/zoneDash.jsp?&selectNode=Zone$cap$"+zoneName+"&selectedParam="+zoneName+"&currentTab=details&zoneName="+zoneName+"&iszoneName="+zoneName+"&aggregateTab=false&openNode=null&treeFlag=false&fromHomepage="+request.getParameter("fromHomepage")+"&parentZone="+parentZone+"&fromPageView=&fromZoneMenu="+isFromZoneMenu;
		}
		else if(request.getParameter("fromHomepage") != null && request.getParameter("fromHomepage").equalsIgnoreCase("true"))
		{
			
			if(zoneName!= null && zoneName.trim().length()>0 && !zoneName.equalsIgnoreCase("null"))
				layerBackUrl="/final/monitor/zoneDash.jsp?&selectNode=Zone$cap$"+zoneName+"&selectedParam="+zoneName+"&currentTab=details&zoneName="+zoneName+"&iszoneName="+zoneName+"&aggregateTab=false&openNode=null&treeFlag=false&fromHomepage="+request.getParameter("fromHomepage")+"&parentZone="+parentZone+"&fromPageView=&fromZoneMenu="+isFromZoneMenu;
			else
				layerBackUrl="/final/servlet/com.eg.EgMonitorController?monCmd=dashboard";
		}
		else if(isLogonType!=null && isLogonType.trim().length()>0 && (isLogonType.equalsIgnoreCase("true") || isLogonType.equalsIgnoreCase("false")))
		{
			layerBackUrl="/final/monitor/comparisonDashboard.jsp?treeTitle="+treeTitle+"&isFromMenu=true&isLogonType="+isLogonType+"&monitorsBy="+monitorsBy+"&ltest="+ltest;
		}

	}

	String listBackUrl="";
	if(isFromList)
	{
		//http://192.168.9.9:7077/final/servlet/com.eg.EgMonitorController?monCmd=componentList&from=componentList&action=component&searchIndComps=checked&isFromMenu=true&componentListRefresh=yes

		//="/final/monitor/sessionSimulation.jsp?compName="+EgURLEncoder.encode(component.getName(),"UTF-8")+"&site="+EgURLEncoder.encode(d.site,"UTF-8")+"&compType="+EgURLEncoder.encode(component.getType(),"UTF-8")+"&from=list&fromHomepage="+fromHomepage+"&treeTitle="+treeTitle+"&view="+view+"&viewId="+viewId+"&viewTreeTitle="+viewTreeTitle+"&filterBy="+filterBy+"&subFilter="+subFilter+"&componentNameSearch="+componentNameSearch+"&fromPageView="+fromPageView+"&selectedState="+selectedState+"&viewPageTitle="+EgURLEncoder.encode(viewPageTitle,"UTF-8")+"&action="+action+"&stateName="+stateName+"&isfromZoneDash="+isfromZoneDash+"&fromDashboard="+fromDashboard;
		String action = request.getParameter("action");
		action = (action == null )?"":action;
		String viewPageTitle = request.getParameter("viewPageTitle");
		viewPageTitle = (viewPageTitle == null )?"":viewPageTitle;
		String filterBy = request.getParameter("filterBy");
		filterBy = (filterBy == null )?"":filterBy;
		String subFilter = request.getParameter("subFilter");
		subFilter = (subFilter == null )?"":subFilter;
		String componentNameSearch = request.getParameter("componentNameSearch");
		componentNameSearch = (componentNameSearch == null )?"":componentNameSearch;
		String fromPageView = request.getParameter("fromPageView");
		fromPageView = (fromPageView == null )?"":fromPageView;
		//String selectedState = request.getParameter("selectedState");
		selectedState = (selectedState == null )?"":selectedState;
		String stateName = request.getParameter("stateName");
		stateName = (stateName == null )?"":stateName;
		String fromHomepage = request.getParameter("fromHomepage");
		fromHomepage = (fromHomepage == null )?"":fromHomepage;
		//String treeTitle = request.getParameter("treeTitle");
		if(isFromZoneMenu!=null && isFromZoneMenu.equalsIgnoreCase("true"))
			fromHomepage="";
		treeTitle = (treeTitle == null )?"":treeTitle;

		if(from != null &&  (from.equalsIgnoreCase("MainDashboard") || from.equalsIgnoreCase("list") || from.equalsIgnoreCase("ZoneDashboard") || from.equalsIgnoreCase("componentList")))
		{
			String tempfrom="MainDashboard";
			if(from.equalsIgnoreCase("ZoneDashboard"))
			{
				tempfrom="ZoneDashboard";
			}
			listBackUrl="/final/servlet/com.eg.EgMonitorController?monCmd=componentList&from="+tempfrom+"&action="+action+"&searchIndComps=checked&viewId=components&viewPageTitle="+viewPageTitle+"&viewTreeTitle=Component&componentType="+compType+"&filterBy="+filterBy+"&subFilter="+subFilter+"&componentNameSearch="+componentNameSearch+"&fromPageView="+fromPageView+"&selectedState="+selectedState+"&stateName="+selectedState+"&isFromMenu="+isFromMenu+"&fromHomepage="+fromHomepage+"&treeTitle="+treeTitle;
			listBackUrl+="&parentZone="+parentZone+"&zoneName="+zoneName+"&isFromZoneInfra="+isFromZoneInfra+"&isFromZoneMenu="+isFromZoneMenu+"&ltest="+ltest+"&monitorsBy="+monitorsBy;
		}
		//document.location='/final/servlet/com.eg.EgMonitorController?monCmd=componentList&from=TreeMenu&action='+action+'&searchIndComps=checked&viewId=components&viewPageTitle='+viewPageTitle+'&viewTreeTitle=Component&componentType='+compType+'&filterBy='+filterBy+'&subFilter='+subFilter+'&componentNameSearch='+componentNameSearch+'&fromPageView='+fromPageView+"&selectedState="+selectedState+'&stateName='+selectedState+"&isFromMenu="+isFromMenu+"&fromHomepage="+fromHomepage+"&treeTitle="+requestParams.treeTitle;

		
	}
	if(isFromMetricsPage ||  isFromLayerModel ||  isFromList)
	{
		String monitorLastSession = "";
		if(request!=null)
		{
			monitorLastSession = request.getQueryString();
			session.setAttribute("monitorLastSession","/final/monitor/sessionSimulation.jsp?"+monitorLastSession);
		}
	}
	EgDateInfo egDt = new EgDateInfo();
	java.util.Date local_date = new java.util.Date(egDt.egetUTCDate());
	Calendar cal = Calendar.getInstance();
	cal.setTime(local_date);
	cal.setTimeZone(egDt.getRealTimeZone());

	long refreshFrequency = 60 * 1000L;
	String refFreq = u_ser.getRefreshFrequency();

	if(refFreq!=null && refFreq.length()>0)
	{
		refreshFrequency =  Long.valueOf(refFreq).longValue() * 1000L;
	}
	
	List emulatedCompCombo = new ArrayList();
	if(serviceName != null && serviceName.trim().length() > 0)
	{
		EgTopoInfo topoInfo = new EgTopoInfo("manager");
		List temp_serviceComps = topoInfo.getComponentsForSite(serviceName);
		if(temp_serviceComps != null && temp_serviceComps.size()>0)
		{
			for(int p=0;p<temp_serviceComps.size();p++)
			{
				String ser_comp = (String)temp_serviceComps.get(p);
				String ser_comp_name = ser_comp.substring(0,ser_comp.lastIndexOf(":"));
				String ser_comp_type = ser_comp.substring(ser_comp.lastIndexOf(":")+1);
				if(ser_comp_type != null && (ser_comp_type.equalsIgnoreCase("Emulated_client") || ser_comp_type.equalsIgnoreCase("Generic_Emulation")))
				{
					emulatedCompCombo.add(ser_comp_name);
				}
			}
		}
	}
	String titleParam = mappingInfo.getComponentTypeDescription(compType);
	if(titleParam == null || titleParam.trim().length()==0 || titleParam.equalsIgnoreCase("NULL"))
		titleParam ="Full session simulation";
%>

<html id="sessionsimulation">
<head>

<title>Session Simulation</title>
<egui:skin ui="monitor"/>
<script>
var refreshFrequency=<%=refreshFrequency%>;

var isFromMetricsPage = '<%=isFromMetricsPage%>';
var isFromInfraHome = '<%=isFromInfraHome%>';
var isFromMenu = '<%=isFromMenu%>';
var selectedState = '<%=selectedState%>';
var isFromZoneInfra = '<%=isFromZoneInfra%>';

var isFromLayerModel = '<%=isFromLayerModel%>';
var from = '<%=from%>';
var isFromList = '<%=isFromList%>';
var compName = '<%=compName%>';
var layerBackUrl = '<%=layerBackUrl%>';
var listBackUrl = '<%=listBackUrl%>';

var fromPageView = '<%=fromPageView1%>';
var fromKioskMode = '<%=fromKioskMode%>';
var taskInProgress=false;
var isLogonType = '<%=isLogonType%>';

var metricBackObj = new Object();
metricBackObj.ltype = '<%=ltype%>';
metricBackObj.ltest = '<%=ltest%>';
metricBackObj.monitorsBy = '<%=monitorsBy%>';
metricBackObj.externalAgent = '<%=externalAgent%>';

metricBackObj.isFromMenu = '<%=isFromMenu%>';
metricBackObj.treeTitle = '<%=treeTitle%>';
metricBackObj.zoneName = '<%=zoneName%>';
metricBackObj.parentZone = '<%=parentZone%>';
metricBackObj.isFromZoneInfra = '<%=isFromZoneInfra%>';
metricBackObj.isFromZoneMenu = '<%=isFromZoneMenu%>';
metricBackObj.isLogonType = '<%=isLogonType%>';


//var title="Full session simulation for "+compName;

var toolBarHide=true;
var emuCompCombo=new Array();
</script>
<%
	com.egurkha.monitor.MonitorUtility mon = new com.egurkha.monitor.MonitorUtility();
	String layerLinkUrl=mon.getSiteInfraLayerLInkUrl(site,compType,compName+":"+port,"",ltest,"",null,"",layerExtraParams,true);

	if(emulatedCompCombo != null && emulatedCompCombo.size() > 0)
	{
				
		String tempComppUrl = "/final/monitor/sessionSimulationData.jsp?test="+ltest+"&port="+port+"&site="+site+"&keyMeasure="+keyMeasure+"&stateMeasure="+stateMeasure+"&compType="+compType+"&serviceName="+serviceName+extraParams;
		String comppUrl = "/final/monitor/sessionSimulationData.jsp?1=1";
		for(int z=0;z<emulatedCompCombo.size();z++)
		{
			String tempCompUrl = comppUrl;
			
			String comppName = (String)emulatedCompCombo.get(z);
			String disp_comp = comppName;
			String comppType = discInfo.getServerTypesForComponentNamePort(comppName);
			String tempComTest= egDash.getValue("Comp_Type_Based_Test",comppType);
			if(tempComTest == null || tempComTest.trim().length() == 0)
				tempComTest = "CitraTest";

			String tempKeyMeasure = egDash.getValue("Emulation_Key_Measure",tempComTest);
			if(tempKeyMeasure == null || tempKeyMeasure.trim().length() == 0)
				tempKeyMeasure = "RESPONSE_TIME";

			String tempPort = "NULL";
			String tempSite = "NULL";

			if(disp_comp.indexOf(":NULL") != -1)
			{
				disp_comp = disp_comp.substring(0,disp_comp.indexOf(":NULL"));
				tempPort = comppName.substring(comppName.indexOf(":")+1);
			}		
			String tempLayerLinkUrl = 
			layerLinkUrl = layerLinkUrl+"&isFromSessionToplogy=true&isFromSessionSim=true&tab=layermodel&toDashBoardLayer=true&fromp="+fromp;//+"&isFromMenu="+isFromMenu+"&isFromInfraHome="+isFromInfraHome+"&isFromZoneInfra="+isFromZoneInfra+"&action="+request.getParameter("action")+"&fromPageView="+request.getParameter("fromPageView")+"&monitorsBy="+monitorsBy+"&ltest="+ltest+"&treeTitle="+treeTitle+"&parentZone="+parentZone+"&zoneName="+zoneName+"&fromHomepage="+request.getParameter("fromHomepage");//jp +"&isFromZoneInfra="+isFromZoneInfra;
		
			
			String paramForBackButton ="isFromMenu&isFromInfraHome&isFromZoneInfra&action&fromPageView&monitorsBy&ltest&treeTitle&parentZone&zoneName&fromHomepage&isLogonType&selectedState";
			StringTokenizer paramForBack = new StringTokenizer(paramForBackButton,"&");
			String params="";
			while(paramForBack.hasMoreTokens())
			{
				 params = (String) paramForBack.nextToken();

				if(layerLinkUrl.indexOf(params+"=")<0)
				{
					String requestParam=request.getParameter(params);
					if(requestParam!= null && requestParam.trim().length()>0 && !requestParam.equalsIgnoreCase("NULL"))
						layerLinkUrl+="&"+params+"="+requestParam;
				}
			}
		
			tempCompUrl = tempCompUrl+"&test="+tempComTest+"&port="+tempPort+"&site="+tempSite+"&keyMeasure="+tempKeyMeasure+"&stateMeasure="+stateMeasure+"&compType="+comppType+"&serviceName="+serviceName+extraParams;
			if(tempCompUrl.endsWith("1=1"))
				tempCompUrl = tempComppUrl;
%>			
				<script>
					var temp=new Object();
					temp.name='<%=disp_comp%>';
					temp.value='<%=comppName%>';
					temp.url='<%=tempCompUrl%>';
					temp.compType='<%=comppType%>';
					emuCompCombo.push(temp);
				</script>
<%
		}
	}
	else if(emulatedCompCombo.size() == 0)
	{
		String tempComppUrl = "/final/monitor/sessionSimulationData.jsp?test="+ltest+"&port="+port+"&site="+site+"&keyMeasure="+keyMeasure+"&stateMeasure="+stateMeasure+"&compType="+compType;
		String comppUrl = "/final/monitor/sessionSimulationData.jsp?1=1";

		String tempCompUrl = comppUrl;

		String disp_comp = selComp;
		String comppType = discInfo.getServerTypesForComponentNamePort(selComp);

		String tempComTest= egDash.getValue("Comp_Type_Based_Test",comppType);
		if(tempComTest == null || tempComTest.trim().length() == 0)
			tempComTest = "CitraTest";

		String tempKeyMeasure = egDash.getValue("Emulation_Key_Measure",tempComTest);
		if(tempKeyMeasure == null || tempKeyMeasure.trim().length() == 0)
			tempKeyMeasure = "RESPONSE_TIME";

		String tempPort = "NULL";
		String tempSite = "NULL";
		
		if(disp_comp.indexOf(":NULL") != -1)
		{
			disp_comp = disp_comp.substring(0,disp_comp.indexOf(":NULL"));
			tempPort = selComp.substring(selComp.indexOf(":")+1);
		}		
		String tempLayerLinkUrl = 
		layerLinkUrl = layerLinkUrl+"&isFromSessionToplogy=true&isFromSessionSim=true&tab=layermodel&toDashBoardLayer=true&fromp="+fromp;//+"&isFromMenu="+isFromMenu+"&isFromInfraHome="+isFromInfraHome+"&isFromZoneInfra="+isFromZoneInfra+"&isFromZoneMenu="+isFromZoneMenu+"&action="+request.getParameter("action")+"&fromPageView="+request.getParameter("fromPageView")+"&monitorsBy="+monitorsBy+"&ltest="+ltest+"&treeTitle="+treeTitle+"&parentZone="+parentZone+"&zoneName="+zoneName+"&fromHomepage="+request.getParameter("fromHomepage");//jp +"&isFromZoneInfra="+isFromZoneInfra;&isFromZoneMenu"+isFromZoneMenu
		String paramForBackButton ="isFromMenu&isFromInfraHome&isFromZoneInfra&action&fromPageView&monitorsBy&ltest&treeTitle&parentZone&zoneName&fromHomepage&isLogonType&selectedState";
		StringTokenizer paramForBack = new StringTokenizer(paramForBackButton,"&");
		String params="";
		while(paramForBack.hasMoreTokens())
		{
			 params = (String) paramForBack.nextToken();
			if(layerLinkUrl.indexOf(params+"=")<0)
			{
				String requestParam="";
				requestParam=request.getParameter(params);
				if(requestParam!= null && !requestParam.equalsIgnoreCase("") && !requestParam.equalsIgnoreCase("NULL"))
					layerLinkUrl+="&"+params+"="+requestParam;
			}
		}
		tempCompUrl = tempCompUrl+"&test="+tempComTest+"&port="+tempPort+"&site="+tempSite+"&keyMeasure="+tempKeyMeasure+"&stateMeasure="+stateMeasure+"&compType="+comppType;
		if(tempCompUrl.endsWith("1=1"))
			tempCompUrl = tempComppUrl;
%>			
			<script>
				var temp=new Object();
				temp.name='<%=disp_comp%>';
				temp.value='<%=selComp%>';
				temp.url='<%=tempCompUrl%>';
				temp.compType='<%=comppType%>';
				emuCompCombo.push(temp);
				
			</script>
<%
		
	}
%>
<script>
	var title='<span> <%=titleParam%> <img style="position: relative;left: 6px;top: 4px;" src="/final/images/clear.png" onclick="toLayerModel()" class="iconLayerstack mouse" data-qtip="Layer Model"></span>';
	if(emuCompCombo.length == 1)
		title='<span> <%=titleParam%> for '+compName+'<img style="position: relative;left: 6px;top: 4px;" src="/final/images/clear.png" onclick="toLayerModel()" class="iconLayerstack mouse" data-qtip="Layer Model"></span>';

	var emuCompCombo=emuCompCombo;
	var comboUrl='<%=combo_url%>';
	var selComp='<%=selComp%>';
	var layerLinkUrl = '<%=layerLinkUrl%>';
	parent.sess_sim_comp=selComp;
	
	function toLayerModel(url)
	{
		try
		{
			if(url != undefined && url != 'undefined')
				document.location = url;	
			else
				document.location = layerLinkUrl;
		}
		catch (e)
		{
			alert(e)
		}
	}

</script>
<script>
var margin='5 0 5 0';
if(isFromMetricsPage == 'true' ||  isFromLayerModel == 'true' ||  isFromList == 'true' || isFromInfraHome == 'true' || isFromMenu == 'true' ||isFromMenu =='false')
{
	toolBarHide=false;
	margin='8 8 8 8';
}
var compComboHide = false;

if(emuCompCombo.length==1)
	compComboHide = true;

var agentComboHide = false;
</script>

<script src="/final/jquery/jquery.js"></script>
<script src="/final/jquery/jquery-ui.js"></script>
<script src="/final/scripts/lodash.core.min.js"></script>
<script src="/final/scripts/d3.v5.min.js" charset="utf-8"></script>
<script src="/final/monitor/eg_scripts/eg_date.js"></script>
<script src="/final/scripts/eg_DateUtil.js" ></script>
<script src="/final/Highcharts/js/highstock.js"></script>
<!--<script  src="/final/extjs/ext-all.js"></script>
<script src="../monitor/eg_scripts/sessionSimulation/app.js"></script>-->
<egui:loadApp baseDir="/final/monitor/eg_scripts/" appName="sessionSimulation" appFile="app.js"/>
<style>


/*--------svg colors------------*/
.svgtextState_HIGH{fill:#cd0f0f}
.svgtextState_INTERMEDIATE{fill:#fa9d1c}
.svgtextState_LOW{fill:#ccc100}
.svgtextState_GOOD{fill:#0c9a12}
.svgtextState_UNKNOWN{fill:#30a1d9}
.svgtextState_GRAY{fill:#555555}

</style>

<script>
var curMonthStr = '<%=(cal.get(cal.MONTH)+1)%>';
	var curMnthInt = parseInt( curMonthStr );
	curMonthStr = ( curMnthInt <= 9 )?0+curMonthStr:curMonthStr;
	var curr_date_value=curMonthStr+"/"+'<%=cal.get(cal.DAY_OF_MONTH)+"/"+cal.get(cal.YEAR)%>';
	var cur_mgr_hour_str = '<%=cal.get(cal.HOUR_OF_DAY)%>';
	var cur_mgr_hour = parseInt(cur_mgr_hour_str);
	cur_mgr_hour_str = ( cur_mgr_hour <= 9 )?0+cur_mgr_hour_str:cur_mgr_hour_str;
	var curr_min_str  ='<%=cal.get(cal.MINUTE)%>';
	var cur_mgr_min = parseInt(curr_min_str);
	curr_min_str = ( cur_mgr_min <= 9 )?0+curr_min_str:curr_min_str;
	var curDateTime = curr_date_value+" "+cur_mgr_hour_str+":"+curr_min_str+":00";
	var strSkin='<%=monitor_Skin%>';
	var sessURL='<%=url%>';
	var compName='<%=compName%>';
	var compType='<%=compType%>';
	var port='<%=port%>';
	var iniName='<%=iniName%>';
	var user_name='<%=user_name%>';
	var dashboard_mapping='<%=dashboard_mapping%>';
	var view_name='<%=view_name%>';
	var fromServiceHomePage='<%=fromServiceHomePage%>';
	var fromSerComboChange='<%=fromSerComboChange%>';
	var isFromZone='<%=isFromZone%>';
	var iszoneName='<%=iszoneName%>';
	var parentZone='<%=parentZone%>';
	var appliesTo='<%=appliesTo%>';
	var isRum='<%=isRum%>';
	var isServiceMenu='<%=isServiceMenu%>';
	var isCitrix='<%=isCitrix%>';
	var serviceName='<%=serviceName%>';
	var isYaxisBasedOnData='<%=isYaxisBasedOnData%>';
	var publicJsonData = "";
	var infoJsonData = "";
	var agentJsonData = "";
	var selectedInfo = '<%=scriptName%>';
	var selectedAgent = '<%=msmt_host%>';
	var selectedMsmtTime = "";
	var refreshUrl ='<%=url%>';
	var agentBasedUrl ='<%=url%>';
	var agentBasedScriptUrl ='<%=url%>';
	var fromp ='<%=fromp%>';
	var isMultiScript = false;
	var isMultiAgent = false;
	var publicmsmt = "";
	var mgrDateFormat = getExtjsDateFormat('<%=dateFormatForDatePicker%>');
	var timeZoneOffsetVal='<%=timezoneOffsetValue%>';
	var scriptName = '<egui:intnl text="monitor.common.Script"/>';
	var scriptNameSetImage = null;
	var graphTitle = '<egui:intnl text="monitor.common.PERFORMANCE TRENDS OF SIMULATED TRANSACTIONS"/>';

	var isRumGraphURL = false;
	var isCitrixGraphURL = false;
	var isServiceMenuGraphURL = false;
	if(isRum != null && isRum == 'true')
	{
		isRumGraphURL = true;
	}
	else if(isCitrix != null && isCitrix == 'true')
	{
		isCitrixGraphURL = true;
	}
	else if(isServiceMenu != null && isServiceMenu == 'true')
	{
		isServiceMenuGraphURL = true;
	}
	var isKioskModeScrollInProgress=false;
	 var taskRunnerObj = null;
	var graphDataURL = '/final/monitor/transactions.jsp?treeTitle=services&1=1&selectNode=Service$cap$'+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&isSite=false&aggregateTab=false&hasTransactions=false&hasEmulatedTransactions=true&fromHomepage=&hasLogonSimulations=false&site='+serviceName+'&isSite=true&serviceName='+serviceName+'&fromLayer=false&selectNode='+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&transTab=true&from=null&treeOpen=false&openNode=Services&refresh=true&action=service&topoSegment='+serviceName+'&dsetSession=true&iniName='+iniName+'&user_name='+user_name+'&dashboard_mapping='+dashboard_mapping+'&dashboard_name=Citrix_Dashboard&view_name='+view_name+"&fromServiceHomePage="+fromServiceHomePage+"&fromSerComboChange="+fromSerComboChange+"&isFromZone="+isFromZone+"&iszoneName="+iszoneName+"&parentZone="+parentZone;

	if(isRumGraphURL)
	{
		graphDataURL = '/final/monitor/transactions.jsp?treeTitle=services&1=1&selectNode=Service$cap$'+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&isSite=false&aggregateTab=false&hasTransactions=false&hasEmulatedTransactions=true&fromHomepage=&hasLogonSimulations=false&site='+serviceName+'&isSite=true&serviceName='+serviceName+'&fromLayer=false&selectNode='+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&transTab=true&from=null&treeOpen=false&openNode=Services&refresh=true&action=service&topoSegment='+serviceName+'&isfromCitrix=true&isfromRum=true&iniName='+iniName+'&user_name='+user_name+'&dashboard_name=Citrix_Dashboard&view_name=Emulated_Transaction_Sub_View&fromServiceHomePage=true&fromSerComboChange=true&appliesTo='+appliesTo+'&filterBy='+serviceName+"&isFromZone="+isFromZone+"&iszoneName="+iszoneName+"&parentZone="+parentZone;
	}
	else if(isCitrixGraphURL)
	{
		graphDataURL = '/final/monitor/transactions.jsp?treeTitle=services&1=1&selectNode=Service$cap$'+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&isSite=false&aggregateTab=false&hasTransactions=false&hasEmulatedTransactions=true&fromHomepage=&hasLogonSimulations=false&site='+serviceName+'&isSite=true&serviceName='+serviceName+'&fromLayer=false&selectNode='+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&transTab=true&from=null&treeOpen=false&openNode=Services&refresh=true&action=service&topoSegment='+serviceName+'&isfromCitrix=true&iniName='+iniName+'&user_name='+user_name+'&dashboard_mapping='+dashboard_mapping+'&dashboard_name=Citrix_Dashboard&view_name='+view_name+"&fromServiceHomePage="+fromServiceHomePage+"&fromSerComboChange="+fromSerComboChange+"&isFromZone="+isFromZone+"&iszoneName="+iszoneName+"&parentZone="+parentZone;
	}
	else if(isServiceMenuGraphURL)
	{
		graphDataURL ='/final/monitor/transactions.jsp?treeTitle=services&selectNode=Service$cap$'+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&isSite=false&aggregateTab=false&hasTransactions=false&hasEmulatedTransactions=true&fromHomepage=true&site='+serviceName+'&serviceName='+serviceName+'&fromLayer=false&selectNode='+serviceName+'&selectedParam='+serviceName+'&currentTab=transactions&transTab=true&from=emulated&treeOpen=false&openNode=Services&refresh=true&action=service&topoSegment='+serviceName+'&selectedTab=EmulatedClients';
	}

	graphDataURL +="&compType="+compType+"&compName="+compName;
	function loadTransHCGrap(seriesOptions,TotalTd,axisTitle,fmts,title,max,xmax,xmin,lineWidth, styleAttrbs,isareaChart,parentPanel)
		{
			try
			{  
				var myImgHtml = '<div style="margin:12% 0 auto 25%"><img src="/final/images/'+strSkin+'/nomeasures_custom.png" width="70%" /></div>';
				var tmpChartId = "transchart"+TotalTd+"-body";
				if(Ext.isEmpty(seriesOptions))
				{
					Ext.getCmp(tmpChartId).update(myImgHtml);
				}
				else
				{
					var xlineWidth = 1,xGridLineWidth = 1,ylineWidth = 1,yGridLineWidth = 0;
					var ymax = max;
					max = max+1;
					var toolTipFmt = '';
					//Get current date format from jsp variable
					toolTipFmt = tooltipDateFormate('<%=dateFormatForDatePicker%>');
					var chartWidth = 0;
					var chartHeight = 0;
					var docWid = $(document).width();
					//chartWidth = ( $( window ).width() / 2 ) - 175;
					chartWidth = parentPanel.getWidth()/2 - 10;
					var legendSize = seriesOptions.length;
					var yVal = "";
					var offSets = "";
					var mBottom = 40;
					if(fmts == "%H:%M")
					{
						yVal = 20;
						offSets = 60;
					}
					else
					{
						yVal = 38;
						offSets = 100;
						mBottom = 80;
					}

					var minPad = null;
					var ymin = 0;
					if (!Ext.isEmpty(isYaxisBasedOnData) && isYaxisBasedOnData)
					{
						minPad=0;
						ymin=null;
						ymax=null;
					}

					if(ymin!=null && ymax!=null && (ymin == ymax))
						ymax = ymin+1;

					Highcharts.setOptions({
						global: {
							useUTC: true,
							timezoneOffset:timeZoneOffsetVal
						}
					});
					var typeStr = ('false'.toLowerCase() == 'yes' || 'false'.toLowerCase() == 'true')?"areaspline":"line";
					if(!Ext.isEmpty(isareaChart) && isareaChart){
						typeStr = "line";	
					}
					var chart= $('#'+tmpChartId).highcharts('StockChart', {
					//var chart= $('#'+tmpChartId).highcharts({
						chart: {
							type:typeStr,
							defaultSeriesType: typeStr,
							//renderTo: tmpChartId,
							zoomType: 'x',
							animation: false,
							height:245,
							width:chartWidth,
							plotBorderColor : 'transparent',
							backgroundColor:'transparent',
							spacing:[10, 30, 10, 25],
							//marginTop:50,
							marginBottom:mBottom,
							plotShadow: false,
							shadow: false,
							events: {
								selection: function (event) {
									var text,label;
									if (event.xAxis) {
										if(Highcharts.numberFormat(event.xAxis[0].min, 2)>0){
											isZoomMeasureGraph=true;
										}
									} else {
										isZoomMeasureGraph=false;
									}
								},
								/*click: function (event) {
									if(event.srcElement.firstChild == null )
									{
										showGraph('event',TotalTd);
									}
									else if( event.srcElement.firstChild.data === "Reset zoom")
									{
										//this.xAxis[0].setExtremes(xmin,xmax);
									}
								}*/
							}
							//plotShadow: true
						},
						navigator: {
							enabled: false
						},
						yAxis: {
							border :0,
							min: ymin,
							minPadding:minPad,
							max:ymax,
							lineWidth: ylineWidth,
							gridLineWidth: yGridLineWidth,
							gridLineColor:styleAttrbs['axisLabelGridColor'],
							tickPixelInterval: 50,
							opposite:false,
							labels: {
								align: 'right',
								x: -10,
								y: 3,
								formatter: function() {
									return (this.value > 0 ? ' ' : '') + this.value ;
								},
								style: {
									color :styleAttrbs['axisLabelColor'],
									fontFamily:styleAttrbs['axisLabelFontFmy'],
									fontSize:styleAttrbs['axisLabelFontSize']
								},
							},
							showLastLabel: true,
							lineColor: styleAttrbs['axisLabelLineColor'],
							minorGridLineColor: styleAttrbs['axisLabelMinorGrid'],
							tickColor: styleAttrbs['axisLabelTickColor']
						},
						plotOptions: {
							series: {
								threshold: null,
								turboThreshold: 50000,
								connectNulls : false,
								smoothed: true,
								stacking: null,
								 states: {
									hover: {
										lineWidthPlus: 0
									}
								},
								events: {
									click: function (event) {
										if(event)
										{
											showGraph('event',TotalTd);
										}
									}
								}
							},
							line: {
								shadow: false,
								lineWidth: lineWidth
							}
						},
						rangeSelector: {
						enabled: false
						},
						scrollbar: {
							enabled: false
						},
						exporting: {
								enabled: false
							},
						legend: {
							enabled: false,
							align:'right',
							layout: 'vertical',
							verticalAlign: 'top',
							borderWidth: 0,
							itemStyle: {
								color : styleAttrbs['legendColor'],
								fontFamily: styleAttrbs['legendFontFmy'],
								fontSize: styleAttrbs['legendFontSize'],
							},
							y:50
						},
						tooltip: {
							split: false,
							shared: true,
							crosshairs: [false,false],
							backgroundColor : styleAttrbs['TooltipBgColor'],
							borderColor: styleAttrbs['TooltipBorderColor'],
							headerFormat: '{point.key}<br>',
							pointFormat: '{series.name}  <b>:  {point.y}</b><br>',
							style: {
									color : '#2a292a',
									padding: 10,
									//fontWeight: 'bold',
									fontFamily: styleAttrbs['TooltipFontFmy'],
									fontSize: styleAttrbs['TooltipFontSize'],
								},
							xDateFormat:toolTipFmt,
							valueDecimals: 4,
							formatter: function() {
									var s ='';
									if(strSkin=='Dark' || strSkin=='dark'){
										if( legendSize==1)
											s = '<span style="color:white">'+Highcharts.dateFormat (toolTipFmt,this.x,true)+'</span><br/>';
										else
											s = '<span>'+Highcharts.dateFormat (toolTipFmt,this.x,true)+'</span><br/>';
									}else{
										 if( legendSize==1)
											s = '<span style="color:black">'+Highcharts.dateFormat (toolTipFmt,this.x,true)+'</span><br/>';
										else
											s = '<span>'+Highcharts.dateFormat (toolTipFmt,this.x,true)+'</span><br/>';
									}
									jQuery.each(this.points, function(i, point) {
										var val = Highcharts.numberFormat (point.y,4, '.','');
										var val_ar = val.split('.');
										if(val_ar.length>1)
										{
											if(val_ar[1]=='0000')
												val = val_ar[0];
										}
										if(strSkin=='Dark' || strSkin=='dark'){
											if (point.series.name != '' && point.series.name != undefined && true) {
												if(legendSize==1)
													s += '<b><span style="color:white">'+ point.series.name +' :  '+val+'</span></b><br/>';
												else
													s += '<b><span style="color:' + this.series.color + '">'+ point.series.name +'  :  '+val+'</span></b><br/>';
												//s += '<br/>'+ point.series.name +': <b>'+val+'</b>';
											}
											else
											{
												s += '<br/> <b><span style="color:white">'+val+'</span></b><br/>';
											}
										}else{
											if (point.series.name != '' && point.series.name != undefined && true) {
												if(legendSize==1)
													s += '<b><span style="color:black">'+ point.series.name +' :  '+val+'</span></b><br/>';
												else
													s += '<b><span style="color:' + this.series.color + '">'+ point.series.name +'  :  '+val+'</span></b><br/>';
												//s += '<br/>'+ point.series.name +': <b>'+val+'</b>';
											}
											else
											{
												s += '<br/> <b><span style="color:black">'+val+'</span></b><br/>';
											}
										}
									});
									return s;
							}
						},
						title: {
							style: {
								color :styleAttrbs['titleFontClr'],
								fontFamily:styleAttrbs['titleFontFmy'],
								fontSize:styleAttrbs['titleFontSize'],
							},
							text: title
						},
						credits: {
							enabled: false
						},
						xAxis: {
							tickWidth: 0,
							endOnTick: true,
							startOnTick: true,
							lineWidth: xlineWidth,
							gridLineWidth: xGridLineWidth,
							gridLineColor:styleAttrbs['axisLabelGridColor'],
							type: 'datetime',
							ordinal:false,
							labels: {
								rotation:270,
								y:yVal,
								x:4,
								align: 'center',
								style: {
									color :styleAttrbs['axisLabelColor'],
									fontFamily:styleAttrbs['axisLabelFontFmy'],
									fontSize:styleAttrbs['axisLabelFontSize']
								},
								overflow: 'justify',
								maxStaggerLines : 7,
								showLastLabel: true,
								showFirstLabel: false,
								startOnTick: true,
								useHTML: false,
								tickPixelInterval: 50,
							
								formatter: function() {
								return  Highcharts.dateFormat(fmts, this.value);
								}
							},
							title: {
								text: '',
								offset: ''
								
							},
							lineColor: styleAttrbs['axisLabelLineColor'],
							minorGridLineColor: styleAttrbs['axisLabelMinorGrid'],
							tickColor: styleAttrbs['axisLabelTickColor']
						},
						
						series: seriesOptions
					});
				}
				
			}
			catch(exp)
			{
				console.log("script error--->",exp);
			}
		}
	function tooltipDateFormate(currentDateFormat)
	{
		var cdf = currentDateFormat;
		var toolTipFmt = "";
		//Tooltip date format using current date format of Manager
		if(cdf != 'null' && cdf != 'undefined' && cdf !='' && cdf != undefined)
		{
			//cdf = cdf.toLowerCase();
			var symbol = ' ';
			var arrValue = new Array();
			if(cdf.indexOf("-") > -1)
			{
				symbol = '-';
			}else if(cdf.indexOf("/") > -1)
			{
				symbol = '/';
			}else if(cdf.indexOf(".") > -1)
			{
				symbol = '.';
			}
			var aValue = cdf.split(symbol);
			if (aValue !=null && aValue.length >0)
			{
				for (var v = 0; v < aValue.length; v++)
				{
					var value= aValue[v];
					var output = value;
					if(value!=null && (value.indexOf("d")>-1 || value.indexOf("D")>-1))
					{
						if(value!=null && value == "d")
							output = '%e';
						else if(value!=null && value == "d,")
							output = '%d,';
						else if(value!=null && value == "dd")
							output = '%d';
						else if(value!=null && value == "dd,")
							output = '%d,';
					}
					else if (value!=null && (value.indexOf("m")>-1 || value.indexOf("M")>-1))
					{
						if(value!=null && value=="m")
							output = '%m';
						else if(value!=null && value=="M")
							output = '%b';
						else if(value!=null && value.toLowerCase() =="mm")
							output = '%m';
						else if(value!=null && value=="mmm")
							output = '%b';
						else if(value!=null && value=="MMM")
							output = '%b';
					}else if (value!=null && (value.indexOf("y")>-1 || value.indexOf("Y")>-1))
					{
						if(value!=null && value=="y")
							output = '%y';
						else if(value!=null && value=="Y")
							output = '%Y';
						else if(value!=null && value=="yy")
							output = '%y';
						else if(value!=null && value=="yyyy")
							output = '%Y';
					}
					arrValue[v]=output;
				}
			}
			if (arrValue !=null && arrValue.length >0)
			{
				for (var v = 0; v < arrValue.length; v++)
				{
					toolTipFmt += arrValue[v]+symbol;
				}
				if(toolTipFmt!=null && endsWith(toolTipFmt,symbol) && !(cdf!=null && endsWith(cdf,symbol)))
					toolTipFmt = toolTipFmt.substring(0,toolTipFmt.lastIndexOf(symbol));
				toolTipFmt = toolTipFmt+" %H:%M:%S";
			}
		}
		return toolTipFmt;
	}
	function endsWith(str, suffix) {
		return str.indexOf(suffix, str.length - suffix.length) !== -1;
	}
	$.fn.hasScrollBar = function() {
			return this.get(0).scrollHeight - 40 > this.height();
	}
</script>
<link rel="stylesheet" type="text/css" href="/final/monitor/eg_scripts/sessionSimulation/css/session-simulation-<%=monitor_Skin%>.css">
</head>
<body style="overflow:hidden">

<!--<div style="position:absolute;top:0px;height: 100%; width: 100%;">
<div id="loadmask" class="maskLoader x-mask-msg x-layer x-mask-msg-default" style="z-index: 19001;left:45%;top:35%;">
	<div class="x-mask-loading maskText" style="position:relative">
		Loading...
	</div>
</div>
</div>-->
</body>
</html>
