Commit fc595619 authored by sbade's avatar sbade

added new code and js for heat map and also added new linked graph code.


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@97205 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 86b3df65
...@@ -7,6 +7,8 @@ import java.util.List; ...@@ -7,6 +7,8 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Set; import java.util.Set;
import org.mortbay.util.ajax.JSON;
import com.google.gwt.json.client.JSONObject; import com.google.gwt.json.client.JSONObject;
import com.google.gwt.json.client.JSONParser; import com.google.gwt.json.client.JSONParser;
import com.google.gwt.json.client.JSONString; import com.google.gwt.json.client.JSONString;
...@@ -52,6 +54,7 @@ public class ChartCreator ...@@ -52,6 +54,7 @@ public class ChartCreator
ArrayList<LinkedHashMap<JSONValue, JSONValue>> labelList = null; ArrayList<LinkedHashMap<JSONValue, JSONValue>> labelList = null;
ArrayList<LinkedHashMap<JSONValue, JSONValue>> barValueList = null; ArrayList<LinkedHashMap<JSONValue, JSONValue>> barValueList = null;
ArrayList<LinkedHashMap<JSONValue, JSONValue>> allDataList = null; ArrayList<LinkedHashMap<JSONValue, JSONValue>> allDataList = null;
//added by swati on 22 dec 2014 for linkedchart //added by swati on 22 dec 2014 for linkedchart
JSONString linkStringKey = null; JSONString linkStringKey = null;
JSONString linkStringValue = null; JSONString linkStringValue = null;
...@@ -125,8 +128,7 @@ public class ChartCreator ...@@ -125,8 +128,7 @@ public class ChartCreator
{ {
cnt++; cnt++;
allDataMap = new HashMap<String, List<String>>(); allDataMap = new HashMap<String, List<String>>();
barMap = new LinkedHashMap<JSONValue, JSONValue>(); barMap = new LinkedHashMap<JSONValue, JSONValue>();
labelList = new ArrayList<LinkedHashMap<JSONValue, JSONValue>>(); labelList = new ArrayList<LinkedHashMap<JSONValue, JSONValue>>();
barValueList = new ArrayList<LinkedHashMap<JSONValue, JSONValue>>(); barValueList = new ArrayList<LinkedHashMap<JSONValue, JSONValue>>();
allDataList = new ArrayList<LinkedHashMap<JSONValue, JSONValue>>(); allDataList = new ArrayList<LinkedHashMap<JSONValue, JSONValue>>();
...@@ -256,6 +258,7 @@ public class ChartCreator ...@@ -256,6 +258,7 @@ public class ChartCreator
if(!barChartMap.containsKey(jsnStringKey)) if(!barChartMap.containsKey(jsnStringKey))
{ {
barChartMap.put(dataStringKey, new JSONString(tempArr[1])); barChartMap.put(dataStringKey, new JSONString(tempArr[1]));
barChartMap.put(new JSONString("link"), new JSONString("n-/ibase/dwh/GwtDashboardPage.html?metadataname$pendingorder"));
} }
} }
if(! labelList.contains(categoryMap)) if(! labelList.contains(categoryMap))
...@@ -277,7 +280,7 @@ public class ChartCreator ...@@ -277,7 +280,7 @@ public class ChartCreator
} }
categryDataVal = JSONParser.parseStrict(labelList.toString().replace('=', ':')); categryDataVal = JSONParser.parseStrict(labelList.toString().replace('=', ':'));
categryJson.put("category", categryDataVal); categryJson.put("category", categryDataVal);
graphJson.put("categories", categryJson); graphJson.put("categories", categryJson);
} }
/**Start of Linked chart logic by swati dates: 22 December 2014 **/ /**Start of Linked chart logic by swati dates: 22 December 2014 **/
...@@ -326,16 +329,17 @@ public class ChartCreator ...@@ -326,16 +329,17 @@ public class ChartCreator
{ {
url="&titleName$"+(FilterCreator.title).get(0)+(""+jsnStringValue).replace('"', ' ').trim(); url="&titleName$"+(FilterCreator.title).get(0)+(""+jsnStringValue).replace('"', ' ').trim();
} }
else{ else
{
url="&titleName$"+url+":"+(FilterCreator.title).get(0)+(""+jsnStringValue).replace('"', ' ').trim(); url="&titleName$"+url+":"+(FilterCreator.title).get(0)+(""+jsnStringValue).replace('"', ' ').trim();
} }
if((prevUrl).trim().length()>1) if((prevUrl).trim().length()>1)
{ {
linkStringValue=new JSONString("n-"+"/ibase/dwh/GwtDashboardPage.html?metadataname$"+linkLMetadataList.get(seriesCnt)+prevUrl.replace('=', '$')+"&PRD_CODE$"+period+url+"&"+yAxisColunList.get(seriesCnt)+"$"+(""+dataStringValue).replace('"', ' ').trim()+"&"+xAxisColunList.get(0)+"$"+(""+jsnStringValue).replace('"', ' ').trim()); linkStringValue=new JSONString("n-"+"/ibase/dwh/GwtDashboardPage.html?metadataname$"+linkLMetadataList.get(seriesCnt)+prevUrl.replace('=', '$')+"&PRD_SALESDASH$"+period+url+"&"+yAxisColunList.get(seriesCnt)+"$"+(""+dataStringValue).replace('"', ' ').trim()+"&"+xAxisColunList.get(0)+"$"+(""+jsnStringValue).replace('"', ' ').trim());
} }
else else
{ {
linkStringValue=new JSONString("n-"+"/ibase/dwh/GwtDashboardPage.html?metadataname$"+linkLMetadataList.get(seriesCnt)+"&PRD_CODE$"+period+url+"&"+yAxisColunList.get(seriesCnt)+"$"+(""+dataStringValue).replace('"', ' ').trim()+"&"+xAxisColunList.get(0)+"$"+(""+jsnStringValue).replace('"', ' ').trim()); linkStringValue=new JSONString("n-"+"/ibase/dwh/GwtDashboardPage.html?metadataname$"+linkLMetadataList.get(seriesCnt)+"&PRD_SALESDASH$"+period+url+"&"+yAxisColunList.get(seriesCnt)+"$"+(""+dataStringValue).replace('"', ' ').trim()+"&"+xAxisColunList.get(0)+"$"+(""+jsnStringValue).replace('"', ' ').trim());
} }
barChartMap.put(linkStringKey, linkStringValue); barChartMap.put(linkStringKey, linkStringValue);
barChartMap.put(new JSONString("color"), new JSONString(colorInfoList.get(seriesCnt))); barChartMap.put(new JSONString("color"), new JSONString(colorInfoList.get(seriesCnt)));
...@@ -361,21 +365,358 @@ public class ChartCreator ...@@ -361,21 +365,358 @@ public class ChartCreator
barMap.put(new JSONString("seriesname"), new JSONString(yAxisColumnName.get(seriesCnt))); barMap.put(new JSONString("seriesname"), new JSONString(yAxisColumnName.get(seriesCnt)));
allDataList.add(barMap); allDataList.add(barMap);
} }
categryDataVal = JSONParser.parseStrict(labelList.toString().replace('=', ':')); categryDataVal = JSONParser.parseStrict(labelList.toString().replace('=', ':'));
categryJson.put("category", categryDataVal); categryJson.put("category", categryDataVal);
graphJson.put("dataset", JSONParser.parseStrict(allDataList.toString().replace('=', ':'))); graphJson.put("dataset", JSONParser.parseStrict(allDataList.toString().replace('=', ':')));
graphJson.put("categories", categryJson); graphJson.put("categories", categryJson);
/* start for color of data value - style property is added by swati on 06jan2015 */
}
/**End of Linkedd chart logic by swati dates: 22 December 2014 **/
jsonChartVal = JSONParser.parseStrict(metaDataList.toString());
graphJson.put("chart", jsonChartVal);
} catch (Exception e)
{
Window.alert(" Exception :: Build Final Graph component [" + e.getMessage() + "]");
}
}
return graphJson;
}
// added new method for heat map date: 16 Jan 2015
public static JSONObject buildHeatMap(ArrayList<ArrayList<String>> graphDtlList, JSONObject jsonObjGraph, String dataSource)
{
LinkedHashMap<JSONString, JSONString> rowDataJson =null;
LinkedHashMap<JSONString, JSONString> columnDataJson = new LinkedHashMap<JSONString, JSONString>();
LinkedHashMap<JSONString, JSONValue> dataJson = new LinkedHashMap<JSONString, JSONValue>();
LinkedHashMap<JSONString, JSONString> metaDataMap = new LinkedHashMap<JSONString, JSONString>();
ArrayList<String> tlLabelList= null;
ArrayList<String> trLabelList=null;
ArrayList<String> blLabelList= null;
ArrayList<String> brLabelList= null;
List<String> tlDataList= null;
List<String> trDataList=null;
List<String> blDataList= null;
List<String> brDataList= null;
String key = ""; String currentvalue = "";
JSONObject graphJson = new JSONObject();
JSONObject colorDataJson = new JSONObject();
JSONObject rowJson =new JSONObject();
JSONObject columnJson = new JSONObject();
JSONObject dataSetJson =new JSONObject();
ArrayList<String> rowDataList=new ArrayList<String>();
ArrayList<String> columnDataList=new ArrayList<String>();
ArrayList<String> dataList=new ArrayList<String>();
ArrayList<String> dataSetList=new ArrayList<String>();
ArrayList<String> colorList = null;
ArrayList<String> showValueList= null;
List<String> metaDataList = null;
List<String> rowIdList = null;
List<String> rowNameList = null;
List<String> columnIdList = null;
List<String> columnNameList = null;
List<String> colorRangeList = null;
List<String> valueList = null;
List<String> mapValuList = null;
JSONValue jsonChartVal = null;
JSONValue colorDataVal = null;
Set<String> valueMapSet = null;
Set<String> mapSet = null;
HashMap<String, List<String>> allDataMap = null;
HashMap<String, List<String>> tlDataMap = null;
HashMap<String, List<String>> trDataMap = null;
HashMap<String, List<String>> blDataMap = null;
HashMap<String, List<String>> brDataMap = null;
JSONString jsnStringValue = null;
JSONString dataStringValue = null;
JSONString linkStringValue = null;
ArrayList<String> linkedMetadataList= new ArrayList<String>();
for (int i = 0; i < graphDtlList.size(); i++)
{
if (i == 3)
{
metaDataList = (ArrayList<String>) graphDtlList.get(i);
}
if (i == 4)
{
rowIdList = (ArrayList<String>) graphDtlList.get(i);
}
if (i == 5)
{
rowNameList = (ArrayList<String>) graphDtlList.get(i);
}
if (i == 6)
{
columnIdList = (ArrayList<String>) graphDtlList.get(i);
}
if (i == 7)
{
columnNameList = (ArrayList<String>) graphDtlList.get(i);
}
if (i == 8)
{
colorRangeList = (ArrayList<String>) graphDtlList.get(i);
}
if (i == 9)
{
colorList = (ArrayList<String>)graphDtlList.get(i);
}
if (i == 10)
{
showValueList = (ArrayList<String>)graphDtlList.get(i);
}
if (i == 11)
{
tlLabelList = (ArrayList<String>)graphDtlList.get(i);
}
if (i == 12)
{
trLabelList = (ArrayList<String>)graphDtlList.get(i);
}
if (i == 13)
{
blLabelList = (ArrayList<String>)graphDtlList.get(i);
}
if (i == 14)
{
brLabelList = (ArrayList<String>)graphDtlList.get(i);
}
if (i == 15)
{
linkedMetadataList = (ArrayList<String>)graphDtlList.get(i);
}
}
if (jsonObjGraph != null)
{
allDataMap = new HashMap<String, List<String>>();
tlDataMap = new HashMap<String, List<String>>();
trDataMap = new HashMap<String, List<String>>();
blDataMap = new HashMap<String, List<String>>();
brDataMap = new HashMap<String, List<String>>();
try
{
//metaDataMap=metaDataList.get(0);
jsonChartVal = JSONParser.parseStrict(metaDataList.get(0));
graphJson.put("chart", jsonChartVal);
JSONObject jsonObjFrGraph =(JSONObject) jsonObjGraph.get(dataSource);
for (int jsnCnt = 0; jsnCnt < jsonObjFrGraph.size(); jsnCnt++)
{
JSONObject fetchRowWiseVal = (JSONObject) jsonObjFrGraph.get(String.valueOf(jsnCnt));
for (int xCnt = 0; xCnt < rowIdList.size(); xCnt++)
{
key = "" + fetchRowWiseVal.get(rowIdList.get(xCnt));
}
valueList = new ArrayList<String>();
for (int yCnt = 0; yCnt < columnIdList.size(); yCnt++)
{
currentvalue = (fetchRowWiseVal.get(columnIdList.get(yCnt)).toString().replace('"', ' ').trim());
valueList.add(currentvalue);
}
allDataMap.put(key, valueList);
valueList = new ArrayList<String>();
for (int yCnt = 0; yCnt < columnIdList.size(); yCnt++)
{
/*Window.alert("fetchRowWiseVal.get(columnIdList.get(yCnt) is "+fetchRowWiseVal.get(tlLabelList.get(yCnt)));
Window.alert("fetchRowWiseVal.get(columnIdList.get(yCnt).toString().replace(', ' ').trim() "+fetchRowWiseVal.get(tlLabelList.get(yCnt).toString().replace('"', ' ').trim()));
*/
if(tlLabelList.get(yCnt).trim().length()!=0)
{
currentvalue = (fetchRowWiseVal.get(tlLabelList.get(yCnt)).toString().replace('"', ' ').trim());
}else
{
currentvalue="";
}
valueList.add(currentvalue);
}
tlDataMap.put(key, valueList);
valueList = new ArrayList<String>();
for (int yCnt = 0; yCnt < columnIdList.size(); yCnt++)
{
//currentvalue = (fetchRowWiseVal.get(trLabelList.get(yCnt)).toString().replace('"', ' ').trim());
if(trLabelList.get(yCnt).trim().length()!=0)
{
currentvalue = (fetchRowWiseVal.get(trLabelList.get(yCnt)).toString().replace('"', ' ').trim());
}else
{
currentvalue="";
}
valueList.add(currentvalue);
}
trDataMap.put(key, valueList);
//Window.alert("trDataMap is ="+trDataMap);
valueList = new ArrayList<String>();
for (int yCnt = 0; yCnt < columnIdList.size(); yCnt++)
{
//currentvalue = (fetchRowWiseVal.get(blLabelList.get(yCnt)).toString().replace('"', ' ').trim());
if(blLabelList.get(yCnt).trim().length()!=0)
{
currentvalue = (fetchRowWiseVal.get(blLabelList.get(yCnt)).toString().replace('"', ' ').trim());
}else
{
currentvalue="";
}
valueList.add(currentvalue);
}
blDataMap.put(key, valueList);
valueList = new ArrayList<String>();
for (int yCnt = 0; yCnt < columnIdList.size(); yCnt++)
{
//currentvalue = (fetchRowWiseVal.get(brLabelList.get(yCnt)).toString().replace('"', ' ').trim());
if(brLabelList.get(yCnt).trim().length()!=0)
{
currentvalue = (fetchRowWiseVal.get(brLabelList.get(yCnt)).toString().replace('"', ' ').trim());
}else
{
currentvalue="";
}
valueList.add(currentvalue);
}
brDataMap.put(key, valueList);
key = "";
}
valueMapSet = allDataMap.keySet();
ArrayList<String> rowList =new ArrayList<String>();
for (String keyString : valueMapSet)
{
keyString = keyString.replace('"', ' ').trim();
rowList.add(keyString);
rowDataJson = new LinkedHashMap<JSONString, JSONString>();
rowDataJson.put(new JSONString("id"),new JSONString(keyString));
/* start for color of data value - style property is added by swati on 06jan2015 */ rowDataList.add(rowDataJson.toString().replace('=', ':'));
} }
/**End of Linkedd chart logic by swati dates: 22 December 2014 **/
rowJson.put("row", JSONParser.parseStrict(rowDataList.toString()));
graphJson.put("rows", JSONParser.parseStrict(rowJson.toString()));
for (int i = 0; i < columnNameList.size(); i++)
{
columnDataJson = new LinkedHashMap<JSONString, JSONString>();
columnDataJson.put(new JSONString("id"),new JSONString(columnNameList.get(i)));
columnDataList.add(columnDataJson.toString().replace('=', ':'));
}
columnJson.put("column", JSONParser.parseStrict(columnDataList.toString()));
graphJson.put("columns", JSONParser.parseStrict(columnJson.toString()));
jsonChartVal = JSONParser.parseStrict(metaDataList.toString());
graphJson.put("chart", jsonChartVal); mapSet = allDataMap.keySet();
for (String keyString : mapSet)
{
mapValuList = allDataMap.get(keyString);
tlDataList = tlDataMap.get(keyString);
trDataList = trDataMap.get(keyString);
blDataList = blDataMap.get(keyString);
brDataList = brDataMap.get(keyString);
jsnStringValue = new JSONString(""+keyString);
//Window.alert("jsnStringValue: "+jsnStringValue+"\n keyString:"+keyString);
for (int i = 0; i < mapValuList.size(); i++)
{
dataStringValue = new JSONString("" + mapValuList.get(i));
dataJson = new LinkedHashMap<JSONString, JSONValue>();
dataJson.put(new JSONString("rowid"),JSONParser.parseStrict(keyString));
dataJson.put(new JSONString("tlLabel"),new JSONString(tlDataList.get(i)));
dataJson.put(new JSONString("trLabel"),new JSONString(trDataList.get(i)));
dataJson.put(new JSONString("blLabel"),new JSONString(blDataList.get(i)));
dataJson.put(new JSONString("brLabel"),new JSONString(brDataList.get(i)));
dataJson.put(new JSONString("showValue"),new JSONString(showValueList.get(i)));
dataJson.put(new JSONString("columnid"),new JSONString(columnNameList.get(i)));
dataJson.put(new JSONString("value"),new JSONString(mapValuList.get(i)));
String temp = Window.Location.getHref();
String prevUrl = temp.substring(temp.indexOf('&'), temp.length());
String period =FilterCreator.parameterList.get(1);
String url=Window.Location.getParameter("titleName");
/*add link code here 29 jan 2015*/
//linkStringValue=new JSONString("P-detailsPopUp,"+linkedProperties+"-/ibase/dwh/GwtDashboardPage.html?metadataname$"+linkLMetadataList.get(seriesCnt)+"&"+xAxisColunList.get(0)+"$"+(""+jsnStringValue).replace('"', ' ').trim()+"&"+yAxisColunList.get(seriesCnt)+"$"+(""+dataStringValue).replace('"', ' ').trim());
if(url=="undefined" || url.equals("undefined") || url.equalsIgnoreCase("undefined"))
{
url="&titleName$"+(FilterCreator.title).get(0)+(""+jsnStringValue).replace('"', ' ').trim();
}
else
{
url="&titleName$"+url+" : "+(FilterCreator.title).get(0)+(""+jsnStringValue).replace('"', ' ').trim();
}
url = url.replace("\\", " ");
if((prevUrl).trim().length()>1)
{
linkStringValue=new JSONString("n-"+"/ibase/dwh/GwtDashboardPage.html?metadataname$"+linkedMetadataList.get(i)+prevUrl.replace('=', '$')+"&PRD_SALESDASH$"+period+url+"&"+rowIdList.get(0)+"$"+((""+jsnStringValue).replace("\\", " ")).replace('"', ' ').trim()+"&"+keyString.replace('"', ' ').trim()+"$"+(""+dataStringValue).replace('"', ' ').trim());
}
else
{
linkStringValue=new JSONString("n-"+"/ibase/dwh/GwtDashboardPage.html?metadataname$"+linkedMetadataList.get(i)+"&PRD_SALESDASH$"+period+url+"&"+rowIdList.get(0)+"$"+((""+jsnStringValue).replace("\\", " ")).replace('"', ' ').trim()+"&"+keyString.replace('"', ' ').trim()+"$"+(""+dataStringValue).replace('"', ' ').trim());
}
dataJson.put(new JSONString("link"),linkStringValue);
/*end link code here 29 jan 2015*/
dataList.add(dataJson.toString().replace('=', ':'));
}
}
dataSetJson.put("data", JSONParser.parseStrict(dataList.toString()));
dataSetList.add(dataSetJson.toString().replace('=', ':'));
graphJson.put("dataset", JSONParser.parseStrict(dataSetList.toString()));
for (int clrRngCnt = 0; clrRngCnt < colorRangeList.size(); clrRngCnt++)
{
if(clrRngCnt==0)
{
colorDataJson.put("mapbypercent",new JSONString(colorRangeList.get(clrRngCnt)));
}
if(clrRngCnt==1 )
{
colorDataJson.put("gradient",new JSONString(colorRangeList.get(clrRngCnt)));
}
if(clrRngCnt==2)
{
colorDataJson.put("minvalue",new JSONString(colorRangeList.get(clrRngCnt)));
}
if(clrRngCnt==3)
{
colorDataJson.put("code",new JSONString(colorRangeList.get(clrRngCnt)));
}
if(clrRngCnt==4)
{
colorDataJson.put("startlabel",new JSONString((colorRangeList.get(clrRngCnt)).toString()));
}
if(clrRngCnt==5 )
{
colorDataJson.put("endlabel",new JSONString(colorRangeList.get(clrRngCnt)));
}
}
colorDataVal = JSONParser.parseStrict(colorList.toString());
colorDataJson.put("color", colorDataVal);
graphJson.put("colorrange", colorDataJson);
} catch (Exception e) } catch (Exception e)
{ {
...@@ -385,4 +726,5 @@ public class ChartCreator ...@@ -385,4 +726,5 @@ public class ChartCreator
} }
return graphJson; return graphJson;
} }
// ended new method of heat map
} }
...@@ -71,6 +71,7 @@ public class CustomGrid extends AbstractDataGrid<DataGridTableRowModel> ...@@ -71,6 +71,7 @@ public class CustomGrid extends AbstractDataGrid<DataGridTableRowModel>
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
public FlexTable jsonToArrayList(HashMap<String, HashMap> gridNGraphMeataDataMap,JSONObject jsonObjGridData ,String dataSrc,String componentId) public FlexTable jsonToArrayList(HashMap<String, HashMap> gridNGraphMeataDataMap,JSONObject jsonObjGridData ,String dataSrc,String componentId)
{ {
//sample(dataSrc);
//Window.alert("in jsonarray"); //Window.alert("in jsonarray");
DataGridTableRowModel rowDataGrid= null; DataGridTableRowModel rowDataGrid= null;
E12CustomTextCell.CellData celldata = null; E12CustomTextCell.CellData celldata = null;
...@@ -371,7 +372,6 @@ public class CustomGrid extends AbstractDataGrid<DataGridTableRowModel> ...@@ -371,7 +372,6 @@ public class CustomGrid extends AbstractDataGrid<DataGridTableRowModel>
contextMenuPanel.show(); contextMenuPanel.show();
} }
} }
...@@ -989,22 +989,28 @@ public class FilterCreator extends Composite ...@@ -989,22 +989,28 @@ public class FilterCreator extends Composite
public void setTitleOnFilterSubmit(ArrayList<String> parameterList,JSONObject metaDataJsnObj) public void setTitleOnFilterSubmit(ArrayList<String> parameterList,JSONObject metaDataJsnObj)
{ {
if(GWTDashBoardReport.flag) if(GWTDashBoardReport.flag)
{ {
subTitle= Window.Location.getParameter("titleName"); subTitle= Window.Location.getParameter("titleName");
} }
title = new MetaDataDtl().getTitle(metaDataJsnObj); title = new MetaDataDtl().getTitle(metaDataJsnObj);
if (title.size() > 1)
{ if (title.size() > 1)
label.setText(title.get(0) + ":" + getMonth(parameterList.get(1)) + title.get(1) + getMonth(parameterList.get(2))); {
} label.setText(title.get(0) + " : " + getMonth(parameterList.get(1)) + title.get(1) + getMonth(parameterList.get(2)));
else if(subTitle.trim().length()>0) }
{ else if (title.size() == 1 && (subTitle=="undefined") || (subTitle.equals("undefined")) || (subTitle.equalsIgnoreCase("undefined")))
label.setText( subTitle + ":" + getMonth(parameterList.get(1)) ); {
} label.setText(title.get(0) + " : " + getMonth(parameterList.get(1)));
else }
{ //if(subTitle.trim().length()>0)
label.setText(title.get(0)+ ":" +getMonth( parameterList.get(1)));//+ "-" + parameterList.get(2)); else if( (title.size() == 1 && (subTitle!="") || (!subTitle.equals("")) || (!subTitle.equalsIgnoreCase(""))))
} {
label.setText( subTitle + " : " + getMonth(parameterList.get(1)) );
}
else
{
label.setText(title.get(0)+ " : " +getMonth( parameterList.get(1)));//+ "-" + parameterList.get(2));
}
} }
} }
\ No newline at end of file
...@@ -89,7 +89,7 @@ public class GWTDashBoardReport implements EntryPoint ...@@ -89,7 +89,7 @@ public class GWTDashBoardReport implements EntryPoint
{ {
for (FilterInfo filterInfo : filterList) for (FilterInfo filterInfo : filterList)
{ {
if(filterInfo.getColNameId().equals("PRD_CODE")) if(filterInfo.getColNameId().equals("PRD_SALESDASH"))
{ {
parameterList.add(Window.Location.getParameter(filterInfo.getColNameId()) == null ? monthYear : Window.Location.getParameter(filterInfo.getColNameId())); parameterList.add(Window.Location.getParameter(filterInfo.getColNameId()) == null ? monthYear : Window.Location.getParameter(filterInfo.getColNameId()));
} }
......
...@@ -59,6 +59,7 @@ public class GraphComponent extends Composite ...@@ -59,6 +59,7 @@ public class GraphComponent extends Composite
*/ */
public GraphComponent(ArrayList<String> parameterList, JSONObject metaDataJsnObj) public GraphComponent(ArrayList<String> parameterList, JSONObject metaDataJsnObj)
{ {
this.jsonObjMetaData = metaDataJsnObj; this.jsonObjMetaData = metaDataJsnObj;
this.parameterList = parameterList; this.parameterList = parameterList;
mainContainer.setWidth("100%"); mainContainer.setWidth("100%");
...@@ -120,9 +121,6 @@ public class GraphComponent extends Composite ...@@ -120,9 +121,6 @@ public class GraphComponent extends Composite
{*/ // for only OTC {*/ // for only OTC
for (String componentId : gridNGraphMeataDataMap.keySet()) for (String componentId : gridNGraphMeataDataMap.keySet())
{ {
jsonObjFrGraph=new JSONObject(); jsonObjFrGraph=new JSONObject();
if(isNumeric(componentId)) if(isNumeric(componentId))
{ {
...@@ -165,7 +163,6 @@ public class GraphComponent extends Composite ...@@ -165,7 +163,6 @@ public class GraphComponent extends Composite
} }
else if("T".equalsIgnoreCase(type)) else if("T".equalsIgnoreCase(type))
{ {
if(jsonObjFrGraph != null) if(jsonObjFrGraph != null)
{ {
RootPanel.get("chartContainer"+componentId).clear(); RootPanel.get("chartContainer"+componentId).clear();
...@@ -230,9 +227,27 @@ public class GraphComponent extends Composite ...@@ -230,9 +227,27 @@ public class GraphComponent extends Composite
} }
} }
/** End Code By Dhanendra for No Data Found Msg **/ /** End Code By Dhanendra for No Data Found Msg **/
} }
if ("H".equalsIgnoreCase(type))
{
for (String graphNo : graphDataMap.keySet())
{
graphDtlList = graphDataMap.get(graphNo);
imageName = (String) graphDtlList.get(0);
width = (String) graphDtlList.get(1);
height = (String) graphDtlList.get(2);
graphJson = ChartCreator.buildHeatMap(graphDtlList, jsonObjFrGraph, dtSrouce); // start- added empty json chartdata to display no data found message by swati on 7jan2015
if(graphJson.size()==0 )
{
graphJson.put("chart", new JSONString(""));
}
// end- added empty json chartdata to display no data found message by swati on 7jan2015
if (graphJson != null && graphJson.size() > 0)
{
this.createChart(graphJson.toString().replace('$', '='), "chartContainer" + componentId, "chartContainer" + componentId, width, height, imageName);
}
}
}
} }
} }
/*}else /*}else
...@@ -296,7 +311,6 @@ public class GraphComponent extends Composite ...@@ -296,7 +311,6 @@ public class GraphComponent extends Composite
/** End Added New code By sachin for Creating Dynamic Url For Report on 04/12/14**/ /** End Added New code By sachin for Creating Dynamic Url For Report on 04/12/14**/
/*if (page.equals("sales")) /*if (page.equals("sales"))
{ {
objActionPath = "/ibase/" + servletname + "?month=" + parameterList.get(1) + "&dataSourceName=" + dbDataSource; objActionPath = "/ibase/" + servletname + "?month=" + parameterList.get(1) + "&dataSourceName=" + dbDataSource;
...@@ -383,7 +397,6 @@ public class GraphComponent extends Composite ...@@ -383,7 +397,6 @@ public class GraphComponent extends Composite
JSONObject jsonObjData = new JSONObject(); JSONObject jsonObjData = new JSONObject();
jsonObjData.put(key, servletJsnObj); jsonObjData.put(key, servletJsnObj);
componentDataMap.put(key, jsonObjData); componentDataMap.put(key, jsonObjData);
}else }else
{ {
componentDataMap.put(key, null); componentDataMap.put(key, null);
...@@ -391,7 +404,7 @@ public class GraphComponent extends Composite ...@@ -391,7 +404,7 @@ public class GraphComponent extends Composite
} }
if (componentDataMap.size() == datsSourceDtlMap.size()) if (componentDataMap.size() == datsSourceDtlMap.size())
{ {
buildChart(componentDataMap); buildChart(componentDataMap);
} }
} else } else
......
...@@ -32,6 +32,7 @@ public class MetaDataDtl ...@@ -32,6 +32,7 @@ public class MetaDataDtl
Document document = null; Document document = null;
ArrayList<String> metaDataList = null; ArrayList<String> metaDataList = null;
LinkedHashMap<JSONString, JSONString> metaDataMap = new LinkedHashMap<JSONString, JSONString>(); LinkedHashMap<JSONString, JSONString> metaDataMap = new LinkedHashMap<JSONString, JSONString>();
LinkedHashMap<JSONString, JSONString> colorDataMap = null;
ArrayList<String> xAxisColunList = null; ArrayList<String> xAxisColunList = null;
ArrayList<String> xAxisColumnName = null; ArrayList<String> xAxisColumnName = null;
ArrayList<String> yAxisColumnName = null; ArrayList<String> yAxisColumnName = null;
...@@ -110,6 +111,18 @@ public class MetaDataDtl ...@@ -110,6 +111,18 @@ public class MetaDataDtl
//add on dated 9 july 201041 //add on dated 9 july 201041
Node chartPropertyNode = null; Node chartPropertyNode = null;
NodeList chartPropertyNodeList = null; NodeList chartPropertyNodeList = null;
ArrayList<String> rowIdList = new ArrayList<String>();
ArrayList<String> rowNameList = new ArrayList<String>();
ArrayList<String> columnIdList = new ArrayList<String>();
ArrayList<String> colorRangeList = new ArrayList<String>();
ArrayList<String> colorList = new ArrayList<String>();
//added on 16 jan 2015 for hat map
NodeList rowNodeList = null;
Node rowNode = null;
NodeList columnNodeList = null;
// ended for heat map
if (jsonObjMetadata != null) if (jsonObjMetadata != null)
{ {
...@@ -347,6 +360,7 @@ public class MetaDataDtl ...@@ -347,6 +360,7 @@ public class MetaDataDtl
if (columnNode.getAttributes().getNamedItem("dotthickness") != null) if (columnNode.getAttributes().getNamedItem("dotthickness") != null)
{ {
dotThicknessDtl = columnNode.getAttributes().getNamedItem("dotthickness").getNodeValue(); dotThicknessDtl = columnNode.getAttributes().getNamedItem("dotthickness").getNodeValue();
metaDataMap.put(new JSONString("anchorRadius"), new JSONString(dotThicknessDtl));
dotThicknessList.add(dotThicknessDtl); dotThicknessList.add(dotThicknessDtl);
} }
//added linked chart metadata name to graphdetail list by swati on 24 Dec 2014 //added linked chart metadata name to graphdetail list by swati on 24 Dec 2014
...@@ -501,6 +515,320 @@ public class MetaDataDtl ...@@ -501,6 +515,320 @@ public class MetaDataDtl
gridNGraphMeataDataMap.put(graphID, graphMeataDataMap); gridNGraphMeataDataMap.put(graphID, graphMeataDataMap);
gridNGraphMeataDataMap.put("datasource"+graphID, graphDataSourceMap); gridNGraphMeataDataMap.put("datasource"+graphID, graphDataSourceMap);
} }
if ("heatmap".equals(viewNode.getNodeName()))
{
typeGraphMap= new LinkedHashMap<String, String>();
graphDataSourceMap= new LinkedHashMap<String, String>();
graphID = viewNode.getAttributes().getNamedItem("id").getNodeValue();
type= viewNode.getAttributes().getNamedItem("type").getNodeValue();
dataSource = viewNode.getAttributes().getNamedItem("datasource").getNodeValue();
graphDataSourceMap.put("datasource"+graphID, dataSource);
typeGraphMap.put("type"+graphID, type);
graphDtlList = new ArrayList<String>();
rowIdList = new ArrayList<String>();
rowNameList = new ArrayList<String>();
columnIdList = new ArrayList<String>();
ArrayList<String> showValueList= new ArrayList<String>();
ArrayList<String> tlLabelList= new ArrayList<String>();
ArrayList<String> trLabelList= new ArrayList<String>();
ArrayList<String> blLabelList= new ArrayList<String>();
ArrayList<String> brLabelList= new ArrayList<String>();
linkedMetadataList= new ArrayList<String>();
colorRangeList = new ArrayList<String>();
columnNameList = new ArrayList<String>();
metaDataList = new ArrayList<String>();
graphMeataDataMap = new HashMap<String, ArrayList<Object>>();
graphNodeList = viewNode.getChildNodes();
for (int i = 0; i < graphNodeList.getLength(); i++)
{
graphDataNode = graphNodeList.item(i);
childNodeName = graphDataNode.getNodeName();
if ("chart_properties".equalsIgnoreCase(childNodeName))
{
chartTypeList = new ArrayList<String>();
chartPropertyNodeList = graphDataNode.getChildNodes();
for (int k = 0; k < chartPropertyNodeList.getLength(); k++)
{
chartPropertyNode = chartPropertyNodeList.item(k);
if ("chart_type".equalsIgnoreCase(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("chart_type");
graphDtlList.add(chartPropertyNode.getChildNodes().item(0).getNodeValue());
chartTypeList.add(chartPropertyNode.getAttributes().getNamedItem("id").getNodeValue());
}
if ("width".equalsIgnoreCase(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("width");
graphDtlList.add(chartPropertyNode.getChildNodes().item(0).getNodeValue());
}
if ("height".equalsIgnoreCase(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("height");
graphDtlList.add(chartPropertyNode.getChildNodes().item(0).getNodeValue());
}
if ("caption".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("caption");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("subcaption".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("subcaption");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("bgcolor".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("bgcolor");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("labelDisplay".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("labelDisplay");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("canvasborderthickness".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("canvasborderthickness");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("plotbordercolor".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("plotbordercolor");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("outcnvbasefontcolor".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("outcnvbasefontcolor");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("showvalues".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("showvalues");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("captionpadding".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("captionpadding");
metaDataMap.put(jsnStringKey, dataStringValue);
}
/*
if ("legendpadding".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("legendpadding");
metaDataMap.put(jsnStringKey, dataStringValue);
} */
if ("canvasborderalpha".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("canvasborderalpha");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("legendshadow".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("legendshadow");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("showBorder".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("showBorder");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("theme".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("theme");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("xAxisName".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("xAxisName");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("yAxisName".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("yAxisName");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("xAxisLabelsOnTop".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("xAxisLabelsOnTop");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("showplotborder".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("showplotborder");
metaDataMap.put(jsnStringKey, dataStringValue);
}
//add new code by Birendra Pandey on dated 22-jan-2015
if ("xAxisNameFontBold".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("yAxisNameFontBold");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("baseFontSize".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("baseFontSize");
metaDataMap.put(jsnStringKey, dataStringValue);
}
if ("legenddisplay".equals(chartPropertyNode.getNodeName()))
{
dataStringValue = new JSONString(chartPropertyNode.getChildNodes().item(0).getNodeValue());
jsnStringKey = new JSONString("showLegend");
metaDataMap.put(jsnStringKey, dataStringValue);
}
//end new code by Birendra Pandey on dated 22-jan-2015
}
}
if ("rows".equalsIgnoreCase(childNodeName))
{
rowNodeList = graphDataNode.getChildNodes();
for (int j = 0; j < rowNodeList.getLength(); j++)
{
rowNode = rowNodeList.item(j);
rowIdList.add(rowNode.getAttributes().getNamedItem("id").getNodeValue());
rowNameList.add(rowNode.getChildNodes().item(0).getNodeValue());
}
}
if ("columns".equalsIgnoreCase(childNodeName))
{
columnNodeList = graphDataNode.getChildNodes();
for (int j = 0; j < columnNodeList.getLength(); j++)
{
columnNode = columnNodeList.item(j);
columnIdList.add(columnNode.getAttributes().getNamedItem("id").getNodeValue());
showValueList.add(columnNode.getAttributes().getNamedItem("showValue").getNodeValue());
columnNameList.add(columnNode.getChildNodes().item(0).getNodeValue());
tlLabelList.add(columnNode.getAttributes().getNamedItem("tllabel").getNodeValue());
trLabelList.add(columnNode.getAttributes().getNamedItem("trlabel").getNodeValue());
brLabelList.add(columnNode.getAttributes().getNamedItem("blLabel").getNodeValue());
blLabelList.add(columnNode.getAttributes().getNamedItem("brLabel").getNodeValue());
linkedMetadataName = columnNode.getAttributes().getNamedItem("linkedmetadata").getNodeValue();
linkedMetadataList.add(linkedMetadataName);
}
}
if ("colorrange".equalsIgnoreCase(childNodeName))
{
if (graphDataNode.getAttributes().getNamedItem("mapbypercent") != null)
{
colorRangeList.add(graphDataNode.getAttributes().getNamedItem("mapbypercent").getNodeValue());
}
if (graphDataNode.getAttributes().getNamedItem("gradient") != null)
{
colorRangeList.add(graphDataNode.getAttributes().getNamedItem("gradient").getNodeValue());
}
if (graphDataNode.getAttributes().getNamedItem("minvalue") != null)
{
colorRangeList.add(graphDataNode.getAttributes().getNamedItem("minvalue").getNodeValue());
}
if (graphDataNode.getAttributes().getNamedItem("code") != null)
{
colorRangeList.add(graphDataNode.getAttributes().getNamedItem("code").getNodeValue());
}
if (graphDataNode.getAttributes().getNamedItem("startlabel") != null)
{
colorRangeList.add(graphDataNode.getAttributes().getNamedItem("startlabel").getNodeValue());
}
if (graphDataNode.getAttributes().getNamedItem("endlabel") != null)
{
colorRangeList.add(graphDataNode.getAttributes().getNamedItem("endlabel").getNodeValue());
}
columnNodeList = graphDataNode.getChildNodes();
for (int j = 0; j < columnNodeList.getLength(); j++)
{
colorDataMap = new LinkedHashMap<JSONString, JSONString>();
columnNode = columnNodeList.item(j);
if (columnNode.getAttributes().getNamedItem("code") != null)
{
dataStringValue = new JSONString(columnNode.getAttributes().getNamedItem("code").getNodeValue());
jsnStringKey = new JSONString("code");
colorDataMap.put(jsnStringKey, dataStringValue);
}
if (columnNode.getAttributes().getNamedItem("minvalue") != null)
{
dataStringValue = new JSONString(columnNode.getAttributes().getNamedItem("minvalue").getNodeValue());
jsnStringKey = new JSONString("minvalue");
colorDataMap.put(jsnStringKey, dataStringValue);
}
if (columnNode.getAttributes().getNamedItem("maxvalue") != null)
{
dataStringValue = new JSONString(columnNode.getAttributes().getNamedItem("maxvalue").getNodeValue());
jsnStringKey = new JSONString("maxvalue");
colorDataMap.put(jsnStringKey, dataStringValue);
}
if (columnNode.getAttributes().getNamedItem("label") != null)
{
dataStringValue = new JSONString(columnNode.getAttributes().getNamedItem("label").getNodeValue());
jsnStringKey = new JSONString("label");
colorDataMap.put(jsnStringKey, dataStringValue);
}
colorList.add(colorDataMap.toString().replace('=', ':'));
}
}
}
metaDataList.add(metaDataMap.toString().replace('=', ':'));
graphDtlList.add(metaDataList);
graphDtlList.add(rowIdList);
graphDtlList.add(rowNameList);
graphDtlList.add(columnIdList);
graphDtlList.add(columnNameList);
graphDtlList.add(colorRangeList);
graphDtlList.add(colorList);
graphDtlList.add(showValueList);
graphDtlList.add(tlLabelList);
graphDtlList.add(trLabelList);
graphDtlList.add(brLabelList);
graphDtlList.add(blLabelList);
graphDtlList.add(linkedMetadataList);
conuter++;
gridNGraphMeataDataMap.put("type"+graphID, typeGraphMap);
graphMeataDataMap.put("graph" + conuter, graphDtlList);
gridNGraphMeataDataMap.put(graphID, graphMeataDataMap);
gridNGraphMeataDataMap.put("datasource"+graphID, graphDataSourceMap);
}
} }
} }
} }
...@@ -525,8 +853,7 @@ public class MetaDataDtl ...@@ -525,8 +853,7 @@ public class MetaDataDtl
NodeList filtrNodeList = null; NodeList filtrNodeList = null;
NodeList fltrDtlNodeList = null; NodeList fltrDtlNodeList = null;
Node columNode = null; Node columNode = null;
ArrayList<FilterInfo> fltrDtlList = new ArrayList<FilterInfo>(); ArrayList<FilterInfo> fltrDtlList = new ArrayList<FilterInfo>(); ;
;
FilterInfo filterInfo = null; FilterInfo filterInfo = null;
if (jsonObjMetadata != null) if (jsonObjMetadata != null)
......
...@@ -3,19 +3,36 @@ ...@@ -3,19 +3,36 @@
function createFusionChart(jsonObj, containerId, chartContainer,width,height,imageName ) function createFusionChart(jsonObj, containerId, chartContainer,width,height,imageName )
{ {
// alert("value comming from json ==="+jsonObj); //jsonObj='{"dataset":[{"renderas":"Column", "parentYAxis":"s", "valuePosition":"BELOW", "color":"#1ECC2A", "data":[{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"35", "showValue":"1", "link":"P-detailsPopUp,width=400,height=300,toolbar=no, scrollbars=no,resizable=no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname=customerinfo"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"10", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"10", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"100", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"0", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"},{"value":"12", "showValue":"1", "link":"P-detailsPopUp,width:400,height:300,toolbar:no, scrollbars:no,resizable:no-http://192.168.0.148:9090/ibase/dwh/GwtDashboardPage.html?metadataname:ordershipment"}], "seriesname":"Quantity Stduom"}], "categories":{"category":[{"label":"14-Aug"},{"label":"18-Aug"},{"label":"20-Aug"},{"label":"06-Sep"},{"label":"09-Sep"},{"label":"11-Sep"},{"label":"12-Sep"},{"label":"16-Sep"},{"label":"17-Sep"},{"label":"18-Sep"},{"label":"19-Sep"},{"label":"20-Sep"},{"label":"22-Sep"},{"label":"23-Sep"},{"label":"30-Sep"},{"label":"01-Oct"},{"label":"18-Nov"},{"label":"27-Nov"},{"label":"06-Dec"}]}, "chart":[{"caption":"Pending Order", "bgcolor":"F0F0F0", "showLegend":"1", "useroundedges":"1", "rotateValues":"0", "decimals":"1", "formatNumberScale":"0", "formatNumber":"1", "xAxisName":"Date Wise Summary", "yAxisName":"Date Wise Summary Value", "anchorBorderThickness":"3", "pyaxisname":"Value", "syaxisname":"Quantity"}]}';
//jsonObj='{"data":[ {"label":"Weekl1","value":"14821"} ,{"label":"Weekl2","value":"19821"}, {"label":"Weekl3","value":"14822"} ], "chart": [ {"caption":"Weekly sales summary","xAxisName":"Week","yAxisName":"sales","numberPrefix":"@"} ] }'; try
try
{ {
FusionCharts.setCurrentRenderer('javascript'); FusionCharts.setCurrentRenderer('javascript');
srcImagesPath="FusionChart/images/"+imageName+".swf"; srcImagesPath="FusionChart/images/"+imageName+".swf";
var myChart = new FusionCharts( ""+srcImagesPath+"", "json"+containerId, ""+height, ""+width, "0", "0","debugMode : false"); if(imageName=="heatmap")
{
//alert("in heat map: height:"+height" width:"+width);
// jsonObj='{ "chart": { "caption": "CPU Utilization % by time over the week", "bgcolor": "FFFFFF", "canvasborderthickness": "0", "labeldisplay": "WRAP", "plotbordercolor": "FFFFFF", "basefontcolor": "FFFFFF", "outcnvbasefontcolor": "333333", "showvalues": "0", "captionpadding": "5", "legendpadding": "0", "tooltipcolor": "333333", "canvasborderalpha": "0", "legendshadow": "0", "legendborderalpha": "0", "xaxisname": "Time of the day (hrs)", "showBorder": "0" }, "rows": { "row": [ { "id": "Mon" }, { "id": "Tue" }, { "id": "Wed" }, { "id": "Thu" }, { "id": "Fri" } ] }, "columns": { "column": [ { "id": "0" }, { "id": "1" }, { "id": "2" }, { "id": "3" }, { "id": "4" }, { "id": "5" }, { "id": "6" }, { "id": "7" }, { "id": "8" }, { "id": "9" }, { "id": "10" }, { "id": "11" }, { "id": "12" }, { "id": "13" }, { "id": "14" }, { "id": "15" }, { "id": "16" }, { "id": "17" }, { "id": "18" }, { "id": "19" }, { "id": "20" }, { "id": "21" }, { "id": "22" }, { "id": "23" } ] }, "dataset": [ { "data": [ { "rowid": "Mon", "columnid": "0", "value": "2" ,"link": "n-/ibase/dwh/GwtDashboardPage.html?metadataname=pendingorder"}, { "rowid": "Mon", "columnid": "1", "value": "4" }, { "rowid": "Mon", "columnid": "2", "value": "5" }, { "rowid": "Mon", "columnid": "3", "value": "5" }, { "rowid": "Mon", "columnid": "4", "value": "3" }, { "rowid": "Mon", "columnid": "5", "value": "3" }, { "rowid": "Mon", "columnid": "6", "value": "4" }, { "rowid": "Mon", "columnid": "7", "value": "5" }, { "rowid": "Mon", "columnid": "8", "value": "5" }, { "rowid": "Mon", "columnid": "9", "value": "6" }, { "rowid": "Mon", "columnid": "10", "value": "8" }, { "rowid": "Mon", "columnid": "11", "value": "12" }, { "rowid": "Mon", "columnid": "12", "value": "14" }, { "rowid": "Mon", "columnid": "13", "value": "23" }, { "rowid": "Mon", "columnid": "14", "value": "27" }, { "rowid": "Mon", "columnid": "15", "value": "32" }, { "rowid": "Mon", "columnid": "16", "value": "46" }, { "rowid": "Mon", "columnid": "17", "value": "19" }, { "rowid": "Mon", "columnid": "18", "value": "23" }, { "rowid": "Mon", "columnid": "19", "value": "25" }, { "rowid": "Mon", "columnid": "20", "value": "19" }, { "rowid": "Mon", "columnid": "21", "value": "16" }, { "rowid": "Mon", "columnid": "22", "value": "8" }, { "rowid": "Mon", "columnid": "23", "value": "7" }, { "rowid": "Tue", "columnid": "0", "value": "5" }, { "rowid": "Tue", "columnid": "1", "value": "7" }, { "rowid": "Tue", "columnid": "2", "value": "11" }, { "rowid": "Tue", "columnid": "3", "value": "3" }, { "rowid": "Tue", "columnid": "4", "value": "4" }, { "rowid": "Tue", "columnid": "5", "value": "2" }, { "rowid": "Tue", "columnid": "6", "value": "1" }, { "rowid": "Tue", "columnid": "7", "value": "9" }, { "rowid": "Tue", "columnid": "8", "value": "11" }, { "rowid": "Tue", "columnid": "9", "value": "16" }, { "rowid": "Tue", "columnid": "10", "value": "23" }, { "rowid": "Tue", "columnid": "11", "value": "34" }, { "rowid": "Tue", "columnid": "12", "value": "45" }, { "rowid": "Tue", "columnid": "13", "value": "68" }, { "rowid": "Tue", "columnid": "14", "value": "47" }, { "rowid": "Tue", "columnid": "15", "value": "52" }, { "rowid": "Tue", "columnid": "16", "value": "26" }, { "rowid": "Tue", "columnid": "17", "value": "49" }, { "rowid": "Tue", "columnid": "18", "value": "33" }, { "rowid": "Tue", "columnid": "19", "value": "28" }, { "rowid": "Tue", "columnid": "20", "value": "12" }, { "rowid": "Tue", "columnid": "21", "value": "10" }, { "rowid": "Tue", "columnid": "22", "value": "3" }, { "rowid": "Tue", "columnid": "23", "value": "2" }, { "rowid": "Wed", "columnid": "0", "value": "4" }, { "rowid": "Wed", "columnid": "1", "value": "6" }, { "rowid": "Wed", "columnid": "2", "value": "8" }, { "rowid": "Wed", "columnid": "3", "value": "12" }, { "rowid": "Wed", "columnid": "4", "value": "7" }, { "rowid": "Wed", "columnid": "5", "value": "10" }, { "rowid": "Wed", "columnid": "6", "value": "12" }, { "rowid": "Wed", "columnid": "7", "value": "14" }, { "rowid": "Wed", "columnid": "8", "value": "18" }, { "rowid": "Wed", "columnid": "9", "value": "20" }, { "rowid": "Wed", "columnid": "10", "value": "27" }, { "rowid": "Wed", "columnid": "11", "value": "33" }, { "rowid": "Wed", "columnid": "12", "value": "37" }, { "rowid": "Wed", "columnid": "13", "value": "43" }, { "rowid": "Wed", "columnid": "14", "value": "49" }, { "rowid": "Wed", "columnid": "15", "value": "54" }, { "rowid": "Wed", "columnid": "16", "value": "67" }, { "rowid": "Wed", "columnid": "17", "value": "75" }, { "rowid": "Wed", "columnid": "18", "value": "87" }, { "rowid": "Wed", "columnid": "19", "value": "72" }, { "rowid": "Wed", "columnid": "20", "value": "52" }, { "rowid": "Wed", "columnid": "21", "value": "23" }, { "rowid": "Wed", "columnid": "22", "value": "12" }, { "rowid": "Wed", "columnid": "23", "value": "4" }, { "rowid": "Thu", "columnid": "0", "value": "2" }, { "rowid": "Thu", "columnid": "1", "value": "3" }, { "rowid": "Thu", "columnid": "2", "value": "3" }, { "rowid": "Thu", "columnid": "3", "value": "5" }, { "rowid": "Thu", "columnid": "4", "value": "5" }, { "rowid": "Thu", "columnid": "5", "value": "7" }, { "rowid": "Thu", "columnid": "6", "value": "10" }, { "rowid": "Thu", "columnid": "7", "value": "9" }, { "rowid": "Thu", "columnid": "8", "value": "11" }, { "rowid": "Thu", "columnid": "9", "value": "12" }, { "rowid": "Thu", "columnid": "10", "value": "15" }, { "rowid": "Thu", "columnid": "11", "value": "23" }, { "rowid": "Thu", "columnid": "12", "value": "25" }, { "rowid": "Thu", "columnid": "13", "value": "28" }, { "rowid": "Thu", "columnid": "14", "value": "17" }, { "rowid": "Thu", "columnid": "15", "value": "22" }, { "rowid": "Thu", "columnid": "16", "value": "20" }, { "rowid": "Thu", "columnid": "17", "value": "33" }, { "rowid": "Thu", "columnid": "18", "value": "35" }, { "rowid": "Thu", "columnid": "19", "value": "20" }, { "rowid": "Thu", "columnid": "20", "value": "14" }, { "rowid": "Thu", "columnid": "21", "value": "6" }, { "rowid": "Thu", "columnid": "22", "value": "3" }, { "rowid": "Thu", "columnid": "23", "value": "1" }, { "rowid": "Fri", "columnid": "0", "value": "2" }, { "rowid": "Fri", "columnid": "1", "value": "4" }, { "rowid": "Fri", "columnid": "2", "value": "7" }, { "rowid": "Fri", "columnid": "3", "value": "11" }, { "rowid": "Fri", "columnid": "4", "value": "14" }, { "rowid": "Fri", "columnid": "5", "value": "12" }, { "rowid": "Fri", "columnid": "6", "value": "8" }, { "rowid": "Fri", "columnid": "7", "value": "12" }, { "rowid": "Fri", "columnid": "8", "value": "14" }, { "rowid": "Fri", "columnid": "9", "value": "16" }, { "rowid": "Fri", "columnid": "10", "value": "18" }, { "rowid": "Fri", "columnid": "11", "value": "20" }, { "rowid": "Fri", "columnid": "12", "value": "25" }, { "rowid": "Fri", "columnid": "13", "value": "27" }, { "rowid": "Fri", "columnid": "14", "value": "17" }, { "rowid": "Fri", "columnid": "15", "value": "16" }, { "rowid": "Fri", "columnid": "16", "value": "14" }, { "rowid": "Fri", "columnid": "17", "value": "12" }, { "rowid": "Fri", "columnid": "18", "value": "14" }, { "rowid": "Fri", "columnid": "19", "value": "14" }, { "rowid": "Fri", "columnid": "20", "value": "12" }, { "rowid": "Fri", "columnid": "21", "value": "10" }, { "rowid": "Fri", "columnid": "22", "value": "3" }, { "rowid": "Fri", "columnid": "23", "value": "2" } ] } ], "colorrange": { "gradient": "1", "minvalue": "0", "code": "a4c93f", "startlabel": "", "endlabel": "Very High", "color": [ { "minvalue": "0", "maxvalue": "20", "code": "a4c93f", "label": "Average", "alpha": "40" }, { "code": "e44a00", "minvalue": "20", "maxvalue": "100", "alpha": "40" } ] } }';
//jsonObj='{ "chart": { "caption": "Top Smartphone Ratings", "subcaption": "By Features", "xAxisName": "Features", "yAxisName": "Model", "showplotborder": "1", "xAxisLabelsOnTop": "1", "baseFontColor": "#333333", "baseFont": "Helvetica Neue,Arial", "captionFontSize": "14", "subcaptionFontSize": "14", "subcaptionFontBold": "0", "showBorder": "0", "bgColor": "#ffffff", "showShadow": "0", "usePlotGradientColor": "0", "canvasBgColor": "#ffffff", "canvasBorderAlpha": "0", "legendBgAlpha": "0", "legendBorderAlpha": "0", "legendShadow": "0", "legendItemFontSize": "10", "legendItemFontColor": "#666666", "toolTipColor": "#ffffff", "toolTipBorderThickness": "0", "toolTipBgColor": "#000000", "toolTipBgAlpha": "80", "toolTipBorderRadius": "2", "toolTipPadding": "5" }, "rows": { "row": [ { "id": "SGS5", "label": "Samsung Galaxy S5" }, { "id": "HTC1M8", "label": "HTC One (M8)" }, { "id": "IPHONES5", "label": "Apple iPhone 5S" }, { "id": "LUMIA", "label": "Nokia Lumia 1520" } ] }, "columns": { "column": [ { "id": "processor", "label": "Processor" }, { "id": "screen", "label": "Screen Size" }, { "id": "price", "label": "Price" }, { "id": "backup", "label": "Battery Backup" }, { "id": "cam", "label": "Camera" } ] }, "dataset": [ { "data": [ { "rowid": "SGS5", "columnid": "processor", "value": "8.7", "tllabel": "Quad Core 2.5 GHz", "trlabel": "OS : Android 4.4 Kitkat" }, { "rowid": "SGS5", "columnid": "screen", "value": "8.5", "tllabel": "5.1 inch", "trlabel": "AMOLED screen" }, { "rowid": "SGS5", "columnid": "price", "value": "9.3", "tllabel": "$600" }, { "rowid": "SGS5", "columnid": "backup", "value": "9.7", "tllabel": "29 Hrs", "trlabel": "Battery : 2800 MAH" }, { "rowid": "SGS5", "columnid": "cam", "value": "8", "tllabel": "16 MP", "trlabel": "Front Camera : 2.1 MP" }, { "rowid": "HTC1M8", "columnid": "processor", "value": "9.2", "tllabel": "Quad Core 2.3 GHz", "trlabel": "OS : Android 4.4 Kitkat" }, { "rowid": "HTC1M8", "columnid": "screen", "value": "8.3", "tllabel": "5 inch", "trlabel": "LCD screen" }, { "rowid": "HTC1M8", "columnid": "price", "value": "7.3", "tllabel": "$600" }, { "rowid": "HTC1M8", "columnid": "backup", "value": "8.8", "tllabel": "20 Hrs", "trlabel": "Battery : 2600 MAH" }, { "rowid": "HTC1M8", "columnid": "cam", "value": "8.7", "tllabel": "4 MP", "trlabel": "Front Camera : 5 MP" }, { "rowid": "IPHONES5", "columnid": "processor", "value": "9.1", "tllabel": "Dual Core", "trlabel": "OS : iOS 7" }, { "rowid": "IPHONES5", "columnid": "screen", "value": "8.6", "tllabel": "4 inch", "trlabel": "Retina LCD screen" }, { "rowid": "IPHONES5", "columnid": "price", "value": "7.2", "tllabel": "$649" }, { "rowid": "IPHONES5", "columnid": "backup", "value": "8.4", "tllabel": "10 Hrs", "trlabel": "Battery : 1560 MAH" }, { "rowid": "IPHONES5", "columnid": "cam", "value": "9.5", "tllabel": "8 MP", "trlabel": "Front Camera : 1.2 MP" }, { "rowid": "LUMIA", "columnid": "processor", "value": "8.8", "tllabel": "Quad Core 2.2 GHz", "trlabel": "OS: Windows Phone 8" }, { "rowid": "LUMIA", "columnid": "screen", "value": "9.1", "tllabel": "6 inch", "trlabel": "LCD screen" }, { "rowid": "LUMIA", "columnid": "price", "value": "9.7", "tllabel": "$470" }, { "rowid": "LUMIA", "columnid": "backup", "value": "9.2", "tllabel": "27 Hrs", "trlabel": "Battery : 3400 MAH" }, { "rowid": "LUMIA", "columnid": "cam", "value": "8.1", "tllabel": "20MP", "trlabel": "Front Camera : 1.2 MP" } ] } ], "colorrange": { "gradient": "0", "minvalue": "0", "code": "E24B1A", "startlabel": "Poor", "endlabel": "Good", "color": [ { "code": "E24B1A", "minvalue": "1", "maxvalue": "5", "label": "Bad" }, { "code": "F6BC33", "minvalue": "5", "maxvalue": "8.5", "label": "Average" }, { "code": "6DA81E", "minvalue": "8.5", "maxvalue": "10", "label": "Good" } ] },"styles": [{"definition":[{"name":"tlLabelFont", "type":"font1", "font":"verdana", "size":"14", "color":"AA3F55"},{"name":"trLabelFont", "type":"font", "font":"verdana", "size":"15", "color":"AA3F55"},{"name":"blLabelFont", "type":"font", "font":"verdana", "size":"50", "color":"FFFFFF"},{"name":"brLabelFont", "type":"font", "font":"verdana", "size":"17", "color":"AA3F55"},{"name":"datavaluesFont", "type":"font", "font":"verdana", "size":"18", "color":"red"}]}, {"application":[{"toobject":"tldatavalues", "styles":"tlLabelFont"},{"toobject":"trdatavalues", "styles":"trLabelFont"},{"toobject":"bldatavalues", "styles":"blLabelFont"},{"toobject":"brdatavalues", "styles":"brLabelFont"},{"toobject":"datavalues", "styles":"datavaluesFont"}]}] }';
var myChart = new FusionCharts({ type: 'heatmap', dataFormat: 'json' });
myChart.resizeTo( height,width );
}
else if(imageName!="heatmap")
{
//alert("in graph: height:"+height" width:"+width);
var myChart = new FusionCharts({ type: imageName, dataFormat: 'json' });
myChart.resizeTo( height,width );
//var myChart = new FusionCharts( ""+srcImagesPath+"", "json"+containerId, ""+height, ""+width, "0", "0","debugMode : false");
}
myChart.setJSONData(jsonObj); myChart.setJSONData(jsonObj);
myChart.render(chartContainer); myChart.render(chartContainer);
} }
catch(e) catch(e)
{ {
alert( "Excpeiton :: createFusionChart ["+e.message+"]" ); alert( "Excpeiton :: createFusionChart ["+e.message+"]" );
} }
} }
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
FusionCharts JavaScript Library - Gantt Chart
Copyright FusionCharts Technologies LLP
License Information at <http://www.fusioncharts.com/license>
@version 3.6.0
*/
FusionCharts.register("module",["private","modules.renderer.js-gantt",function(){var ea=this,E=ea.hcLib,Ea=ea.window,ua=/msie/i.test(Ea.navigator.userAgent)&&!Ea.opera,rb=E.chartAPI,Pa=E.chartAPI,eb=E.extend2,e=E.pluck,d=E.pluckNumber,oa=E.getFirstColor,Fa=E.graphics,T=Fa.convertColor,fb=Fa.getDarkColor,hc=Fa.parseColor,Ca=E.parseUnsafeString,Ga=E.getFirstValue,Zb=E.getValidValue,ka=E.Raphael,ic=E.COMMASTRING,La=E.setLineHeight,Eb=E.getDashStyle,Fb=E.toRaphaelColor,Qa=E.each,jc=E.FC_CONFIG_STRING,
Ma="rgba(192,192,192,"+(ua?.002:1E-6)+")",$b=Fa.mapSymbolName,ua=Math,Ha=ua.ceil,va=ua.round,W=ua.max,Da=ua.min,ac=ua.abs,Ra=parseInt,Gb=parseFloat,kc={pageX:0,pageY:0},U=E.plotEventHandler,ha,ca,sb=E.hasTouch=void 0!==Ea.document.documentElement.ontouchstart,lc=E.addEvent,mc=E.removeEvent,Sa=function(b){return void 0!==b&&null!==b},Ta={left:"start",right:"end",center:"middle"},gb={left:0,right:1,center:.5,undefined:.5},tb={top:1,bottom:0,middle:.5,undefined:.5},Ua={left:5,right:-5,center:0,undefined:0},
Ea=!/fusioncharts\.com$/i.test(Ea.location.hostname),Na=function(b,a){this.min=b.min;this.max=d(b.visibleMax,b.max);this.pixelValueRatio=a/(this.max-this.min);this.startPixel=b.chart.marginLeft+b.chart.ganttStartX};Na.prototype={getPixel:function(b){return this.startPixel+(b-this.min)*this.pixelValueRatio}};Na.prototype.constructor=Na;rb("gantt",{friendlyName:"Gantt Chart",rendererId:"gantt",standaloneInit:!0,defaultSeriesType:"gantt",canvasborderthickness:1,defaultPlotShadow:1,creditLabel:Ea,fireGroupEvent:!0,
defaultPaletteOptions:function(){var b=arguments;return E.extend2(E.extend2(E.extend2(E.extend2({},b[0]),b[1]),b[2]),b[3])}(eb({},E.defaultGaugePaletteOptions),{paletteColors:["AFD8F8 F6BD0F 8BBA00 FF8E46 008E8E D64646 8E468E 588526 B3AA00 008ED6 9D080D A186BE CC6600 FDC689 ABA000 F26D7D FFF200 0054A6 F7941C CC3300 006600 663300 6DCFF6".split(" "),"AFD8F8 F6BD0F 8BBA00 FF8E46 008E8E D64646 8E468E 588526 B3AA00 008ED6 9D080D A186BE CC6600 FDC689 ABA000 F26D7D FFF200 0054A6 F7941C CC3300 006600 663300 6DCFF6".split(" "),
"AFD8F8 F6BD0F 8BBA00 FF8E46 008E8E D64646 8E468E 588526 B3AA00 008ED6 9D080D A186BE CC6600 FDC689 ABA000 F26D7D FFF200 0054A6 F7941C CC3300 006600 663300 6DCFF6".split(" "),"AFD8F8 F6BD0F 8BBA00 FF8E46 008E8E D64646 8E468E 588526 B3AA00 008ED6 9D080D A186BE CC6600 FDC689 ABA000 F26D7D FFF200 0054A6 F7941C CC3300 006600 663300 6DCFF6".split(" "),"AFD8F8 F6BD0F 8BBA00 FF8E46 008E8E D64646 8E468E 588526 B3AA00 008ED6 9D080D A186BE CC6600 FDC689 ABA000 F26D7D FFF200 0054A6 F7941C CC3300 006600 663300 6DCFF6".split(" ")],
bgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],bgAngle:[270,270,270,270,270],bgRatio:["100","100","100","100","100"],bgAlpha:["100","100","100","100","100"],canvasBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],canvasBgAngle:[0,0,0,0,0],canvasBgAlpha:["100","100","100","100","100"],canvasBgRatio:["","","","",""],canvasBorderColor:["545454","545454","415D6F","845001","68001B"],canvasBorderAlpha:[100,100,100,90,100],gridColor:["DDDDDD","D8DCC5","99C4CD","DEC49C","FEC1D0"],gridResizeBarColor:["999999",
"545454","415D6F","845001","D55979"],categoryBgColor:["F1F1F1","EEF0E6","F2F8F9","F7F0E6","FFF4F8"],dataTableBgColor:["F1F1F1","EEF0E6","F2F8F9","F7F0E6","FFF4F8"],toolTipBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],toolTipBorderColor:["545454","545454","415D6F","845001","68001B"],baseFontColor:["555555","60634E","025B6A","A15E01","68001B"],borderColor:["767575","545454","415D6F","845001","68001B"],borderAlpha:[50,50,50,50,50],legendBgColor:["ffffff","ffffff","ffffff","ffffff","ffffff"],
legendBorderColor:["666666","545454","415D6F","845001","D55979"],plotBorderColor:["999999","8A8A8A","6BA9B6","C1934D","FC819F"],plotFillColor:["EEEEEE","D8DCC5","BCD8DE","E9D8BE","FEDAE3"],scrollBarColor:["EEEEEE","D8DCC5","99C4CD","DEC49C","FEC1D0"]}),charttopmargin:10,chartbottommargin:20,series:function(){var b=this.dataObj,a=b.chart,I=(I=b.categories)||[],c=I.length,p=this.hcJSON,k=p.chart,s=p[jc],y=this.smartLabel,f=this.colorManager,g=p.categories={},v=[],n=this.inCanvasStyle,r=this.numberFormatter,
C=Infinity,l=-Infinity,t=k.origW-k.marginLeft-k.marginRight,D=k.origH-k.marginTop-k.marginBottom,m=b.processes||{},h=m&&m.process,x=h&&h.length,w=Ra(n.fontSize,10),Q=b.datatable,pa=Q&&Q.datacolumn,G=pa&&pa.length,X=b.connectors,L=X&&X.length,M=p.connectors=[],N=b.milestones&&b.milestones.milestone,B=N&&N.length,Z=p.milestone=[],H=b.tasks,$=H&&H.task,K=$&&$.length,u=0,q=0,bc=d(a.forceganttwidthpercent,0),aa=0,U=0,ca=!1,ka={top:"top",bottom:"bottom"},A={top:"top",bottom:"bottom",undefined:"middle"},
R={right:"right",left:"left"},ba={right:"right",left:"left",undefined:"center"},F=p.dataTable={},hb=Infinity,ib=-Infinity,ha=p.processIDMap=[],ea,ua,Ea=d(a.dateintooltip,1),Ha=b.legend&&b.legend.item,Fa=p.tasksMap||(p.tasksMap={}),Na=0,Pa=0,ub,za,Hb,Ib,jb,vb,Qa,Jb,Kb,qa,wa,Aa,Ta,gb,Ua,Qb,wb,rb,xa,na,kb,P,Lb,Va,Wa,Mb,Nb,Ba,la,ma,Xa,Ya,Za,lb,$a,ab,Ia,Ja,fa,sb,Rb,ga,ia,da,mb,nb,bb,V,J,Sb,cb,xb,Ka,yb,Tb,Ob,ob,Ub,zb,Ab,Bb,Cb,Db,Pb,pb,tb,cc,dc,ec,Oa,S,fc,sa,O,ya,ra,qb,ja,Vb,Wb,Xb,Yb,ta,db,gc,z,Y;if(x){p.tasks=
[];delete p.yAxis;delete p.xAxis;k.backgroundColor=T(e(a.bgcolor,"FFFFFF"),e(a.bgalpha,f.getColor("bgAlpha")));d(a.showborder,0)||(k.borderWidth=0);k.plotBorderColor=T(e(a.canvasbordercolor,f.getColor("canvasBorderColor")),0===d(a.showcanvasborder,1)?0:e(a.canvasborderalpha,100));k.backgroundColor={FCcolor:{color:e(a.bgcolor,"FFFFFF"),alpha:e(a.bgalpha,f.getColor("bgAlpha")),angle:e(a.bgangle,f.getColor("bgAngle")),ratio:e(a.bgratio,f.getColor("bgRatio"))}};k.plotBackgroundColor={FCcolor:{color:e(a.canvasbgcolor,
f.getColor("canvasBgColor")),alpha:e(a.canvasbgalpha,f.getColor("canvasBgAlpha")),angle:e(a.canvasbgangle,f.getColor("canvasBgAngle")),ratio:e(a.canvasbgratio,f.getColor("canvasBgRatio"))}};k.plotBorderWidth=d(a.canvasborderthickness,1);k.outputDateFormat=e(a.outputdateformat,k.dateFormat);k.extendCategoryBg=d(a.extendcategorybg,0);k.ganttLineColor=T(e(a.ganttlinecolor,f.getColor("gridColor")),d(a.ganttlinealpha,100));k.ganttLineThickness=d(a.ganttlinethickness,1);k.ganttLineDashStyle=d(a.ganttlinedashed,
0)?Eb(d(a.ganttlinedashlen,1),a.ganttlinedashgap,k.ganttLineThickness):void 0;k.gridBorderColor=T(e(a.gridbordercolor,f.getColor("gridColor")),d(a.gridborderalpha,100));k.gridBorderThickness=d(a.gridborderthickness,1);k.gridBorderDashStyle=d(a.gridborderdashed,0)?Eb(d(a.gridborderdashlen,1),a.gridborderdashgap,k.gridborderThickness):void 0;k.showSlackAsFill=d(a.showslackasfill,1);k.slackFillColor=oa(e(a.slackfillcolor,"FF5E5E"));k.gridResizeBarColor=T(e(a.gridresizebarcolor,f.getColor("gridResizeBarColor")),
d(a.gridresizebaralpha,100));k.gridResizeBarThickness=d(a.gridresizebarthickness,1);k.taskBarRoundRadius=d(a.taskbarroundradius,0);k.taskBarFillMix=a.taskbarfillmix;k.taskBarFillRatio=a.taskbarfillratio;void 0===k.taskBarFillMix&&(k.taskBarFillMix="{light-10},{dark-20},{light-50},{light-85}");void 0===k.taskBarFillRatio&&(k.taskBarFillRatio="0,8,84,8");k.connectorExtension=d(a.connectorextension,10);k.clickURL=e(a.clickurl,"");k.annRenderDelay=a.annrenderdelay;k.taskDatePadding=d(a.taskdatepadding,
3);k.taskLabelPadding=d(a.tasklabelspadding,2);k.ganttStartX=d(a.ganttwidthpercent,65);100<k.ganttStartX&&(k.ganttStartX=100);Aa=k.ganttStartX=.01*(100-k.ganttStartX)*t;k.gridWidth=t-k.ganttStartX;gc=d(a.showfulldatatable,1);bb=m.width;bb=d(k.ganttStartX*(/\%/g.test(bb)&&.01*Gb(bb,10))||bb);Aa-=d(bb,0);ea=va(bb);U+=1;for(z=0;z<G;z+=1)Jb=pa[z].width,Kb=d(k.ganttStartX*(/\%/g.test(Jb)&&.01*Gb(Jb,10))||Jb),Aa-=d(Kb,0),Kb=pa[z].width=va(Kb),U+=1;0<=Aa?Aa/=U:(ca=!0,Aa=k.ganttStartX/U);if(bc||!gc)for((isNaN(ea)||
ca)&&(ea=Aa),z=0;z<G;z+=1)(isNaN(pa[z].width)||ca)&&(pa[z].width=Aa);for(z=0;z<c;z+=1){ia=I[z];C=Infinity;l=-Infinity;mb=e(ia.bgcolor,f.getColor("categoryBgColor"));nb=d(ia.bgalpha,100);Xa=e(ia.font,n.fontFamily);Ya=d(ia.fontsize,w+1);Za=e(ia.fontcolor,n.color);lb=d(ia.isbold,1);$a=d(ia.isitalic,0);ab=d(ia.isunderline,0);d(ia.verticalpadding,3);Ia=e(ia.align,"center").toLowerCase();Ja=e(ia.valign,"middle").toLowerCase();sb=(Rb=ia.category)&&Rb.length;Oa=0;ja={};for(Y=0;Y<sb;Y+=1)ga=Rb[Y],la=r.getDateValue(ga.start).ms,
ma=r.getDateValue(ga.end).ms,isNaN(la)&&(la=void 0),la>l&&(l=la),la<=C&&(C=la),isNaN(ma)&&(ma=void 0),ma>l&&(l=ma),ma<=C&&(C=ma),fa=Ca(e(ga.label,ga.name)),S={color:oa(e(ga.fontcolor,Za)),fontFamily:e(ga.font,Xa),fontSize:d(ga.fontsize,Ya)+"px",fontWeight:d(ga.isbold,lb)&&"bold"||"normal",fontStyle:d(ga.isitalic,$a)&&"italic"||"normal",textDecoration:d(ga.isunderline,ab)&&"underline"||"none"},La(S),y.setStyle(S),qa=y.getOriSize(fa),Oa=W(Oa,qa.height),O="FCCAT_"+z+"_"+Y,Hb=e(ga.hoverbandcolor,ia.hoverbandcolor,
a.categoryhoverbandcolor,a.hoverbandcolor,f.getColor("gridColor")),Ib=d(ga.hoverbandalpha,ia.hoverbandalpha,a.categoryhoverbandalpha,a.hoverbandalpha,30),jb=d(ga.showhoverband,ia.showhoverband,a.showcategoryhoverband,a.showhoverband,a.showhovereffect,1),g[O]={text:fa,style:S,start:la,end:ma,index:Y,isLast:z===c-1,bgColor:T(e(ga.bgcolor,mb),d(ga.bgalpha,nb)),dimension:ja,link:ga.link,align:ba[[e(ga.align,Ia).toLowerCase()]],vAlign:A[ka[e(ga.valign,Ja).toLowerCase()]],hoverColor:T(Hb,Ib),useHover:jb,
usePlotHover:d(ga.showganttpanehoverband,ia.showganttpanehoverband,a.showganttpaneverticalhoverband,jb)},g[ya]&&(g[ya].nextCol=g[O],g[O].prevCol=g[ya]),ya=O;if(xb=g["FCCAT_"+z+"_0"])g[O].first=xb,xb.last=g[O],g[cb]&&(g[cb].nextRow=xb,xb.prevRow=g[cb]);cb=O;ja.h=Oa+5+2*d(ia.verticalpadding,3);ja.y=q;ja.min=C;ja.max=l;ja.numCat=Y;q+=ja.h;ib=W(ib,l);hb=Da(hb,C)}g.min=hb;g.max=ib;if(x){Oa=wa=0;db="right"===e(m.positioningrid,"left").toLowerCase();S={color:oa(e(m.headerfontcolor,n.color)),fontFamily:e(m.headerfont,
n.fontFamily),fontSize:d(m.headerfontsize,w+3)+"px",fontWeight:d(m.headerisbold,1)&&"bold"||"normal",fontStyle:d(m.headerisitalic,0)&&"italic"||"normal",textDecoration:d(m.headerisunderline,0)&&"underline"||"none"};La(S);fa=Ca(m.headertext);y.setStyle(S);qa=y.getOriSize(fa);wa=W(wa,qa.width);Ia=ba[R[e(m.headeralign,"center").toLowerCase()]];Ja=A[ka[e(m.headervalign,"middle").toLowerCase()]];ja={};O=ra=cb="processHeader";F.processHeader={text:fa,style:S,align:Ia,vAlign:Ja,isHeader:!0,link:e(m.headerlink),
dimension:{x:0,w:0,h:W(qa.height,q)},bgColor:T(e(m.headerbgcolor,f.getColor("dataTableBgColor")),d(m.headerbgalpha,100)),key:O,isLast:db,drawResizer:!db&&G,prevCol:null,nextCol:null,prevRow:null,nextRow:null};mb=e(m.bgcolor,f.getColor("dataTableBgColor"));nb=d(m.bgalpha,100);Xa=e(m.font,n.fontFamily);Ya=d(m.fontsize,w);Za=e(m.fontcolor,n.color);lb=d(m.isbold,0);$a=d(m.isitalic,0);ab=d(m.isunderline,0);Ia=e(m.align,"center").toLowerCase();Ja=e(m.valign,"middle").toLowerCase();for(z=0;z<x;z+=1)da=h[z],
Hb=e(da.hoverbandcolor,m.hoverbandcolor,a.processhoverbandcolor,a.hoverbandcolor,f.getColor("gridColor")),Ib=d(da.hoverbandalpha,m.hoverbandalpha,a.processhoverbandalpha,a.hoverbandalpha,30),jb=d(da.showhoverband,m.showhoverband,a.showprocesshoverband,a.showhoverband,a.showhovereffect,1),S={color:oa(e(da.fontcolor,Za)),fontSize:d(da.fontsize,Ya)+"px",fontFamily:e(da.font,Xa),fontWeight:d(da.isbold,lb)&&"bold"||"normal",fontStyle:d(da.isitalic,$a)&&"italic"||"normal",textDecoration:d(da.isunderline,
ab)&&"underline"||"none"},La(S),fa=Ca(e(da.label,da.name)),y.setStyle(S),qa=y.getOriSize(fa),Oa=W(Oa,qa.height),wa=W(wa,qa.width),ya=O,O=e(da.id,"__FCDPID__"+z).toUpperCase(),F[O]&&(O="__FCDPID__"+z),ha[z]=O,Sa(ub=d(da.height,a.rowheight))&&(ub=ac(ub),Na+=ub||0,Pa+=1),F[O]={text:qa.text,style:S,link:da.link,id:O,processHeight:ub,labelHeight:qa.height,align:ba[[e(da.align,Ia).toLowerCase()]],vAlign:A[ka[e(da.valign,Ja).toLowerCase()]],bgColor:T(e(da.bgcolor,mb),d(da.bgalpha,nb)),prevCol:F[ya],dimension:{},
hoverColor:T(Hb,Ib),useHover:jb,usePlotHover:d(da.showganttpanehoverband,m.showganttpanehoverband,a.showganttpanehorizontalhoverband,jb),isLast:db,nextCol:null,prevRow:null,nextRow:null},F[ya]&&(F[ya].nextCol=F[O]);F[O].first=F[ra];F[ra].last=F[O];F[ra].processCount=x;F[ra].countDefinedHeight=Pa;F[ra].totalHeight=Na;ua=F[ra].maxProcessHeight=Oa+8;isNaN(ea)&&(ea=wa+10);aa+=ea;ja.x=0;F[ra].dimension.w=ja.w=ea;ja.h=ua=W((D-F[ra].dimension.h)/x,ua)}db&&(aa=0);if(G)for(p.datacolumns=[],z=0;z<G;z+=1){V=
pa[z];wa=0;mb=oa(e(V.bgcolor,Q.bgcolor,f.getColor("dataTableBgColor")));nb=d(V.bgalpha,Q.bgalpha,100);Xa=e(V.font,Q.font,n.fontFamily);Za=oa(e(V.fontcolor,Q.fontcolor,n.color));Ya=d(V.fontsize,Q.fontsize,w);lb=d(V.isbold,Q.isbold,0);$a=d(V.isitalic,Q.isitalic,0);ab=d(V.isunderline,Q.isunderline,0);Ia=ba[R[e(V.align,Q.align,"center").toLowerCase()]];Ja=A[ka[e(V.valign,Q.valign,"middle").toLowerCase()]];S={color:oa(e(V.headerfontcolor,Q.headerfontcolor,Za)),fontFamily:e(V.headerfont,Q.headerfont,Xa),
fontSize:d(V.headerfontsize,Q.headerfontsize,Ya+3)+"px",fontWeight:d(V.headerisbold,Q.headerisbold,1)&&"bold"||"normal",fontStyle:d(V.headerisitalic,Q.headerisitalic,$a)&&"italic"||"normal",textDecoration:d(V.headerisunderline,Q.headerisunderline,ab)&&"underline"||"none"};La(S);fa=Ca(V.headertext);y.setStyle(S);qa=y.getOriSize(fa);wa=W(wa,qa.width);O=ra="_FCDtHeader_"+z;kb=F[O]={text:fa,style:S,align:ba[R[e(V.headeralign,Q.headeralign,Ia).toLowerCase()]],vAlign:A[ka[e(V.headervalign,Q.headervalign,
Ja).toLowerCase()]],link:e(V.headerlink),drawResizer:db||z<G-1,dimension:{x:0+aa,w:V.width,h:F.processHeader&&F.processHeader.dimension.h},isHeader:!0,key:O,bgColor:T(e(V.headerbgcolor,Q.headerbgcolor,f.getColor("dataTableBgColor")),d(V.headerbgalpha,Q.headerbgalpha,100))};kb.data=[];fc=V.text||[];qb=F.processHeader;Ka=F[cb];Ka.nextRow=F[O];F[O].prevRow=Ka;qb=qb.nextCol;Ka=Ka.nextCol;ja={};cb=ra;for(Y=0;qb;qb=qb.nextCol,Ka=Ka.nextCol,Y+=1)ya=O,O="_FCDt_"+z+"_"+Y,(sa=fc[Y])?(S={fontFamily:e(sa.font,
Xa),color:oa(e(sa.fontcolor,Za)),fontSize:d(sa.fontsize,Ya)+"px",fontWeight:d(sa.isbold,lb)&&"bold"||"normal",fontStyle:d(sa.isitalic,$a)&&"italic"||"normal",textDecoration:d(sa.isunderline,ab)&&"underline"||"none"},La(S),y.setStyle(S),fa=Ca(sa.label),qa=y.getOriSize(fa),wa=W(wa,qa.width),F[O]={text:fa,style:S,link:e(sa.link,""),bgColor:T(e(sa.bgcolor,mb),d(sa.bgalpha,nb)),align:ba[R[e(sa.align,Ia).toLowerCase()]],vAlign:A[ka[e(sa.valign,Ja).toLowerCase()]],prevCol:F[ya],dimension:ja,nextCol:null,
nextRow:null,prevRow:null}):F[O]={prevCol:F[ya],dimension:ja,isNaN:!0,nextCol:null,nextRow:null,prevRow:null},F[ya].nextCol=F[O],F[O].prevRow=Ka,Ka.nextRow=F[O],F[O].hoverColor=F[ha[Y]].hoverColor,F[O].useHover=F[ha[Y]].useHover,F[O].usePlotHover=F[ha[Y]].usePlotHover;F[O].first=F[ra];F[ra].last=F[O];isNaN(V.width)?kb.width=wa+10:kb.width=V.width;ja.x=0+aa;aa+=F[ra].dimension.w=ja.w=kb.width;ja.h=ua;p.datacolumns.push(kb)}db&&(da=F.processHeader,da.dimension.x=da.nextCol.dimension.x=aa,aa+=ea);bc||
(k.ganttStartX=Da(k.ganttStartX,aa));k.totalGridWidth=aa;Wb=b.trendlines||{};p.trendlines=[];for(z=0;z<Wb.length;z+=1)for(B=(Xb=Wb[z].line)&&Xb.length,Y=0;Y<B;Y+=1)ta=Xb[Y],Yb=d(ta.istrendzone,0),Ba=e(ta.color,f.getColor("legendBorderColor")),S=eb({},s.trendStyle),S.color=T(Ba),La(S),p.trendlines.push({start:r.getDateValue(ta.start).ms,end:r.getDateValue(ta.end).ms,displayValue:Ca(e(ta.displayvalue,ta.start)),color:T(Ba,d(ta.alpha,Yb?40:99)),style:S,isTrendZone:Yb,dashedStyle:d(ta.dashed,0)?Eb(d(ta.dashlen,
3),d(ta.dashgap,3),d(ta.thickness,1)):void 0,thickness:d(ta.thickness,1)});if(K){C=Infinity;l=-Infinity;d(a.taskbarroundradius,0);Wa=a.taskbarfillmix;Mb=a.taskbarfillratio;void 0===Wa&&(Wa="{light-10},{dark-20},{light-50},{light-85}");void 0===Mb&&(Mb="0,8,84,8");k.shadow=d(a.showshadow,1);Qa=d(a.showslackasfill,1);for(z=0;z<K;z+=1)J=$[z],Sb=u%x,la=r.getDateValue(J.start).ms,ma=r.getDateValue(J.end).ms,O=e(F[Ga(J.processid,"").toUpperCase()],F["__FCDPID__"+Sb],F[ha[Sb]]).id.toUpperCase(),yb=d(J.alpha,
H.alpha,100),Ba=e(J.color,H.color,f.getColor("plotFillColor")),Ob=d(J.borderalpha,H.borderalpha,100),Tb=e(J.bordercolor,H.bordercolor,f.getColor("plotBorderColor")),isNaN(la)&&(la=void 0),la>l&&(l=la),la<=C&&(C=la),isNaN(ma)&&(ma=void 0),ma>l&&(l=ma),ma<=C&&(C=ma),S={color:oa(e(J.fontcolor,H.fontcolor,n.color)),fontSize:d(J.fontsize,H.fontsize,w)+"px",fontFamily:e(J.font,H.font,n.fontFamily)},La(S),u+=1,ob=f.parseColorMix(Ba,Wa),Ub=f.parseAlphaList(yb.toString(),ob.length),zb=f.parseRatioList(Mb,
ob.length),Ab=d(J.angle,H.angle,270),Pb=f.parseColorMix(e(J.slackfillcolor,H.slackfillcolor,a.slackfillcolor,"FF5E5E"),Wa),pb=Da(d(J.percentcomplete,-1),100),fa=Ga(e(J.label,J.name),""),Db="",d(J.showlabel,J.showname,H.showlabels,H.showname,a.showtasklabels,a.showtasknames,0)&&(Db=fa),d(J.showpercentlabel,H.showpercentlabel,a.showpercentlabel,0)&&-1!==pb&&(Db+=" "+pb+"%"),tb={FCcolor:{color:ob.join(),alpha:Ub,ratio:zb,angle:Ab}},Pb=Qa?{FCcolor:{color:Pb.join(),alpha:Ub,ratio:zb,angle:Ab}}:Ma,cc={FCcolor:{color:f.parseColorMix(e(J.hoverfillcolor,
H.hoverfillcolor,a.taskhoverfillcolor,fb(Ba,80)),Wa).join(),alpha:f.parseAlphaList(e(J.hoverfillalpha,H.hoverfillalpha,a.taskhoverfillalpha,yb).toString(),ob.length),ratio:zb,angle:Ab}},dc=T(e(J.hoverbordercolor,H.hoverbordercolor,a.taskhoverbordercolor,fb(Tb,80)),e(J.hoverborderalpha,H.hoverborderalpha,a.taskhoverborderalpha,Ob)),ec=Qa?{FCcolor:{color:f.parseColorMix(fb(e(J.slackhoverfillcolor,H.slackhoverfillcolor,a.slackhoverfillcolor,a.slackfillcolor,"FF5E5E"),80),Wa).join(),alpha:f.parseAlphaList(e(J.slackhoverfillalpha,
H.slackhoverfillalpha,a.slackhoverfillalpha,yb).toString(),ob.length),ratio:zb,angle:Ab}}:Ma,Bb=r.getFormattedDate(la),Cb=r.getFormattedDate(ma),za=Zb(Ca(e(J.tooltext,J.hovertext,H.plottooltext,s.tooltext))),za=void 0!==za?E.parseTooltext(za,[3,28,29,30,31],{end:Cb,start:Bb,label:fa,percentComplete:-1!==pb?r.percentValue(pb):"",processName:F[O]&&F[O].text},J):(""!==fa?fa+(Ea?", ":""):"")+(Ea?Bb+" - "+Cb:""),Va=Ga(J.id,"").toUpperCase(),Fa[Ga(Va,z)]={dataObj:{processId:O,label:Db,labelAlign:ba[[e(J.labelalign,
a.tasklabelsalign,"center").toLowerCase()]],link:J.link,start:la,end:ma,id:Ga(J.id,"").toUpperCase(),showAsGroup:d(J.showasgroup,0),animation:d(J.animation,a.animation,a.defaultanimation,1),style:S,percentComplete:pb,color:Fb(tb),slackColor:Fb(Pb),hoverFillColor:Fb(cc),hoverBorderColor:dc,slackHoverColor:Fb(ec),showHoverEffect:d(J.showhovereffect,H.showhovereffect,a.showtaskhovereffect,a.showhovereffect,1),shadow:{opacity:W(yb,Ob)/100,inverted:!0},borderColor:T(Tb,Ob),borderThickness:d(J.showborder,
H.showborder,1)?d(J.borderthickness,H.borderthickness,1):0,height:e(J.height,"35%"),topPadding:e(J.toppadding,"35%"),showPercentLabel:d(J.showpercentlabel,H.showpercentlabel,a.showpercentlabel,0),startDate:d(J.showstartdate,H.showstartdate,a.showtaskstartdate)?Bb:void 0,endDate:d(J.showenddate,H.showenddate,a.showtaskenddate)?Cb:void 0,toolText:za,_start:J.start,_end:J.end,_formatSDate:Bb,_formatEDate:Cb,_label:fa}},v.push(Fa[Ga(Va,z)].dataObj);ib=W(ib,l);hb=Da(hb,C)}p.series.push({showInLegend:!1,
data:v});B=N&&N.length;for(z=0;z<B;z+=1)P=N[z],Va=Ga(P.taskid,"").toUpperCase(),Nb=e(P.shape,"polygon").toLowerCase(),Lb=d(P.numsides,5),Vb=0,"star"===Nb?Vb=.4:(Nb=$b(Lb),Nb=$b(Lb).split("-")[0]),Ba=e(P.color,f.getColor("legendBorderColor")),za=Zb(Ca(e(P.tooltext,P.hovertext,a.milestonetooltext))),void 0!==za&&Fa[Va]?(J=Fa[Va].dataObj,za=E.parseTooltext(za,[28,32,33,34,35,36],{date:r.getFormattedDate(P.date),taskStartDate:J._formatSDate,taskEndDate:J._formatEDate,taskLabel:J._label,taskPercentComplete:-1!==
J.percentComplete?r.percentValue(J.percentComplete):"",processName:F[J.processId]&&F[J.processId].text},P)):za=r.getFormattedDate(P.date),S={color:oa(e(P.fontcolor,a.milestonefontcolor,n.color)),fontSize:d(P.fontsize,a.milestonefontsize,w)+"px",fontFamily:e(P.font,a.milestonefont,n.fontFamily),fontWeight:d(P.fontbold,a.milestonefontbold,0)&&"bold"||"normal",fontStyle:d(P.fontitalic,a.milestonefontitalic,0)&&"italic"||"normal"},La(S),Z.push({numSides:Lb,startAngle:d(P.startangle,90),radius:P.radius,
origDate:P.date,date:r.getDateValue(P.date),fillColor:oa(Ba),fillAlpha:.01*d(P.fillalpha,P.alpha,100),borderColor:oa(e(P.bordercolor,Ba)),borderAlpha:.01*d(P.borderalpha,P.alpha,100),displayValue:Ca(P.label),style:S,hoverFillColor:oa(e(P.hoverfillcolor,a.milestonehoverfillcolor,fb(Ba,80))),hoverFillAlpha:.01*d(P.hoverfillalpha,a.milestonehoverfillalpha,P.fillalpha,P.alpha,100),hoverBorderColor:oa(e(P.hoverbordercolor,a.milestonehoverbordercolor,fb(e(P.bordercolor,Ba),80))),hoverBorderAlpha:.01*d(P.hoverborderalpha,
a.milestonehoverborderalpha,P.borderalpha,P.alpha,100),showHoverEffect:d(P.showhovereffect,a.showmilestonehovereffect,a.showhovereffect,1),depth:Vb,taskId:Va,borderThickness:d(P.borderthickness,1),link:P.link,toolText:za});for(z=0;z<L;z+=1)if(gb=(Ta=(xa=X[z])&&xa.connector)&&Ta.length)for(Y=0;Y<gb;Y+=1)na=Ta[Y],Ua=e(na.color,xa.color,f.getColor("plotBorderColor")),Qb=d(na.alpha,xa.alpha,100),wb=d(na.thickness,xa.thickness,1),rb=d(na.isdashed,xa.isdashed,1),M.push({fromTaskId:Ga(na.fromtaskid,"").toUpperCase(),
toTaskId:Ga(na.totaskid,"").toUpperCase(),fromTaskConnectStart:d(na.fromtaskconnectstart,0),toTaskConnectStart:d(na.totaskconnectstart,1),color:T(Ua),alpha:.01*Qb,link:na.link,showHoverEffect:d(na.showhovereffect,xa.showhovereffect,a.showconnectorhovereffect,a.showhovereffect,1),hoverColor:T(e(na.hovercolor,xa.hovercolor,a.connectorhovercolor,fb(Ua,80)),d(na.hoveralpha,xa.hoveralpha,a.connectorhoveralpha,Qb)),hoverThickness:d(na.hoverthickness,xa.hoverthickness,a.connectorhoverthickness,wb),thickness:wb,
dashedStyle:rb?Eb(d(na.dashlen,xa.dashlen,5),d(na.dashgap,xa.dashgap,wb),wb):void 0});p.legend.enabled=Boolean(d(a.showlegend,1));p.legend.interactiveLegend=!1;p.legend.itemStyle.cursor="default";p.legend.itemHoverStyle={cursor:"inherit"};B=Ha&&Ha.length;for(z=0;z<B;z+=1)vb=Ha[z],Sa(vb.label)&&""!==vb.label&&p.series.push({name:Ca(vb.label),showInLegend:!0,type:!1,color:hc(e(vb.color,f.getPlotColor()))});p.max=ib;p.min=hb;p.chart.hasScroll=!0;return p}},spaceManager:function(b,a,I,c){this.titleSpaceManager(b,
a,I,.3*c);var p=this.numberFormatter,k=b.chart,s=a.chart,y=b.dataTable,f=b.categories,g=b.scrollOptions={},v=y.__scrollOptions={},n=y.processHeader;c=c-k.marginTop-k.marginBottom;I=I-k.marginLeft-k.marginRight;var r=k.totalGridWidth,C=b.verticalScroll={enabled:d(s.useverticalscrolling,1)},l=d(s.ganttpaneduration,-1),t=e(s.ganttpanedurationunit,"s").toLowerCase(),D=p.getDateValue(s.scrolltodate).ms,m=n&&n.maxProcessHeight,h,x,p=0;if(n){h=n.processCount-n.countDefinedHeight;b.legend.enabled&&(c-=this.placeLegendBlockBottom(b,
a,I,c/2));c-=n.dimension.h;g.padding=d(s.scrollpadding,b.chart.plotBorderWidth/2);g.height=d(s.scrollheight,16);g.showButtons=!!d(s.scrollshowbuttons,1);g.buttonPadding=d(s.scrollbtnpadding,0);g.flatScrollBars=d(s.flatscrollbars,0);g.color=oa(e(s.scrollcolor,this.colorManager.getColor("altHGridColor")));a=g.height+g.padding;r>k.ganttStartX&&(v.enabled=!0,v.startPercent=Boolean(d(s.scrolltoend,0)));I-=k.ganttStartX;f.scroll={};g=new Date(f&&f.min);if(-1!==l){switch(t){case "y":g.setYear(g.getFullYear()+
l);break;case "m":g.setMonth(g.getMonth()+l);break;case "d":g.setDate(g.getDate()+l);break;case "h":g.setHours(g.getHours()+l);break;case "mn":g.setMinutes(g.getMinutes()+l);break;default:g.setSeconds(g.getSeconds()+l)}g=g.getTime();g>b.min&&g<b.max&&(b.visibleMax=g,f.scroll.enabled=!0)}if(v.enabled||f.scroll.enabled)c-=a;v=c-n.totalHeight;g=v/(h?h:n.processCount);!d(s.forcerowheight,0)&&!h&&n.totalHeight<c&&(g=c/n.processCount,v=c,x=!0);m>g&&(m=3>m-g?g:v/va(v/m));n.maxProcessHeight=m;C.enabled&&
g<m&&h||0>g?(v=m,C.startPercent=Boolean(d(s.scrolltoend,0)),I-=a):(C.enabled=!1,v=g);f.scroll.startPercent=d(s.scrolltoend,0);if(Infinity===b.min||-Infinity===b.max||b.min===b.max)b.min=f.min=0,b.max=f.max=1;if(Infinity===f.min||-Infinity===f.max)f.min=b.min,f.max=b.max;f.axis=new Na(b,I);f.startX=f.axis.getPixel(Da(f.min,b.min));f.endX=f.axis.getPixel(W(f.max,b.max));f.visibleW=I;D&&D>f.min&&D<f.max&&(f.scroll.startPercent=Da((f.axis.getPixel(D)-f.startX)/(f.endX-f.startX-f.visibleW),1));for(n=n.nextCol;n;){p+=
n.dimension.h=x?v:n.processHeight||v;if(b=n.nextRow)for(;b;)b.dimension.h=n.dimension.h,b=b.nextRow;n=n.nextCol}y.processHeader.totalPH=p;k.processHeight=c+y.processHeader.dimension.h}}},rb.gaugebase);Pa("renderer.gantt",{drawProcess:function(b){var a=this,d=a.options,c=d.chart,p=a.paper,k=a.logic,s=k.smartLabel,y=a.canvasTop,f=a.canvasLeft,g=a.layers,v=g.gridLayer,n=g.gridHeaderLayer,r=c.gridBorderThickness,C=.5*r,l=c.gridBorderColor,t=c.gridBorderDashStyle,D=0,m=0,h=[],x=y,w=b.dimension.w||16,Q=
b.dimension.x||0,pa=d.dataTable.processHeader,G=pa.nextCol.dimension.h,X=pa.totalPH,k=T(e(k.dataObj.chart.rolloverbandcolor,"#FF0000"),e(k.dataObj.chart.rolloverbandalpha,30)),L=pa.items||(pa.items={}),d=d.categories||{},M,N,B,Z,H,$,K,u,q,E,aa;L.hoverEle||(L.hoverEle=p.rect(d.startX,0,d.endX,G,0,g.dataset).attr({fill:k,visibility:"hidden","stroke-width":0}));q=function(b){U.call(this,a,b,"ProcessClick")};E=function(b){ha=clearTimeout(ha);if(!ca||ca.removed)ca=null;ca&&a.gridOutHandler.call(ca);a.gridHoverHandler.call(this);
U.call(this,a,b,"ProcessRollOver")};for(aa=function(b){ca=this;ha=clearTimeout(ha);ha=setTimeout(function(){a.gridOutHandler.call(ca)},500);U.call(ca,a,b,"ProcessRollOut")};b;)u=b.dimension,K=f+Q,B=b.text,B=b.align,L=b.items||(b.items={}),G=b.link,N=b.isHeader?n:v,Z=L.background,d=Ha(x+m)-.5,B={x:Ha(K+D)-.5,y:d,width:w+.5,height:u.h+C+.5,radius:0,fill:b.bgColor||Ma,"stroke-dasharray":t,stroke:l,cursor:G?"pointer":"","stroke-width":0},Z?Z.attr(B):(L.background=p.rect(N).attr(B).hover(E,aa),M={isHeader:b.isHeader,
label:b.text,vAlign:b.vAlign,align:b.align,link:b.link,id:b.id},L.background.click(q).data("dataObj",b).data("eventArgs",M).data("data",{y:d,gridObj:b,rollOverColor:k,useHover:!0,useNext:!0,height:u.h+C+.5,hoverEle:pa.items.hoverEle})),b.isNaN||(u=b.dimension,B=b.text,B=b.align,Z=L.label,B=b.text,Sa(B)&&""!==B&&($=b.style,s.setStyle($),H=s.getSmartText(B,w-8,W(Ra($.lineHeight,10),u.h)),$.title=H.oriText,B=b.align,B={text:H.text,x:K+w*gb[B]+Ua[B],y:x+u.h-u.h*tb[b.vAlign],"text-anchor":Ta[B],cursor:G?
"pointer":"","vertical-align":b.vAlign},Z?Z.attr(B):L.label=p.text(N).attr(B).css($).hover(E,aa).click(q).data("eventArgs",M).data("dataObj",b).data("data",{y:d,gridObj:b,rollOverColor:k,useHover:!0,height:u.h+C+.5,useNext:!0,hoverEle:pa.items.hoverEle}))),b.xPos=K,b.yPos=Ha(x+u.h)-r%2*.5,h.push("M",K,b.yPos,"h",w),(Z=L.hBorder)?Z.attr("path",h):L.hBorder=p.path(h,N).attr({"stroke-dasharray":t,stroke:l,"stroke-width":r}),x+=u.h,b.nextCol||(D=C,m-=0,Z=b.first.items.vBorder,B=["M",Ha(K+w)-r%2*.5,y,
"v",X],Z?Z.attr("path",B):b.first.items.vBorder=p.path(B,n).attr({"stroke-dasharray":t,stroke:l,"stroke-width":r}),b.nextRow&&!b.isLast&&(b.first.items.dragEle||(b.first.items.dragEle=p.path(B,g.gridTracker).attr({stroke:c.gridResizeBarColor,"stroke-width":c.gridResizeBarThickness,visibility:"hidden"})),b.first.items.tracker||(b.first.items.tracker=p.path(B,g.gridTracker).attr({stroke:Ma,ishot:!0,"stroke-width":30}).css("cursor",ka.svg&&"ew-resize"||"e-resize").drag(this.dragMove,this.dragStart,this.dragUp).data("drag-options",
{grid:b.first,xPos:Ha(K+w)-r%2*.5,chart:a})))),b=b.nextCol},dragStart:function(){var b=this.data("drag-options"),a=b.grid,I=a.items,c=a.nextRow,e={style:{lineHeight:16}},k=a.nextCol.style||e,s=c&&c.nextCol&&c.nextCol.style||e,y=b.chart,f=y.canvasLeft,g=a.dimension,k=W(Ra(a.style.lineHeight,10),Ra(k.lineHeight,10))+2,e=W(Ra((c||e).style.lineHeight,10),Ra(s.lineHeight,10))+2;b.leftSideLimit=f+d(a.dimension.x,0)+k;b.rightSideLimit=f+d(c&&c.dimension.x+c.dimension.w,g.x+g.w)-e;b.origX=b.lastX||(b.lastX=
0);I.dragEle.show();y.trackerClicked=!0;b.draged=!1},dragMove:function(b){var a=this.data("drag-options"),d=a.grid.items,c=a.xPos+b,e=a.leftSideLimit,k=a.rightSideLimit;c<e&&(b=e-a.xPos);c>k&&(b=k-a.xPos);c={transform:"t"+(a.origX+b)+ic+0};this.attr(c);d.dragEle.attr(c);a.draged=!0;a.lastX=b},dragUp:function(){var b=this.data("drag-options"),a=b.chart,d=b.grid,c=d.nextRow,e=a.canvasLeft,k=d.dimension,s=c&&c.dimension,y=d.items,f={hcJSON:{dataTable:{}}};a.trackerClicked=!1;y.dragEle.hide();b.draged&&
(k.w=b.xPos+b.lastX-e-k.x,d.nextCol&&(d.nextCol.dimension.w=k.w),f.hcJSON.dataTable[d.key]={dimension:k},c&&(s.w+=s.x-k.x-k.w,s.x=k.x+k.w,c.dimension.w=s.w,c.dimension.x=s.x,a.drawProcess(c),f.hcJSON.dataTable[c.key]={dimension:s}),a.drawProcess(d),eb(a.logic.chartInstance.jsVars._reflowData,f,!0),b.xPos+=b.lastX,b.lastX+=b.origX)},drawCategories:function(){var b=this,a=b.options,e=a.chart,c=b.paper,p=b.layers,k=b.logic.smartLabel,s=b.canvasTop,y=a.categories,f=a.dataTable.processHeader,g=y.FCCAT_0_0,
v=y.axis,n=y.endX,r=y.startX,C=n-r,l=e.ganttLineThickness,t=f.totalPH+f.dimension.h,D=[],m=[],h=p.dataset,p=p.ganttHeaderLayer,x,w,Q,E,G,X,L,M,N,B,Z,H,$,K,u;$=function(a){U.call(this,b,a,"CategoryClick")};K=function(a){ha=clearTimeout(ha);if(!ca||ca.removed)ca=null;ca&&b.gridOutHandler.call(ca);b.gridHoverHandler.call(this);U.call(this,b,a,"CategoryRollOver")};u=function(a){ca=this;ha=clearTimeout(ha);ha=setTimeout(function(){b.gridOutHandler.call(ca)},500);U.call(ca,b,a,"CategoryRollOut")};E=y.items||
(y.items={});f=a.dataTable.processHeader;for(E.hoverEle=c.rect(0,s+f.dimension.h,50,f.totalPH,0,h).attr({fill:Ma,visibility:"hidden","stroke-width":0});g;)w=C/g.dimension.numCat,G=r+w*(g.index+1),N=G-w,M=g.dimension.h,B=N,H=s+g.dimension.y,X=g.align,L=g.vAlign,Q=g.link,E=g.items||(g.items={}),w=!(!g.nextRow&&g.nextCol),Z=a.verticalScroll.enabled&&w?a.scrollOptions.height:0,x={align:g.align,vAlign:g.vAlign,link:g.link,text:g.text},N=B=d(v.getPixel(g.start),N),G=d(v.getPixel(!w&&g.nextCol.start||(w?
W(g.end||0,a.max):void 0)),G),w=G-N,B=va(B)+.5,H=va(H)+.5,g.isLast&&(D.push("M",B,H,"v",t-g.dimension.y),H-=.5*l,M-=l,e.extendCategoryBg&&c.rect(B,H,w,t,0,h).attr({fill:g.bgColor,"stroke-width":0,stroke:e.ganttLineColor}).toBack()),E.background=c.rect(B,H,w+Z,M,0,p).attr({fill:g.bgColor,"stroke-width":0,cursor:Q?"pointer":"",stroke:e.ganttLineColor}).click($).data("eventArgs",x).data("dataObj",g).hover(K,u).data("data",{x:B,width:w,gridObj:g,hoverEle:y.items.hoverEle}),m.push("M",B,H,"v",M),g.nextRow&&
m.push("M",r,H+M,"H",n+Z),k.setStyle(g.style),G=k.getSmartText(g.text,w-5,M),g.style.title=G.oriText,E.label=c.text(p).attr({text:G.text,x:B+w*gb[X]+Ua[X],y:H+M-M*tb[L],"text-anchor":Ta[X],cursor:Q?"pointer":"","vertical-align":L}).css(g.style).hover(K,u).click($).data("eventArgs",x).data("dataObj",g).data("data",{x:B,width:w,gridObj:g,hoverEle:y.items.hoverEle}),g=g.nextCol;for(;f;)D.push("M",y.startX,f.yPos,"H",n),f=f.nextCol;E=y.items||(y.items={});E.headerGrid=c.path(m,p).attr({"stroke-dasharray":e.ganttLineDashStyle,
"stroke-width":l,stroke:e.ganttLineColor});E.processGrid=c.path(D,h).attr({"stroke-dasharray":e.ganttLineDashStyle,"stroke-width":e.ganttLineThickness,stroke:e.ganttLineColor})},drawScroller:function(){var b=this,a=b.options,e=b.paper,c=b.layers,p=b.canvasTop,k=b.canvasHeight,s=a.scrollOptions,y=a.categories,f=y.startX,g=y.endX-f,v=s.flatScrollBars,n={hcJSON:{categories:{scroll:{}}}},r=c.dataset,C=c.datalabels,l=c.ganttTracker,t=c.ganttHeaderLayer,D=b.logic.chartInstance&&b.logic.chartInstance.jsVars._reflowData||
{},m=a.chart,h=c.gridLayer,x=(f=a.dataTable)&&f.processHeader,w=b.canvasLeft,Q=b.canvasWidth,E=m.gridBorderThickness,G=m.totalGridWidth,X=Da(m.ganttStartX,G)+E,L=y.scroll,M=f&&f.__scrollOptions,N=a.verticalScroll,B={hcJSON:{dataTable:{__scrollOptions:{}},verticalScroll:{}}},Z=B.hcJSON.dataTable.__scrollOptions,H=x.totalPH,$=c.gridHeaderLayer,K=c.gridTracker,u,q,f=d(y.startX,m.ganttStartX),c=c.scroll=c.scroll||e.group("scroll").insertAfter(l);L.enabled&&(a=y.visibleW/g,L.scroller=e.scroller(f,p+k-
s.height,y.visibleW,s.height,!0,{showButtons:s.showButtons,displayStyleFlat:v,buttonWidth:s.buttonWidth,scrollRatio:a,scrollPosition:L.startPercent},c).attr({"scroll-display-style":v,fill:s.color}).scroll(function(a){q=-va(a*(g-y.visibleW));r&&r.transform(["T",q,r.data("vOffset")]);C&&C.transform(["T",q,C.data("vOffset")]);l&&l.transform(["T",q,l.data("vOffset")]);t&&t.transform(["T",q,0]);r&&r.data("hOffset",q);C&&C.data("hOffset",q);l&&l.data("hOffset",q);n.hcJSON.categories.scroll.startPercent=
a;eb(D,n,!0)}),function(){var a;ka.eve.on("raphael.scroll.start."+L.scroller.id,function(c){a=c;ea.raiseEvent("scrollstart",{scrollPosition:c},b.logic.chartInstance)});ka.eve.on("raphael.scroll.end."+L.scroller.id,function(c){ea.raiseEvent("scrollend",{prevScrollPosition:a,scrollPosition:c},b.logic.chartInstance)})}(),L.startPercent&&(q=-va(L.startPercent*(g-y.visibleW)),r&&r.data("hOffset",q),C&&C.data("hOffset",q),l&&l.data("hOffset",q),t&&t.transform(["T",q,0]),r&&r.transform(["T",q,r.data("vOffset")]),
C&&C.transform(["T",q,r.data("vOffset")]),l&&l.transform(["T",q,r.data("vOffset")])));M.enabled&&(M.scroller=e.scroller(w,p+k-s.height,X,s.height,!0,{showButtons:s.showButtons,displayStyleFlat:v,buttonWidth:s.buttonWidth,scrollRatio:X/G,scrollPosition:M.startPercent},c).attr({"scroll-display-style":v,fill:s.color}).scroll(function(a){q=-va(a*(G-X));h&&h.transform(["T",q,h.data("vOffset")]);$&&$.transform(["T",q,0]);K&&K.transform(["T",q,K.data("vOffset")]);h.data("hOffset",q);$.data("hOffset",q);
K.data("hOffset",q);Z.startPercent=a;eb(D,B,!0)}),function(){var a;ka.eve.on("raphael.scroll.start."+M.scroller.id,function(c){a=c;ea.raiseEvent("scrollstart",{scrollPosition:c},b.logic.chartInstance)});ka.eve.on("raphael.scroll.end."+M.scroller.id,function(c){ea.raiseEvent("scrollend",{prevScrollPosition:a,scrollPosition:c},b.logic.chartInstance)})}(),M.startPercent&&(q=-va(M.startPercent*(G-X)),h&&h.transform(["T",q,0]),K&&K.transform(["T",q,0]),$&&$.transform(["T",q,0]),h.data("hOffset",q),K.data("hOffset",
q)));N.enabled&&(u=m.processHeight-x.dimension.h,N.scroller=e.scroller(w+Q-s.height,p+x.dimension.h,s.height,m.processHeight-x.dimension.h,!1,{showButtons:s.showButtons,displayStyleFlat:v,buttonWidth:s.buttonWidth,scrollRatio:u/H,scrollPosition:N.startPercent},c).attr({"scroll-display-style":v,fill:s.color}).scroll(function(a){q=-va(a*(H-u));h&&h.transform(["T",h.data("hOffset"),q]);r&&r.transform(["T",r.data("hOffset"),q]);C&&C.transform(["T",C.data("hOffset"),q]);l&&l.transform(["T",l.data("hOffset"),
q]);K&&K.transform(["T",K.data("hOffset"),q]);h.data("vOffset",q);K.data("vOffset",q);r.data("vOffset",q);l.data("vOffset",q);C.data("vOffset",q);B.hcJSON.verticalScroll.startPercent=a;eb(D,B,!0)}),function(){var a;ka.eve.on("raphael.scroll.start."+N.scroller.id,function(c){a=c;ea.raiseEvent("scrollstart",{scrollPosition:c},b.logic.chartInstance)});ka.eve.on("raphael.scroll.end."+N.scroller.id,function(c){ea.raiseEvent("scrollend",{prevScrollPosition:a,scrollPosition:c},b.logic.chartInstance)})}(),
N.startPercent&&(q=-va(N.startPercent*(H-u)),h&&h.transform(["T",h.data("hOffset"),q]),r&&r.transform(["T",r.data("hOffset"),q]),C&&C.transform(["T",C.data("hOffset"),q]),l&&l.transform(["T",l.data("hOffset"),q]),K&&K.transform(["T",K.data("hOffset"),q]),h.data("vOffset",q),K.data("vOffset",q),r.data("vOffset",q),C.data("vOffset",q),l.data("vOffset",q)))},finalizeScrollPlots:function(){var b=this,a=b.options,d=b.canvasTop,c=a.categories,e=c.endX,k=c.startX,s=c.scroll,y=a.chart,f=a.dataTable,g=f&&
f.processHeader,v=b.canvasLeft,n=y.gridBorderThickness,r=y.totalGridWidth,C=Da(y.ganttStartX,r)+n,l,t,D,m,h,x=e-k-c.visibleW,e=b.container,w=f&&f.__scrollOptions,Q=a.verticalScroll,U=g.totalPH,G=y.processHeight-g.dimension.h,X,L,M,N,B,s=c.scroll,a=function(a){var e=b.elements.canvas,f=N.left,n=N.top,p=a.type,q=sb&&E.getTouchEvent(a)||kc,f=a.layerX||q.layerX||(a.pageX||q.pageX)-f;a=a.layerY||q.layerY||(a.pageY||q.pageY)-n;switch(p){case "dragstart":B=e.isPointInside(f,a);X=f>k&&f<k+c.visibleW;M=f>
v&&f<k+c.visibleW&&a>d+g.dimension.h;L=f<k;l=B&&f||null;t=B&&a||null;break;case "dragend":B=!1;h=m=D=t=l=void 0;break;default:if(!B||b.trackerClicked)break;e=f-l;p=a-t;l=f;t=a;X&&s&&s.scroller&&(D=s.scroller.attrs["scroll-position"]-e/x,s.scroller.attr({"scroll-position":D}));M&&Q&&Q.scroller&&(m=Q.scroller.attrs["scroll-position"]-p/(U-G),Q.scroller.attr({"scroll-position":m}));L&&w&&w.scroller&&(h=w.scroller.attrs["scroll-position"]-e/(r-C),w.scroller.attr({"scroll-position":h}))}};sb&&(N=E.getPosition(e),
e&&(mc(e,"dragstart drag dragend",a),lc(e,"dragstart drag dragend",a)))},gridHoverHandler:function(){var b=this.data("data"),a=b.gridObj,d=!!a.prevRow,c={};if(!a.isHeader)if(b.x&&(c.x=b.x),b.y&&(c.y=b.y),b.width&&(c.width=b.width),b.height&&(c.height=b.height),a.hoverColor&&(c.fill=a.hoverColor),a.usePlotHover&&b.hoverEle.attr(c).show(),b.useNext&&a.useHover){for(;a&&d;)a=a.prevRow,d=!!a.prevRow;for(;a;)a.items.background.attr("fill",a.hoverColor),a=a.nextRow}else a.useHover&&a.items.background.attr("fill",
a.hoverColor)},gridOutHandler:function(){var b=this.data("data"),a=b.gridObj,d=!!a.prevRow;if(!a.isHeader)if(a.usePlotHover&&b.hoverEle.hide(),b.useNext&&a.useHover){for(;a&&d;)a=a.prevRow,d=!!a.prevRow;for(;a;)a.items.background.attr("fill",a.bgColor||Ma),a=a.nextRow}else a.useHover&&a.items.background.attr("fill",a.bgColor)},drawAxes:function(){if(this.options.dataTable){Pa["renderer.cartesian"].drawAxes.call(this,arguments);var b=this.options,a=b.chart,e=this.paper,c=this.layers,p=c.layerBelowDataset,
k=c.layerAboveDataset,s=c.gridLayer,y=c.dataset,f=b.dataTable,g=b.categories,f=f&&f.processHeader,v=this.canvasTop,y=this.canvasLeft,s=a.gridBorderThickness,n=Da(a.ganttStartX,a.totalGridWidth)+s,r=f.dimension,C=r.h,r=a.processHeight-r.h,l=d(g.startX,a.ganttStartX),g=g.visibleW,a=.5*a.ganttLineThickness,s=.5*s,s=c.gridLayer=c.gridLayer||e.group("grid",p).attr({"clip-rect":[y,v+C+s,n,r-s]});c.gridHeaderLayer=c.gridHeaderLayer||e.group("grid-header",p).attr({"clip-rect":[y,v,n,C+r]});p=c.gridTracker=
c.gridTracker||e.group("grid-tracker",p).attr({"clip-rect":[y,v,n,C+r]});s.data("vOffset",0);s.data("hOffset",0);p.data("vOffset",0);p.data("hOffset",0);c.ganttHeaderLayer=c.ganttHeaderLayer||e.group("gantt",k).attr({"clip-rect":[l,v,g+(b.verticalScroll.enabled?b.scrollOptions.height:0),this.chartHeight]});y=c.dataset.attr({"clip-rect":[l,v+C-a,g,r+a]});b=c.datalabels.attr({"clip-rect":[l,v+C-a-10,g,r+a+10]});e=c.ganttTracker=e.group("gantt-hot",c.tracker).attr({"clip-rect":[l,v+C-a,g,r+a]});y.data("vOffset",
0);y.data("hOffset",0);b.data("vOffset",0);b.data("hOffset",0);e.data("vOffset",0);for(e.data("hOffset",0);f;)this.drawProcess(f),f=f.nextRow;this.drawCategories()}},drawPlotGantt:function(b){var a=this,I=a.options,c=I.chart,p=a.paper,k=a.layers,s=b.data,y=b.items,f=s.length,g=k.dataset,v=k.datalabels,n=I.dataTable,r=n.processHeader,C=I.categories,l=C.axis,t=a.canvasTop,D=c.taskBarRoundRadius,f=I.plotOptions.series,m=isNaN(+f.animation)&&f.animation.duration||1E3*f.animation,h=I.tasksMap||(I.tasksMap=
{}),x=I.milestone,w=I.trendlines,E=r.dimension.h,ca=c.taskDatePadding,G,X,L,M,N,B,Z,H,$,K,u,q,T,aa,ea,W,ha,A,R,ba,F;b.graphics=[];ea=g.shadows||(g.shadows=p.group("shadows",g));f=w&&w.length;for(b=0;b<f;b+=1)u=w[b],u.end||(u.end=u.start),u.end&&(R=l.getPixel(u.start),W=l.getPixel(u.end),ba=u.thickness,I=u.items||(u.items={}),G=void 0,u.isTrendZone?(K=["M",R+.5*(W-R),t+E,"v",t+r.totalPH],ba=W-R):(K=["M",R,t+E,"L",W,t+E+r.totalPH],G=u.dashedStyle),I.trendLine=p.path(K,g).attr({stroke:u.color,"stroke-width":ba,
"stroke-dasharray":G}),Sa(u.displayValue)&&""!==u.displayValue&&(I.label=p.text(k.ganttHeaderLayer).attr({text:u.displayValue,x:K[1],y:0}).css(u.style),G=I.label._getBBox().height,u=t+c.processHeight+(!C.scroll.enabled||c.marginBottom<G?.5*G:-(.5*G)-5),I.label.attr("y",u)));v.hide();k=function(){v.show()};w=r=function(b){U.call(this,a,b)};C=function(b){U.call(this,a,b,"DataPlotRollOver")};t=function(b){U.call(this,a,b,"DataPlotRollOut")};E=function(b){b&&b.click(function(b){U.call(this,a,b)}).hover(function(b){var c=
this.data("dataObj");U.call(this,a,b,"DataPlotRollOver");c.showHoverEffect&&a.taskHoverHandler.call(this,a)},function(b){var c=this.data("dataObj");U.call(this,a,b,"DataPlotRollOut");c.showHoverEffect&&a.taskHoverOutHandler.call(this,a)}).data("dataObj",A).data("eventArgs",X)};f=s.length;for(b=0;b<f;b+=1)A=s[b],I=A.processId,u=n[I],W=ha=A.color,I=A.items||(A.items={}),K=A.animation?m||1E3:0,u&&(F=A.borderThickness,R=va(l.getPixel(A.start)),ba=ac(M=l.getPixel(A.end)-R),R&&ba&&(L=u.dimension.h,u=u.yPos-
L,G=L*(/%/g.test(A.height)&&.01*Gb(A.height,10))||d(A.height,L),q=L*(/%/g.test(A.topPadding)&&.01*Gb(A.topPadding,10))||d(A.topPadding,L),u+=Da(q,L-G),aa=.5*G,T=A.toolText,q=A.link,(L=y[b])||(L=y[b]={index:b,dataLabel:null,start:A.start,end:A.end,startLabel:null,endLabel:null,tracker:null}),A.index=b,N=e(A.id,b),""!==N&&h[N]&&(h[N].items=L,h[N].x=R,h[N].y=u,h[N].h=G,h[N].w=ba),M=N=B=Z=H=$=null,A.showAsGroup?(K?(M=p.path(["M",R,u],g),M.animate({path:["M",R,u,"v",G,"L",R+aa,u+aa,"H",R+ba-aa,"L",R+ba,
u+G,"v",-G,"H",R]},K,"normal",k)):(M=p.path(["M",R,u,"v",G,"L",R+aa,u+aa,"H",R+ba-aa,"L",R+ba,u+G,"v",-G,"H",R],g),k&&k()),M.attr({fill:W,stroke:A.borderColor,cursor:q?"pointer":"",ishot:!0,"stroke-width":A.borderThickness}).tooltip(T).shadow(c.shadow&&A.shadow,ea)):(-1!==A.percentComplete&&(M=ba*A.percentComplete*.01,W=Ma,N=I.taskFill=p.rect(R,u,0,G,0,g).attr({fill:ha,cursor:q?"pointer":"",ishot:!0,"stroke-width":0,width:K?0:M||1}).tooltip(T),K&&N.animate({width:M||1},K,"normal"),B=p.rect(R,u,0,
G,0,g).attr({fill:A.slackColor,cursor:q?"pointer":"",ishot:!0,"stroke-width":0,x:K?R:R+M||1,width:K?0:ba-M||1}).tooltip(T),K&&B.animate({x:R+M||1,width:ba-M||1},K,"normal")),I=ka.crispBound(R,u,ba,G,F),M=p.rect(I.x,I.y,0,I.height,D,g).attr({fill:W,stroke:A.borderColor,cursor:q?"pointer":"",ishot:!0,"stroke-width":A.borderThickness,width:K?0:I.width||1}).tooltip(T).shadow(c.shadow&&A.shadow,ea),K?M.animate({width:I.width||1},K,"normal",k):k&&k()),Sa(A.label)&&""!==A.label&&(I=A.labelAlign,Z=p.text().attr({text:A.label,
x:R+ba*gb[I]+Ua[I],"text-anchor":Ta[I],cursor:q?"pointer":"",ishot:!0,y:u-.5*Ra(A.style.lineHeight,10)-c.taskLabelPadding}).css(A.style),v.appendChild(Z)),Sa(A.startDate)&&""!==A.startDate&&(H=p.text().attr({text:A.startDate,x:R-2-ca,y:u+.5*G,cursor:q?"pointer":"",ishot:!0,"text-anchor":"end"}).css(A.style),v.appendChild(H)),Sa(A.endDate)&&""!==A.endDate&&($=p.text().attr({text:A.endDate,x:R+ba+2+ca,y:u+.5*G,cursor:q?"pointer":"",ishot:!0,"text-anchor":"start"}).css(A.style),v.appendChild($)),L.graphic=
M,L.percentCompleteGraphic=N,L.slackGraphic=B,L.dataLabel=Z,L.startLabel=H,L.endLabel=$,X={processId:A.processId,taskId:A.id,start:A._start,end:A._end,showAsGroup:A.showAsGroup,link:A.link,sourceType:"task",percentComplete:-1!==A.percentComplete&&A.percentComplete},N&&N.click(r).hover(C,t).data("eventArgs",X),B&&B.click(w).data("eventArgs",X),Qa([M,Z,H,$],E)));y=function(b){U.call(this,a,b,"MilestoneClick")};n=function(b){var c=this.data("dataObj");U.call(this,a,b,"MilestoneRollOver");c.showHoverEffect&&
c.items.graphic.attr({fill:c.hoverFillColor,stroke:c.hoverBorderColor,"fill-opacity":c.hoverFillAlpha,"stroke-opacity":c.hoverBorderAlpha})};D=function(b){var c=this.data("dataObj");U.call(this,a,b,"MilestoneRollOut");c.showHoverEffect&&c.items.graphic.attr({fill:c.fillColor,stroke:c.borderColor,"fill-opacity":c.fillAlpha,"stroke-opacity":c.borderAlpha})};this.drawConnectors();I=null;f=x&&x.length;for(b=0;b<f;b+=1)c=x[b],u=h[c.taskId],I=c.items||(c.items={}),u&&(s=ka.animation({"fill-opacity":c.fillAlpha,
"stroke-opacity":c.borderAlpha},m,"normal"),X={sides:c.sides,date:c.origDate,radius:c.radius,taskId:c.taskId,toolText:c.toolText,link:c.link,numSides:c.numSides},I.graphic=p.polypath(c.numSides,l.getPixel(c.date.ms),u.y+.5*u.h,d(c.radius,.6*u.h),c.startAngle,c.depth,g).attr({fill:c.fillColor,"fill-opacity":m?0:c.fillAlpha,stroke:c.borderColor,"stroke-opacity":m?0:c.borderAlpha,groupId:"gId"+b,ishot:!0,cursor:c.link?"pointer":"","stroke-width":c.borderThickness}).tooltip(c.toolText).click(y).data("eventArgs",
X).data("dataObj",c),I.label=p.text().attr({text:c.displayValue,x:l.getPixel(c.date.ms),y:u.y+.5*u.h,groupId:"gId"+b,cursor:c.link?"pointer":"",ishot:!0,"text-anchor":"middle"}).css(c.style).tooltip(c.toolText).click(y).data("eventArgs",X).data("dataObj",c),v.appendChild(I.label),m&&I.graphic.animate(s.delay(m)),I.graphic.hover(n,D),I.label.hover(n,D))},taskHoverOutHandler:function(b){var a=b.options.tasksMap;b=this.data("dataObj");var a=a[e(b.id,b.index)].items,d={fill:b.color,stroke:b.borderColor,
"stroke-width":b.borderThickness,"stroke-dasharray":b.dashedStyle};-1===b.percentComplete||b.showAsGroup||(a.slackGraphic.attr({fill:b.slackColor}),a.percentCompleteGraphic.attr({fill:b.color}),delete d.fill);a.graphic.attr(d)},taskHoverHandler:function(b){var a=b.options.tasksMap;b=this.data("dataObj");var a=a[e(b.id,b.index)].items,d={fill:b.hoverFillColor,stroke:b.hoverBorderColor};-1===b.percentComplete||b.showAsGroup||(a.slackGraphic.attr({fill:b.slackHoverColor}),a.percentCompleteGraphic.attr({fill:b.hoverFillColor}),
delete d.fill);a.graphic.attr(d)},drawConnectors:function(){var b=this,a=b.paper,d=b.options,c=d.chart.connectorExtension,e=d.connectors,k=d.tasksMap,s=e.length,y=b.layers.dataset,f=[],d=d.plotOptions.series,d=isNaN(+d.animation)&&d.animation.duration||1E3*d.animation,g,v,n,r,C,l,t,D,m,h,x,w,E,T,G;E=function(a){U.call(this,b,a,"ConnectorClick")};T=function(a){var c=this.data("dataObj"),d=k[c.fromTaskId],e=k[c.toTaskId],f={stroke:c.hoverColor,"stroke-dasharray":c.dashedStyle,"stroke-width":c.hoverThickness};
U.call(this,b,a,"ConnectorRollOver");c.showHoverEffect&&(Qa([d,e],function(a){var b={fill:a.dataObj.hoverFillColor,stroke:a.dataObj.hoverBorderColor};-1===a.dataObj.percentComplete||a.dataObj.showAsGroup||(a.items.slackGraphic.attr({fill:a.dataObj.slackHoverColor}),a.items.percentCompleteGraphic.attr({fill:a.dataObj.hoverFillColor,stroke:a.dataObj.hoverBorderColor}),delete b.fill);a.items.graphic.attr(b)}),c.items.connector.attr(f))};G=function(a){var c=this.data("dataObj"),d=k[c.fromTaskId],e=k[c.toTaskId],
f={stroke:c.color,"stroke-width":c.thickness,"stroke-dasharray":c.dashedStyle};U.call(this,b,a,"ConnectorRollOut");c.showHoverEffect&&(Qa([d,e],function(a){var b={fill:a.dataObj.color,stroke:a.dataObj.borderColor,"stroke-width":a.dataObj.borderThickness,"stroke-dasharray":a.dataObj.dashedStyle};-1===a.dataObj.percentComplete||a.dataObj.showAsGroup||(a.items.slackGraphic.attr({fill:a.dataObj.slackColor}),a.items.percentCompleteGraphic.attr({fill:a.dataObj.color}),delete b.fill);a.items.graphic.attr(b)}),
c.items.connector.attr(f))};for(g=0;g<=s;g+=1)if(n=e[g]||{},l=n.fromTaskId,r=n.toTaskId,v=k[l],m=k[r],r=n.items||(n.items={}),v&&m){h=v.y+.5*v.h;x=m.y+.5*m.h;C=h==x;l=v.x;t=v.x+v.w;D=m.x;m=m.x+m.w;w=w=0;0===n.fromTaskConnectStart&&1===n.toTaskConnectStart&&(w=1);0===n.fromTaskConnectStart&&0===n.toTaskConnectStart&&(w=2);1===n.fromTaskConnectStart&&1===n.toTaskConnectStart&&(w=3);1===n.fromTaskConnectStart&&0===n.toTaskConnectStart&&(w=4);if(C)switch(v=v.height,w){case 1:w=(D-t)/10;f=["M",t,h,t+w,
h,"L",t+w,h,t+w,h-v,"L",t+w,h-v,D-w,h-v,"L",D-w,h-v,D-w,h,"L",D-w,h,D,x,"L",m+c,x,m,x];break;case 2:f=["M",t,h,t+c,h,"L",t+c,h,t+c,h-v,"L",t+c,h-v,m+c,h-v,"L",m+c,x-v,m+c,x];break;case 3:f=["M",l,h,l-c,h,"L",l-c,h,l-c,h-v,"L",l-c,h-v,D-c,h-v,"L",D-c,h-v,D-c,h,"L",D-c,h,D,h];break;case 4:f=["M",l,h,l-c,h,"L",l-c,h,l-c,h-v,"L",l-c,h-v,m+c,h-v,"L",m+c,h-v,m+c,h,"L",m+c,h,m,h]}else switch(w){case 1:f=["M",t,h,t+(D-t)/2,h,"L",t+(D-t)/2,h,t+(D-t)/2,x,"L",t+(D-t)/2,x,D,x];f=t<=D?["M",t,h,t+(D-t)/2,h,"L",
t+(D-t)/2,h,t+(D-t)/2,x,"L",t+(D-t)/2,x,D,x]:["M",t,h,t+c,h,"L",t+c,h,t+c,h+(x-h)/2,"L",t+c,h+(x-h)/2,D-c,h+(x-h)/2,"L",D-c,h+(x-h)/2,D-c,x,"L",D-c,x,D,x];break;case 2:w=0>m-t?0:m-t;f=["M",t,h,t+c+w,h,"L",t+c+w,h,t+c+w,x,"L",t+c+w,x,m,x];break;case 3:w=0>l-D?0:l-D;f=["M",l,h,l-c-w,h,"L",l-c-w,h,l-c-w,x,"L",l-c-w,x,D,x];break;case 4:f=l>m?["M",l,h,l-(l-m)/2,h,"L",l-(l-m)/2,h,l-(l-m)/2,x,"L",l-(l-m)/2,x,m,x]:["M",l,h,l-c,h,"L",l-c,h,l-c,h+(x-h)/2,"L",l-c,h+(x-h)/2,m+c,h+(x-h)/2,"L",m+c,h+(x-h)/2,m+
c,x,"L",m+c,x,m,x]}r.connector?r.connector.animate({path:f}):(l=ka.animation({"stroke-opacity":n.alpha},d,"normal"),r.connector=a.path(f,y).attr({stroke:n.color,"stroke-opacity":0,"stroke-width":n.thickness,"stroke-dasharray":n.dashedStyle}).animate(l.delay(d)));l={fromTaskId:n.fromTaskId,toTaskId:n.toTaskId,fromTaskConnectStart:n.fromTaskConnectStart,toTaskConnectStart:n.toTaskConnectStart,link:n.link,sourceType:"connector"};r.tracker=a.path(f,y).attr({stroke:Ma,"stroke-width":W(n.thickness,10),
ishot:!0,cursor:n.link?"pointer":""}).data("dataObj",n).data("eventArgs",l).click(E);r.tracker.hover(T,G)}}},Pa["renderer.cartesian"])}]);
This source diff could not be displayed because it is too large. You can view the blob instead.
/*
FusionCharts JavaScript Library
Copyright FusionCharts Technologies LLP
License Information at <http://www.fusioncharts.com/license>
@version 3.6.0
*/
FusionCharts.register("module",["private","modules.renderer.js-gradientlegend",function(){function U(b,e,m){var l=b[0],n=b[1];b=b[2];l+=(e[0]-l)*m;n+=(e[1]-n)*m;e=b+(e[2]-b)*m;return{hex:(ra+(l<<16|n<<8|e).toString(16)).slice(-6),rgb:[l,n,e]}}function X(b,e){return b.maxvalue-e.maxvalue}function C(b){var e,m,l=b.colorRange||{},n=b.dataMin,B=b.dataMax,q=b.sortLegend||!1,g=b.mapByCategory||!1,u=b.defaultColor,d=b.numberFormatter,c=l.color;b=this.colorArr=[];var h,f,a;this.mapByCategory=g;"1"===l.mapbypercent&&
(this.mapbypercent=!0);if("1"===l.gradient&&!g){this.gradient=!0;m=Ba($(l.startcolor,l.mincolor,l.code));q=ga(Ba($(m,u,"CCCCCC")));g=this.scaleMin=F(l.startvalue,l.minvalue,this.mapbypercent?0:n);b.push({code:m,maxvalue:g,label:aa(l.startlabel),codeRGB:ga(m)});if(c&&(e=c.length))for(n=0;n<e;n+=1)u=c[n],m=Ba($(u.color,u.code)),f=F(u.value,u.maxvalue),a=F(u.minvalue),f>g&&b.push({code:m,maxvalue:f,userminvalue:a,label:aa($(u.label,u.displayvalue)),codeRGB:ga(m)});b.sort(X);e=b.length;for(n=1;n<e;n+=
1)u=b[n],m=u.maxvalue-g,0<m?(u.minvalue=g,u.range=m,g=u.maxvalue):(b.splice(n,1),n-=1,e-=1);2<=b.length&&(this.scaleMax=g,b[n-1].label=$(l.endlabel,b[n-1].label,b[n-1].displayvalue));1===b.length&&(f=F(l.maxvalue,this.mapbypercent?100:B),b.push({minvalue:g,maxvalue:f,range:f-g,label:l.endlabel}),this.scaleMax=f,delete b[0].code);l=b[0];B=b[b.length-1];l.code&&B.code||(m=ha(q),e=Ea((m[2]=0,m)),m=Ea((m[2]=100,m)),l.code||(l.codeRGB=e,l.code=sa(e)),B.code||(B.codeRGB=m,B.code=sa(m)));e=b.length;for(n=
1;n<e;n+=1)if(u=b[n],u.code){if(h)for(B=u,a=l.maxvalue,c=B.maxvalue-a;h<n;h+=1)q=b[h],m=U(l.codeRGB,B.codeRGB,(q.maxvalue-a)/c),q.code=m.hex,q.codeRGB=m.rgb;h=null;l=u}else h=h||n;if(void 0===this.scaleMin||void 0===this.scaleMax)this.noValidRange=!0}else if(c&&(e=c.length)){for(n=0;n<e;n+=1)u=c[n],m=$(u.color,u.code),f=F(u.maxvalue),a=F(u.minvalue),h=$(u.label,u.displayvalue,g?Y:d.dataLabels(a)+" - "+d.dataLabels(f)),(m&&f>a||g&&h)&&b.push({code:m,maxvalue:f,minvalue:a,label:aa(h),labelId:h.toLowerCase()});
b.length?q&&b.sort(X):this.noValidRange=!0}}function N(b,e){return e?z(100*b)/100+"%":ba(b,Y).toString()}var ja=this,b=ja.hcLib,ta=ja.window,ta=/msie/i.test(ta.navigator.userAgent)&&!ta.opera,F=b.pluckNumber,ra=b.COLOR_BLACK,e=b.COLOR_GLASS,Ca=b.FC_CONFIG_STRING,va=b.graphics,Ea=va.HSBtoRGB,ha=va.RGBtoHSB,sa=va.RGBtoHex,ga=va.HEXtoRGB,ka=b.COMMASTRING,Y=b.BLANKSTRING,aa=b.parseUnsafeString,ua=b.graphics.convertColor,ya=b.POSITION_TOP,ia=b.POSITION_MIDDLE,wa=b.POSITION_START,Fa=b.POSITION_END,xa=b.graphics.getDarkColor,
pa=b.graphics.getLightColor,$=b.pluck,ba=b.getValidValue,qa=b.toRaphaelColor,za=b.hasTouch,z=Math.round,S=Math.max,P=Math.min,Ga=Math.abs,V,Ha,Aa,Ia="rgba(192,192,192,"+(ta?.002:1E-6)+")",Ba=function(b){return b&&b.replace(/^#?([a-f0-9]+)/ig,"$1")};C.prototype={getColorObj:function(b){var e=this.colorArr,m=this.gradient?1:0,l=e[m],n;if(this.mapByCategory){for(b=aa(b).toLowerCase();l;){if(l.labelId===b)return{code:l.code,seriesIndex:m};m+=1;l=e[m]}return{outOfRange:!0}}if(this.gradient){if(this.scaleMin<=
b&&this.scaleMax>=b){for(;l&&l.maxvalue<b;)m+=1,l=e[m];b=(b-l.minvalue)/l.range;return{code:U(e[m-1].codeRGB,l.codeRGB,b).hex}}return{outOfRange:!0}}for(;l;){if(l.maxvalue>b&&l.minvalue<=b)return{code:l.code,seriesIndex:m};l.maxvalue===b&&(n=m);m+=1;l=e[m]}return(l=e[n])&&l.maxvalue===b?{code:l.code,seriesIndex:n}:{outOfRange:!0}}};C.prototype.constructor=C;b.colorRange=C;V=b.configureGradientLegendOptions=function(b,e){var m=b.legend,l=e.chart;m.legendSliderBorderWidth=F(l.legendpointerborderthickness,
1);m.legendSliderBorderColor=ua($(l.legendpointerbordercolor,ra),F(l.legendpointerborderalpha,100));m.legendSliderWidth=F(l.legendpointerwidth,l.legendpointerswidth,12);m.legendSliderHeight=F(l.legendpointerheight,l.legendpointersheight,12);m.legendColorBoxBorderColor=m.borderColor;m.legendColorBoxBorderWidth=m.borderWidth;m.legendScaleColor=ua($(l.legendscalelinecolor,ra),F(l.legendscalelinealpha,100));m.legendScalePadding=F(l.legendscalepadding,4);m.legendScaleLineThickness=F(l.legendscalelinethickness,
1);m.legendScaleTickDistance=F(l.legendscaletickdistance,6);m.itemStyle.cursor="default";m.interActivity=F(l.interactivelegend,1)};b.placeGLegendBlockRight=function(b,e,m,l,n){this.configureLegendOptions(b,e.chart,!0,n,m);V(b,e);n=this.snapLiterals||(this.snapLiterals={});var B=b[Ca],q=this.smartLabel||B.smartLabel,g=b.legend,u=b.chart.spacingRight,d,c,h=g.textPadding=2,f=2*h,a=g.title.padding,D=0,ea=0,k=2*g.padding;e=F(e.chart.legendpadding,7)+g.borderWidth/2+1;var v=b.colorRange||{},H=v.colorArr,
O=v.mapbypercent,T=v.scaleMin,s=v.scaleMax-T,ca=g.legendSliderWidth,x=g.legendSliderHeight/2;c=g.legendScalePadding;var r=g.legendScaleTickDistance,w=g.itemStyle||{};d=F(parseInt(w.lineHeight,10)||12);var y=.75*d,Q=m-k,A,M,p=0,G,t,I,K,E,J,ma;l-=k;if(!v.noValidRange&&H&&1<(M=H.length)){M-=1;g.title.text!==Y&&(q.setStyle(g.title.style),d=q.getSmartText(g.title.text,Q,S(d,l/4)),g.title.text=d.text,D=d.width+k,l-=ea=d.height+a);q.setStyle(w);d=q.lineHeight;Q-=r+c+ca;g.colorBoxX=ca;a=S(d,Q/2);Q=P(Q-a-
4,d);G=S(d,l/2);A=l/4;r=H[0];r.scaleLabel=N(r.maxvalue,O);d=q.getSmartText(r.label,A,Q);r.label=d.text;w=d.height;r.labelY=y-d.height/2;c=q.getSmartText(r.scaleLabel,a,G);r.scaleLabel=c.text;v=c.height/2;t=c.width;r.scaleLabelY=y-c.height/2;g.colorBoxY=S(v,d.width+f,x)+ea;r=ma=H[M];r.scaleLabel=N(r.maxvalue,O);d=q.getSmartText(r.label,A,Q);r.label=d.text;w=S(w,d.height);r.labelY=y-d.height/2;c=q.getSmartText(r.scaleLabel,a,G);r.scaleLabel=c.text;t=S(t,c.width);A=c.height/2;d=S(d.width+f,A,x);r.scaleLabelY=
y-c.height/2;g.colorBoxHeight=x=l-g.colorBoxY-d;G=x-A;I=x/s;E=P(x-p,G-v)-4;for(A=1;A<M;A+=1)r=H[A],K=(r.maxvalue-T)*I,d=q.getSmartText(r.label,2*P(K-p,x-K),Q),r.label=d.text,w=S(w,d.height),r.labelY=y-d.height/2,d=d.width/2,r.scaleLabel=N(r.maxvalue,O),c=q.getSmartText(r.scaleLabel,a,2*P(K-v,G-K)),r.scaleLabel=c.text,t=S(t,c.width),J=c.height/2,r.scaleLabelY=y-c.height/2,E=P(E,(K-S(J+v,d+p)-4)*s/r.range),p=d+K,v=J+K;E=S(P(E,(P(G-v,x-p)-4)*s/ma.range,.3*l),0);g.colorBoxHeight-=E;g.colorBoxWidth=w&&
w+f||15;g.height=g.totalHeight=l+ea+k-E;g.width=(t&&t+h)+g.colorBoxWidth+ca+g.legendScaleTickDistance+g.legendScalePadding+k;g.width<D&&(g.colorBoxX+=(D-g.width)/2,g.width=D);g.width>m&&(g.width=m);n.legendstartx=B.width-u-g.width;n.legendwidth=g.width;n.legendendx=n.legendstartx+n.legendwidth;n.legendheight=g.height;e+=g.width;b.chart.marginRight+=e;return e}g.enabled=!1;return 0};b.placeGLegendBlockBottom=function(b,e,m,l,n){this.configureLegendOptions(b,e.chart,!1,n,m);V(b,e);n=this.snapLiterals||
(this.snapLiterals={});var B=b[Ca],q=this.smartLabel||B.smartLabel,g=b.legend,u=b.chart,d=u.spacingBottom,c=u.spacingLeft,u=u.spacingRight,h,f,a=g.textPadding=2,D=g.title.padding,ea=0,k=0,v=2*g.padding;e=F(e.chart.legendpadding,7)+g.borderWidth/2+1;var H=b.colorRange||{},O=H.colorArr,T=H.mapbypercent,s=H.scaleMin,ca=H.scaleMax-s,x=g.legendSliderWidth,r=g.legendSliderHeight,w=g.legendScalePadding,y=g.legendScaleTickDistance,Q=g.itemStyle||{};h=F(parseInt(Q.lineHeight,10)||12);var A=.75*h,M=l-v,p,G,
t,I,K=0,E,J,ma;m-=v;if(!H.noValidRange&&O&&1<(G=O.length)){G-=1;g.title.text!==Y&&(q.setStyle(g.title.style),h=q.getSmartText(g.title.text,m,M/3),g.title.text=h.text,ea=h.width+v,M-=k=h.height+D);q.setStyle(Q);h=q.lineHeight;M-=y+w+r;D=S(h,M/2);Q=P(M-D-4,h);p=m/4;I=2*p;t=O[0];t.scaleLabel=N(t.maxvalue,T);h=q.getSmartText(t.label,p,Q);t.label=h.text;M=h.height;t.labelY=A-h.height/2;f=q.getSmartText(t.scaleLabel,I,D);t.scaleLabel=f.text;w=f.width/2;y=f.height;t.code||(t.code=$(g.minColor,"CCCCCC"));
g.colorBoxX=S(w,h.width+a,x);t=H=O[G];t.scaleLabel=N(t.maxvalue,T);h=q.getSmartText(t.label,p,Q);t.label=h.text;M=S(M,h.height);t.labelY=A-h.height/2;f=q.getSmartText(t.scaleLabel,I,D);t.scaleLabel=f.text;y=S(y,f.height);t=f.width/2;h=S(h.width+a,t,x);g.colorBoxWidth=x=m-g.colorBoxX-h;I=x-t;E=x/ca;ma=P(x-K,I-w)-4;for(p=1;p<G;p+=1)t=O[p],J=(t.maxvalue-s)*E,h=q.getSmartText(t.label,2*P(J-K,x-J),Q),t.label=h.text,M=S(M,h.height),t.labelY=A-h.height/2,h=h.width/2,t.scaleLabel=N(t.maxvalue,T),f=q.getSmartText(t.scaleLabel,
2*P(J-w,I-J),D),t.scaleLabel=f.text,y=S(y,f.height),f=f.width/2,ma=P(ma,(J-S(f+w,h+K)-4)*ca/t.range),K=h+J,w=f+J;ma=S(P(ma,(P(I-w,x-K)-4)*ca/H.range,.3*m),0);g.colorBoxWidth-=ma;g.width=m+v-ma;g.width<ea&&(g.colorBoxX+=(ea-g.width)/2,g.width=ea);g.colorBoxY=k+r;g.colorBoxHeight=M&&M+2*a||15;g.height=g.totalHeight=(y&&y+a)+g.colorBoxHeight+k+r+g.legendScaleTickDistance+g.legendScalePadding+v;g.height>l&&(g.height=l);n.legendstartx=c+.5*(B.width-c-u-g.width)+(g.x||0);n.legendwidth=g.width;n.legendendx=
n.legendstartx+n.legendwidth;n.legendstarty=B.height-d-g.height;n.legendheight=g.height;n.legendendy=n.legendstarty+n.legendheight;e+=g.height;b.chart.marginBottom+=e;return e}g.enabled=!1;return 0};Ha=function(){return{point:this}};Aa=function(b){return z(100*b)/100};b.rendererRoot.drawGradientLegendItem=function(b){var C=this,m=C.paper,l=C.options,n=C.canvasLeft,B=C.canvasTop,q=C.canvasWidth,g=C.canvasHeight,u=l.colorRange,d,c,h,f,a=l.legend,D=F(a.padding,4),ea=a.itemStyle,l=a.symbolStyle,k=a.interActivity,
v=b.elements;b=v.elementGroup.trackTooltip(!0);var H="vertical"===a.layout,O,T,s,ca,x,r,w=0,y=a.lighting3d,Q=a.colorBoxWidth,A=a.colorBoxHeight,M=Q,p=A,G={FCcolor:{color:Y,alpha:Y,angle:0,ratio:Y}},t=G.FCcolor,I=a.colorBoxX+D,K=a.colorBoxY+D,E,J,ma=a.legendColorBoxBorderColor,Ma=a.legendColorBoxBorderWidth,Da=["M"],Ja=a.legendScaleColor;r=a.legendScalePadding;var da=a.legendScaleLineThickness,V=da%2/2;c=a.legendScaleTickDistance;var U=a.legendSliderWidth,P=a.legendSliderHeight;x=p/2;f=M/2;var N=U/
2,Z=P/2,ba,W,X;J=0;var aa=pa("ABABAB",50),D=xa("ABABAB",70),a=ua("ABABAB",100),D=ua(D,100),aa=ua(aa,100),fa,R={isFirst:!0},L={},na,oa,ga,la;if(u&&(d=u.colorArr)&&1<(h=d.length)){R.toolText=na=s=u.scaleMin;L.toolText=oa=u=u.scaleMax;ca=u-s;R.snapPX=L.snapPX=0;R.tooltipConstraint=L.tooltipConstraint="chart";R.getLabelConfig=L.getLabelConfig=Ha;R.tooltipPos=[0,0];L.tooltipPos=[0,0];L.tooltipOffsetReference=R.tooltipOffsetReference={};L.tooltipOffsetReference.left=R.tooltipOffsetReference.left+=n-20;
L.tooltipOffsetReference.top=R.tooltipOffsetReference.top+=B;ga=v.colorBox=m.group("colorBox",b);if(H){R.tooltipPos[0]=L.tooltipPos[0]=q+n;J=270;t.angle=90;n=I-U;q=I+M;B=K-Z;O=K+Z;n=z(I-U)+.5;q=z(I)+.5;B=z(K-Z)+.5;O=z(K+Z)+.5;ba=z(I+M)+.5;X=z(K-2)+.5;T=z(K+2)+.5;E=z(K)+.5;g=I-N/2;W=z(g-Z)+.5;g=z(g)+.5;x=K-Z/2;Z=z(x+Z)+.5;x=z(x)+.5;Q/=2;N=["M",n,B,"L",q,B,q,X,ba,E,q,T,q,O,n,O,"Z","M",W,x,"L",g,x,"M",W,E,"L",g,E,"M",W,Z,"L",g,Z];Z=["M",n+1,B,"L",n+1,O,"M",W,x-1,"L",g,x-1,"M",W,E-1,"L",g,E-1,"M",W,Z-
1,"L",g,Z-1];x=I+M+r;O=z(x+c)+V;x=z(x)+V;E=I+f;W=h-1;for(c=0;c<h;c+=1)f=d[c],q=(f.maxvalue-s)/ca,T=p*q+K,r=z(T)+V,c?(t.ratio+=ka,t.color+=ka,t.alpha+=ka,Da.push("L",x,r,O,r,"M",x,r),c===W?(g=Fa,r=T+2):(g=ia,r=T)):(Da.push(x,r,"L",O,r,"M",x,r),g=wa,r=T-2),t.ratio+=100*(q-w),t.color+=$(f.code,ra),t.alpha+=$(f.alpha,100),w=q,f.legendItem=m.text(b).attr({text:f.label,x:E,y:r,"text-anchor":g,"vertical-align":ia}).rotate(J,E,r).css(ea),f.legendSymbol=m.text(b).attr({text:f.scaleLabel,x:O,y:T,"text-anchor":wa,
"vertical-align":ia}).css(ea);R.xMin=L.xMin=0;R.xMax=L.xMax=0;R.yMin=L.yMin=0;R.yMax=L.yMax=p;R.x=L.x=0;R.y=0;L.y=p;d=P+M;h=U}else{R.tooltipPos[1]=L.tooltipPos[1]=g+B;n=z(I-N)+.5;q=z(I+N)+.5;B=z(K-P)+.5;O=z(K+p)+.5;ba=z(I-2)+.5;g=z(I+2)+.5;W=z(I)+.5;X=z(K)+.5;T=K-Z/2;E=z(T-Z)+.5;T=z(T)+.5;J=I-N/2;f=z(J+N)+.5;J=z(J)+.5;A/=2;N=["M",n,B,"L",q,B,q,X,g,X,W,O,ba,X,n,X,"Z","M",J,E,"L",J,T,"M",W,E,"L",W,T,"M",f,E,"L",f,T];Z=["M",n,B+1,"L",q,B+1,"M",J-1,E,"L",J-1,T,"M",W-1,E,"L",W-1,T,"M",f-1,E,"L",f-1,T];
r=K+p+r;J=z(r+c)+V;r=z(r)+V;T=K+x;W=h-1;for(c=0;c<h;c+=1)f=d[c],q=(f.maxvalue-s)/ca,O=M*q+I,x=z(O)+V,c?(t.ratio+=ka,t.color+=ka,t.alpha+=ka,Da.push("L",x,r,x,J,"M",x,r),c===W?(g=wa,x=O+2):(g=ia,x=O)):(Da.push(x,r,"L",x,J,"M",x,r),g=Fa,x=O-2),t.ratio+=100*(q-w),t.color+=$(f.code,ra),t.alpha+=$(f.alpha,100),w=q,f.legendItem=m.text(b).attr({text:f.label,x:x,y:T,"text-anchor":g,"vertical-align":ia}).css(ea),f.legendSymbol=m.text(b).attr({text:f.scaleLabel,x:O,y:J,"text-anchor":ia,"vertical-align":ya}).css(ea);
R.xMin=L.xMin=0;R.xMax=L.xMax=M;R.yMin=L.yMin=0;R.yMax=L.yMax=0;R.y=L.y=0;R.x=0;L.x=M;d=U;h=P+p}v.colorBox=m.rect(ga).attr({x:I,y:K,width:M,height:p,fill:qa(G),stroke:ma,strokeWidth:Ma});y&&(v.colorBoxEffect=m.rect(ga).attr({x:I,y:K,width:Q,height:A,fill:e,"stroke-width":0}));v.scale=m.path(b).attr({path:Da,stroke:Ja,"stroke-width":da});fa=function(a,c,d,b,h){var f;H?(f=c*ca/p+s,b=0<c?b:b+c+.01):(f=a*ca/M+s,d=0<a?d:d+a+.01);a=Aa(f);h?(v.slider1.translate(d,b),v.slider1Effect.translate(d,b),v.slider1Tracker.toFront().translate(d,
b).tooltip(a,null,null,!0),na=f):(v.slider2.translate(d,b),v.slider2Effect.translate(d,b),v.slider2Tracker.toFront().translate(d,b).tooltip(a,null,null,!0),oa=f);k&&(la=clearTimeout(la),la=setTimeout(function(){C.setScaleRange&&C.setScaleRange(na,oa)},100))};y=function(a,c){var d=0,b=d,h,f=this.isFirst,e=f?L:R;if(H){b=this._startY+c;0>=b&&(b=0);b>p&&(b=p);if(f?b>e.y:b<e.y)b=e.y;Ga(b-this.y)>=(this.snapPX||0)&&(h=!0)}else{d=this._startX+a;0>=d&&(d=0);d>M&&(d=M);if(f?d>e.x:d<e.x)d=e.x;Ga(d-this.x)>=
(this.snapPX||0)&&(h=!0)}h&&(fa(d,b,d-this.x,b-this.y,f),this.x=d,this.y=b)};Q=function(){var a=this.isFirst;this._startX=this.x;this._startY=this.y;this._scaleStart=na;this._scaleEnd=oa;ja.raiseEvent("LegendPointerDragStart",{pointerIndex:a?0:1,pointers:[{value:na},{value:oa}],legendPointerHeight:P,legendPointerWidth:U},C.logic.chartInstance)};A=function(){var a=this._scaleStart,c=this._scaleEnd;ja.raiseEvent("LegendPointerDragStop",{pointerIndex:this.isFirst?0:1,pointers:[{value:na},{value:oa}],
legendPointerHeight:P,legendPointerWidth:U},C.logic.chartInstance);a===na&&c===oa||ja.raiseEvent("LegendRangeUpdated",{previousMinValue:a,previousMaxValue:c,minValue:na,maxValue:oa},C.logic.chartInstance);delete this._scaleStart;delete this._scaleEnd};G=Aa(s);v.slider1=m.path(b).attr({path:N,fill:a,strokeWidth:1,stroke:D});v.slider1Effect=m.path(b).attr({path:Z,fill:"none",strokeWidth:1,stroke:aa});za&&(n-=.5*(S(30,d)-d),B-=.5*(S(40,h)-h),d=S(30,d),h=S(40,h));v.slider1Tracker=m.rect(b).attr({ishot:!0,
width:d,height:h,x:n,y:B,fill:Ia,stroke:"none"}).drag(y,Q,A,R,R,R).tooltip(G,null,null,!0).css(l);G=Aa(u);v.slider2=m.path(b).attr({path:N,fill:a,strokeWidth:1,stroke:D}).translate(L.x,L.y);v.slider2Effect=m.path(b).attr({path:Z,fill:"none",strokeWidth:1,stroke:aa}).translate(L.x,L.y);v.slider2Tracker=m.rect(b).attr({ishot:!0,width:d,height:h,x:n,y:B,fill:Ia,stroke:"none"}).translate(L.x,L.y).css(l).drag(y,Q,A,L,L,L).tooltip(G,null,null,!0)}}}]);
FusionCharts.register("module",["private","modules.renderer.js-maps",function(){var U=this,X=U.window,C=U.hcLib,N=C.chartAPI,ja=X.document,b=C.pluck,ta=C.imprint,F=C.extend2,ra=C.parseTooltext,e=C.pluckNumber,Ca=C.pluckFontSize,va=C.HCstub,Ea=F(C.defaultPaletteOptions,{foregroundcolor:"333333",foregroundalpha:"100",foregrounddarkcolor:"111111",foregrounddarkalpha:"100",foregroundlightcolor:"666666",foregroundlightalpha:"100",backgroundlightcolor:"FFFFFF",backgroundlightalpha:"100",backgroundlightangle:90,
backgroundlightratio:"",backgroundcolor:"FFFFCC",backgroundalpha:"100",backgrounddarkcolor:"ffcc66",backgrounddarkalpha:"100",backgrounddarkangle:270,backgrounddarkratio:"",shadow:1}),ha=C.setLineHeight,sa=C.getValidValue,ga=C.parseUnsafeString,ka=C.getFirstColor,Y=C.graphics.convertColor,aa=C.hashify,ua=C.getDashStyle,ya=X.navigator.userAgent,ia=/msie/i.test(ya)&&!X.opera,wa=/AppleWebKit/.test(ya),Fa=/stroke/ig,xa=C.hasSVG,pa=C.FC_CONFIG_STRING,$=X.Math,ba=$.min,qa=$.max,za=$.ceil,ya=!/fusioncharts\.com$/i.test(X.location.hostname),
z=C.toRaphaelColor,S={left:"start",right:"end",center:"middle"},P=function(d,c){var b;d||(d={});for(b in c)d[b]=c[b];return d},Ga=function(d){var c=this.parentNode;if(!c)return!1;for(;c&&c!==ja.documentElement;){if(c===d)return!0;c=c.parentNode}return!1},V=function(d,c){var b=c?P(d.FCcolor,c):{FCcolor:d};b.toString=z;return b},Ha=function(d,c){var b,f;this.index=c;for(f in d)b=Ea[d[f]],this[f]=b instanceof Array?b[c]:b},Aa={right:function(d,c){return c},left:function(d,c){return d-c},center:function(d,
c){return 2*ba(c,d-c)}},Ia={top:function(d,c){return c},middle:function(d,c){return 2*ba(c,d-c)},bottom:function(d,c){return d-c}},Ba=function(d,c,b,f){c=ba(d,c);d=.02*c;c*=.07;f=parseFloat(f);b=parseFloat(b);return isNaN(f)||isNaN(b)?isNaN(f)?isNaN(b)?{min:d,max:c}:{min:parseInt(b/10,10),max:b}:{min:f,max:10*f}:f<b?{min:f,max:b}:{min:b,max:f}},La=function(d){for(var c=d&&d.length||0,b={},f;c--;)f=d[c],void 0!==f.id&&(b[f.id.toLowerCase()]=f);return b},Ka=function(d,c){var b,f={};c=c||1;if(!d||"object"!==
typeof d)return f;for(b in d)Fa.test(b)||("stroke-width"===b?(f[b]=Number(d[b])/c,wa&&(f[b]=f[b]&&za(f[b])||0)):f[b]=d[b]);return f},m=function(){this.hoverEntity&&(C.raiseEvent.apply(C,this.hoverEntityEventArgs),delete this.hoverEntityEventArgs,this.hoverEntity&&this.hoverEntityAttr&&this.hoverEntity.attr(this.hoverEntityAttr),delete this.hoverEntityAttr,this.hoverEntity=null)},l=function(d,c){var b=d&&d.length||!1,f=c||"id",a={},e;if(!d)return d;for(;b--;)e=d[b],void 0!==e[f]&&(a[e[f].toLowerCase()]=
e);return a},n=function(d,c,b,f){function a(){var a=this,c=a.entityPathMap,d=a.data,b=a.items,h,d=La(d);w=function(){for(var f,k=c[h];k;)b[h]?a=null:((f=d[h])?f.mapItem=b[h]=new B(h,ta(e(f),k),s,a.group):b[h]=new B(h,k,s,a.group),h=k.nextId&&k.nextId.toLowerCase(),k=void 0!==h&&c[h]||null);v.call(a)};y=function(){var h,f,k=r,w,g=0;for(w in l)if(!b[w]&&(h=c[w],(f=d[w])?f.mapItem=b[w]=new B(w,ta(e(f),h),s,a.group):b[w]=new B(w,h,s,a.group),g+=1,delete l[w],g===k))break;g<O?(O-=g,setTimeout(y,0)):v.call(a)};
(h=H&&H.toLowerCase())?w():y()}function e(a){delete a.outlines;delete a.label;delete a.shortlabel;delete a.labelposition;delete a.labelalignment;delete a.labelconnectors;return a}function g(){var a=this.items,c=[],d,b={id:"entityLabels",items:c};for(d in a)a[d].drawLabel(c);n.addGroup(b)}function k(){var a=this.items,c;for(c in a)a[c].destroy();delete this.entityPathMap;delete this.data;delete this.chartObj;delete this.items;delete this.group}function v(){x.entities.labelsOnTop&&g.call(this);this.ready=
!0;s.checkComplete()}if(b&&b.getEntityPaths()){var H=b.getFirstId(),O=b.entityCount,l=b.getEntityPaths(!0),s=c,n=c.mapAnnotations,x=s.options,r=ia?50:0,w,y,Q;this.entityPathMap=l;this.data=d;this.chartObj=s;this.items={};this.ready=!1;this.group=f||c.mapGroup;this.isReady=function(){return this.ready};a.call(this);this.drawLabels=g;this.destroy=k;this.init=a;this.initComplete=v;s.__canvasMouseOutListenerAdded||(s.__canvasMouseOutListenerAdded=!0,Q=c.paper.canvas,C.addEvent(Q,"mouseout",function(a){a=
a.originalEvent.relatedTarget||a.originalEvent.toElement;!ia||xa?a&&a.ownerSVGElement&&a.ownerSVGElement===Q||m.call(s):a===ja.documentElement||a===c.container||a===c.container.parentElement?m.call(s):Ga.call(a,Q)||m.call(s)}))}},B=function(d,c,h,f){function a(a){var c=this.featureConfig;return c&&"undefined"!==typeof c[a]?Boolean(c[a]):!1}function D(){var d;if(a.apply(this,["_ds"])){d=c.labels&&c.labels[0];if(!d)return;d=(p.useSNameInTooltip?d.shortText:d.text)+(isNaN(t)?"":p.tooltipSepChar+q)}else d=
(p.useSNameInTooltip?c.shortLabel:c.label)+(isNaN(t)?"":p.tooltipSepChar+q);return d}function g(a,d,h){d?h&&"undefined"!==typeof c.displayvalue?a=c.displayvalue:(a=b(p.includeNameInLabels?p.useShortName?a.shortText:a.text:""),p.includeValueInLabels&&!isNaN(t)&&(a=void 0===a?q:a+K+q)):a=a.text;return a}function k(a){for(var c=a&&a.length||0,d;c--;)d=a[c],this.connectorElem[c]=M.path(d,this.group).attr({transform:la.transform,stroke:Y(S,P),"shape-rendering":"crisp","stroke-width":N})}function v(){var a=
this.chart.paper,c=xa||!ia?"litepath":"path",d=this.eJSON.outlines,b=this.group,f,e,k;f=d&&d.length||0;if(this.hasFeature("_ds")){if(this.hasFeature("isDataEnabled"))if(na)for(;f--;)e=d[f].outline,this.svgElems[f]={},this.svgElems[f].graphic=a[c](e,b).attr(la).tooltip(J).shadow(ka,h.shadowLayer);else for(;f--;)e=d[f].outline,this.svgElems[f]={},this.svgElems[f].graphic=a[c](e,b).tooltip(J).attr(la);else if(na)for(;f--;)k=F(F({},la),Ka(d[f].style,ja)),e=d[f].outline,this.svgElems[f]={},this.svgElems[f].graphic=
a[c](e,b).attr(k).tooltip(J).shadow(ka,h.shadowLayer);else for(;f--;)k=F(F({},la),Ka(d[f].style,ja)),e=d[f].outline,this.svgElems[f]={},this.svgElems[f].graphic=a[c](e,b).tooltip(J).attr(k);this.hasFeature("isDataEnabled")&&this.addMouseGestures()}else{if(na)for(;f--;)e=d[f],this.svgElems[f]={},this.svgElems[f].graphic=a[c](e,b).attr(la).tooltip(J).shadow(ka,h.shadowLayer);else for(;f--;)e=d[f],this.svgElems[f]={},this.svgElems[f].graphic=a[c](e,b).tooltip(J).attr(la);this.addMouseGestures()}return this}
function H(a){var c=this.chart;c.hoverEntityEventArgs=["entityrollout",this.eventArgs,c.fusionCharts,[c.fusionCharts.id,"rollOut",this.legacyEventArgs],a];ha&&this.isVisible&&(c.hoverEntity=this,c.hoverEntityAttr=this.revertAttr,this.attr(this.hoverAttr));C.raiseEvent("entityrollover",this.eventArgs,c.fusionCharts,[c.fusionCharts.id,"rollOver",this.legacyEventArgs],a)}function O(a,c,d){var b=this,f=b.chart,e=a.labelPosition,k=a.labelAlignment,D=b.svgElems[0]&&b.svgElems[0].graphic,p=a.style,w,y,v,
A,t;e?(D=e[0],e=e[1]):(e=D.getBBox(),D=e.x+e.width/2,e=e.y+e.height/2);k?(w=k[0],k=k[1],"right"===w?D-=W:"left"===w&&(D+=W),"top"===k?e-=W:"bottom"===k&&(e+=W)):(w="center",k="middle");y=ba;v=parseFloat(Z)/h.sFactor;A=X;t=R;!c&&p&&(p.color&&(y=p.color),p["font-size"]&&(v=parseFloat(p["font-size"])/h.sFactor),p["font-family"]&&(A=p["font-family"]),void 0!==p["font-weight"]&&(t="bold"===p["font-weight"]));return{x:D.toString(),y:e.toString(),wrapwidth:Aa[w](sa,D+ua)-W,wrapheight:Ia[k](ta,e+va)-W,wrap:1,
type:"text",align:w,valign:k,text:g(a,c,d),tooltext:J,link:L,bgcolor:"",bordercolor:"",fillcolor:y,fontsize:v,font:A,bold:t,onclick:function(a){U.raiseEvent("entityclick",b.eventArgs,h.fusionCharts,a)},onmouseover:function(a){b!==f.hoverEntity&&(m.call(b.chart),H.call(b,a))},ontouchstart:function(a){b!==f.hoverEntity&&(m.call(b.chart),H.call(b,a))}}}function l(a){var c=this.eJSON,d=this.hasFeature("isDataEnabled"),b,f;if(!Ja)return null;if(this.hasFeature("_ds"))for(f=(c=c.labels)&&c.length||0;f--;)b=
c[f],a.push(this.getLabelObject(b,d,!f)),b.labelConnectors&&this.drawLabelConnectors(b.labelConnectors);else b={text:c.label,shortText:c.shortLabel,labelAlignment:c.labelAlignment,labelPosition:c.labelPosition},a.push(this.getLabelObject(b,!0,!0)),c.labelConnectors&&this.drawLabelConnectors(c.labelConnectors)}function s(a,c){var d=this.svgElems,b;for(b in d)d[b].graphic&&d[b].graphic.attr(a,c)}function n(){var a=this.svgElems,c;this.isVisible=!0;for(c in a)a[c].graphic&&a[c].graphic.attr(la)}function x(){var a=
this.svgElems,c=this.chart,d;this.isVisible=!1;c.hoverEntity===this&&m.call(c);for(d in a)a[d].graphic&&a[d].graphic.attr(oa)}function r(a){U.raiseEvent("entityclick",this.node.__entity.eventArgs,h.fusionCharts,a);void 0!==L&&h.logic.linkClickFN.call({link:L})}function w(a){var c=this.node.__entity,d=c.chart;c!==d.hoverEntity&&(m.call(d),H.call(c,a))}function y(){var a=this.eJSON,c=this.svgElems,d;this.eventArgs={value:this.value,label:a.label,shortLabel:a.shortLabel,originalId:this.originalId||this.id,
id:this.id};this.legacyEventArgs={value:this.value,lName:a.label,sName:a.shortLabel,id:this.originalId||this.id};ha&&(this.hoverAttr={fill:this.hoverColor.toString()},this.revertAttr={fill:this.fillColor.toString()},fa!==da&&(this.hoverAttr["stroke-width"]=fa,this.revertAttr["stroke-width"]=da));if(!isNaN(t)||aa)for(d in c)void 0!==L&&c[d].graphic.css({cursor:"pointer",_cursor:"hand"}),c[d].graphic.node.__entity=this,c[d].graphic.click(r).hover(w)}function Q(){var a=this.svgElems,c=this.connectorElem,
d;for(d in a)a[d].remove&&a[d].remove();for(d in c)c[d].destroy&&c[d].destroy();delete this.value;delete this.formattedValue;delete this.toolText;delete this.fillColor;delete this.hoverColor;delete this.chart;delete this.group;delete this.id;delete this.isVisible;delete this.svgElems;delete this.connectorElem;delete this.renderer;delete this.options}if(c&&h&&void 0!==d){this.chart=h;this.eJSON=c;this.group=f;this.id=d;this.originalId=c.origId;this.isVisible=!0;this.svgElems={};this.connectorElem=
{};this.featureConfig=c.options;"object"===typeof this.featureConfig&&(this.featureConfig._ds=!0);var A=h.options,M=h.paper,p=A.entities,G=p.dataLabels.style;d=c.cleanValue;var t=null===d?void 0:d,q=this.formattedValue=c.formattedValue||"",K=p.labelSepChar,E=e(c.showtooltip,p.showTooltip);d=D.call(this);f={formattedValue:q,sName:c.shortLabel,lName:c.label};var J=E?ga(b(ra(b(c.tooltext,p.tooltext,d),[1,2,7,38,39],f,c))):"",u,B,z,Ja=e(c.showlabel,p.showLabels);f=b(c.bordercolor,p.borderColor);d=b(c.borderalpha,
p.borderAlpha);var E=1===p.scaleBorder,da=e(c.borderthickness,p.borderThickness),S=b(c.labelconnectorcolor,p.connectorColor),P=b(c.labelconnectoralpha,p.connectorAlpha),N=e(c.labelconnectorthickness,p.connectorThickness),X=b(c.font,G.fontFamily),Z=e(parseInt(c.fontsize,10),parseInt(G.fontSize,10)),ba=b(c.fontcolor,G.color),W=e(c.labelpadding,p.labelPadding),aa=p.hoverOnNull,ha=e(c.showhovereffect,c.usehovercolor,aa?p.showHoverEffect:isNaN(t)?0:p.showHoverEffect),fa=e(c.borderhoverthickness,c.hoverborderthickness,
p.hoverBorderThickness),R=e(c.fontbold,0),L=c.link,na=p.shadow;z=!ia||xa;G=h.sFactor/p.baseScaleFactor;u=h.strokeWidth;B=(z?p.baseScaleFactor:1)*u;var oa=p.hiddenEntityFillObject||(p.hiddenEntityFillObject={fill:V({color:p.hiddenEntityColor,alpha:p.hiddenEntityAlpha}).toString()}),ja,la,ka,A=A[pa],sa=A._labelBaseWidth,ta=A._labelBaseHeight,ua=A._labelXOffset,va=A._labelYOffset;z?(da=E?da*B:da/G,N/=G,ja=E?G:h.sFactor,wa&&(da=da&&za(da)||0,N=N&&za(N)||0)):(da=E?da*u:da,ja=E?h.scaleFactor:p.baseScaleFactor);
p.showHiddenEntityBorder||(oa["stroke-width"]=0);void 0===fa?fa=da:z?(fa=E?da*B:fa/G,wa&&(fa=fa&&za(fa)||0)):fa=E?fa*u:fa;!p.showNullEntityBorder&&isNaN(t)&&(da=0);void 0!==b(c.color,c.alpha,c.angle,c.ratio)?(E=b(c.color,p.fillColor),A=b(c.alpha,p.fillAlpha),u=b(c.angle,p.fillAngle),B=b(c.ratio,p.fillRatio),z=V({color:E,alpha:A,angle:u,ratio:B})):(p.fillColorObject||(p.fillColorObject=V({color:b(p.fillColor),alpha:b(p.fillAlpha),angle:b(p.fillAngle),ratio:b(p.fillRatio)})),p.emptyColorObject||(p.emptyColorObject=
V({color:b(p.nullEntityColor),alpha:b(p.nullEntityAlpha),angle:b(p.nullEntityAngle),ratio:b(p.nullEntityRatio)})),z=isNaN(t)?p.emptyColorObject:p.fillColorObject,E=z.FCcolor.color,A=z.FCcolor.alpha,u=z.FCcolor.angle,B=z.FCcolor.ratio);""===J&&(E=0);la={transform:xa||!ia?"":h.transformStr,stroke:Y(f,d),"stroke-width":da,fill:(this.fillColor=z).toString()};f=A.split(",");da&&f.push(d);ka={scalefactor:[G,h.sFactor],opacity:qa.apply($,f)/100};ha&&(void 0!==b(c.fillhovercolor,c.fillhoveralpha,c.fillhoverangle,
c.fillhoverratio,c.hoverfillcolor,c.hoverfillalpha,c.hoverfillratio,c.hoverfillangle)?(E=b(c.fillhovercolor,c.hoverfillcolor,p.hoverFillColor),A=b(c.fillhoveralpha,c.hoverfillalpha,p.hoverFillAlpha),u=b(c.fillhoverangle,c.hoverfillangle,p.hoverFillAngle),B=b(c.fillhoverratio,c.hoverfillratio,p.hoverFillRatio),d=V({color:E,alpha:A,angle:u,ratio:B})):(p.hoverColorObject||(p.hoverColorObject=V({color:p.hoverFillColor,alpha:p.hoverFillAlpha,angle:p.hoverFillAngle,ratio:p.hoverFillRatio})),d=p.hoverColorObject),
this.hoverColor=d);this.value=t;this.addMouseGestures=y;this.attr=s;this.draw=v;this.drawLabel=l;this.getLabelObject=O;this.destroy=Q;this.show=n;this.hide=x;this.hasFeature=a;this.drawLabelConnectors=k;v.call(this);p.hideNullEntities&&void 0===t&&this.hide()}},q=function(d,c,b,f){this.id=d;this.definition=c;this.application=b;this.rapi=f;this.markerLabel=this.markerShape=this.label=this.options=this.value=this.hasValue=null;this.drawOptions={shape:null,label:null};this.drawComplete=!1;if(d=f.options)this._conf=
d[pa];this.init()},g=function(d,c,b,f){this.options=d;this.from=c;this.to=b;this.api=f;if(d=f.options)this._conf=d[pa]},u=function(d,c){function h(){var d=H.definition,b=l(d)||{},f=l(H.application)||{},h=H.shapes,k,p;if(d&&d.length){if(h&&h.length)for(d=h.length;d;d-=1)if(k=h[d-1],p=k.id.toLowerCase())a[p]=k;for(p in b){k=b[p];h=new q(p,k,f[p],c);if(d=h.getShapeId())h.shapeObj=a[d];e[p]=h}}}function f(){var d=H.items,b=H.shapes,f,h,k,p;if(d&&d.length){if(b&&b.length)for(f=b.length;f;f-=1)if(h=b[f-
1],p=h.id.toLowerCase())a[p]=h;for(f=d.length;f--;)if(h=d[f],p=h.id&&h.id.toLowerCase())void 0!==h.value&&""!==h.value&&parseFloat(h.value),h.mapItem=b=new q(p,h,null,c),k=b.getShapeId(),h.__hideMarker&&(b._isHidden=!0),k&&(b.shapeObj=a[k]),e[p]=b}}var a={},e={},ea=[],k=c.options.markers,v=c.options.connectors,H=d,m=c.mapAnnotations,n,s,ca,x,r=[];this.items=e;(function(){var a=q.prototype,d=g.prototype,f;f=Boolean(b(k.hoverFillColor,k.hoverFillAlpha,k.hoverFillAngle,k.hoverFillRatio,k.hoverBorderThickness,
k.hoverBorderColor,k.hoverBorderAlpha));a.markerFont=k.dataLabels.style.fontFamily;a.markerFontSize=k.dataLabels.style.fontSize;a.markerFontColor=k.dataLabels.style.fontColor;a.showMarkerTooltip=k.showTooltip;a.showHoverEffect=f;a.tooltext=k.tooltext;a.showMarkerLabels=k.showLabels;a.markerLabelPadding=k.labelPadding;a.labelWrapWidth=k.labelWrapWidth;a.labelWrapHeight=k.labelWrapHeight;a.labelSepChar=k.labelSepChar;a.tooltipSepChar=k.tooltipSepChar;a.fillColor=k.fillColor;a.fillAlpha=k.fillAlpha;
a.fillRatio=k.fillRatio;a.fillAngle=k.fillAngle;a.hoverFillColor=k.hoverFillColor;a.hoverFillAlpha=k.hoverFillAlpha;a.hoverFillRatio=k.hoverFillRatio;a.hoverFillAngle=k.hoverFillAngle;a.startAngle=k.startAngle;a.shapeId=k.shapeId;a.borderThickness=k.borderThickness;a.borderColor=k.borderColor;a.borderAlpha=k.borderAlpha;a.hoverBorderThickness=k.hoverBorderThickness;a.hoverBorderColor=k.hoverBorderColor;a.hoverBorderAlpha=k.hoverBorderAlpha;a.markerRadius=k.radius;a.autoScale=k.autoScale?c.sFactor:
1;a.shadow=k.shadow;a.applyAll=k.applyAll;a.dataEnabled=k.dataEnabled;a.valueToRadius=k.valueToRadius;a=Boolean(b(v.hoverthickness,v.hovercolor,v.hoveralpha));d.showHoverEffect=a;d.showTooltip=v.showTooltip;d.tooltext=v.tooltext;d.thickness=v.thickness;d.color=v.color;d.alpha=v.alpha;d.hoverThickness=v.hoverthickness;d.hoverColor=v.hovercolor;d.hoverAlpha=v.hoveralpha;d.dashed=v.dashed;d.dashlen=v.dashLen;d.dashgap=v.dashGap;d.font=v.font;d.fontsize=v.fontSize;d.fontcolor=v.fontColor;d.bgcolor=v.labelBgColor;
d.bordercolor=v.labelBorderColor;d.shadow=v.shadow;d.hideOpen=v.hideOpen})();k.dataEnabled?f():h();(function(){var d=e,c=[],b,f,h,k;n=m.addGroup({fillalpha:"100",items:c});s=m.addGroup({items:[]});for(k in d)b=null,f=d[k],h=f.getShapeId(),f&&!f._isHidden&&(h&&(f.shapeObj=a[h]),b=f.draw()),b&&(f._annotationIndex=c.length,f.markerShape=b.markerShape&&n.addItem(b.markerShape),f.markerLabel=b.markerLabel&&s.addItem(b.markerLabel))})();(function(){var a=v.showLabels,d=H.connectors,b=d&&d.length,f=[],h=
[],k,m,t;if(b)for(r.push({id:"connectorLabels",fillalpha:"100",items:h}),r.push({id:"connectors",fillalpha:"100",items:f});b--;)if(t=d[b],t.from&&t.to&&(k=e[t.from.toLowerCase()],m=e[t.to.toLowerCase()],k&&m&&(!v.hideOpen||!k._isHidden&&!m._isHidden)&&(ea.push(m=new g(t,k,m,c)),m.connectJSON=k=m.computeConnectorJSON())))f.push(k),k.label&&a&&h.push(m.getLabelJSON())})();x=r.length;for(c.internalAnnotations={};x--;)ca=r.shift(),ca.id?c.internalAnnotations[ca.id]=m.addGroup(ca):m.addGroup(ca);this.addMarkerItem=
function(d){var b,f;if((b=d.id.toLowerCase())&&!e[b]){delete d.value;d=new q(b,d,null,c);if(f=d.getShapeId())d.shapeObj=a[f];e[b]=d;b=d.draw();n&&s&&(d.markerShape=b.markerShape&&n.addItem(b.markerShape,!0),d.markerLabel=b.markerLabel&&s.addItem(b.markerLabel,!0))}}};g.prototype={constructor:g,computeConnectorJSON:function(){var d=this.api,c=this.options,h=this.from,f=this.to,a=c.link,D=c.label,g=e(c.showtooltip,this.showTooltip),k=g?b(c.tooltext,this.tooltext):"",v=b(c.thickness,this.thickness),
H=b(c.color,this.color),l=b(c.alpha,this.alpha),n=e(c.showhovereffect,this.showHoverEffect),s=b(c.hovercolor,this.hoverColor,H),q=b(c.hoveralpha,this.hoverAlpha,l),x=b(c.hoverthickness,this.hoverThickness,v),r=b(c.dashed,this.dashed),w=e(c.dashlen,this.dashlen),y=e(c.dashgap,this.dashgap),u;k&&(this.tooltext=k=ga(ra(k,[3,40,41,42,43],{label:D,fromId:h.definition.id,toId:f.definition.id,fromLabel:h.definition.label,toLabel:f.definition.label},c)));return h&&f?(u={fromMarkerId:h.id,toMarkerId:f.id,
label:D},F({type:"line"},{x:h.definition.x,y:h.definition.y,tox:f.definition.x,toy:f.definition.y,dashed:r,dashlen:w,dashgap:y,link:a,tooltext:g?k:"",thickness:v,color:H,alpha:l,label:D,showshadow:this.shadow,_hovereffect:n,_defaultattrs:{stroke:V({color:H,alpha:l}).toString(),"stroke-width":v},_hoverattrs:{stroke:V({color:s,alpha:q}).toString(),"stroke-width":x},onmouseover:function(a){var c=a.data,b=c.wrapper;b&&c.options._hovereffect&&(m.call(d),b.attr(c.options._hoverattrs));U.raiseEvent("connectorrollover",
u,d.fusionCharts,a)},onmouseout:function(a){var c=a.data,b=c.wrapper;b&&c.options._hovereffect&&b.attr(c.options._defaultattrs);U.raiseEvent("connectorrollout",u,d.fusionCharts,a)},onclick:function(a){U.raiseEvent("connectorClick",u,d.fusionCharts,a)}})):null},getLabelJSON:function(){var d=this.connectJSON;return F({type:"text"},{x:((Number(d.x)+Number(d.tox))/2).toString(),y:((Number(d.y)+Number(d.toy))/2).toString(),text:d.label,align:"center",valign:"middle",font:this.font,fontsize:this.fontsize/
this.api.sFactor,fillcolor:this.fontcolor,bgcolor:this.bgcolor,bordercolor:this.bordercolor,tooltext:this.tooltext})}};q.prototype={constructor:q,init:function(){var d;d=this.options=F({},this.definition);this.dataEnabled?isNaN(d.value)||""===d.value||(this.value=parseFloat(d.value),this.hasValue=!0):this.applyAll?this.options=F(d,this.application):this.application&&(this.options=F(d,this.application))},getShapeId:function(){return this.options.shapeid&&this.options.shapeid.toLowerCase()||this.shapeId},
getLabelOptions:function(d,c,b,f,a){var e,g=d&&d.toLowerCase();this.getLabelAlignment[g]||(g="center");d=Number(b.x);e=Number(b.y);b=void 0===f||void 0===a?b.radius||0:/^(top|bottom)$/ig.test(g)&&.5*a||/^(left|right)$/ig.test(g)&&.5*f||0;b=Number(b)+Number(c);return this.getLabelAlignment[g](d,e,b)},draw:function(){if(this.options){var d=this.rapi,c=this._conf,h=d.translateX,f=d.translateY,a=this.options,D=this.getShapeId(),g=a.scale||1,k=a.label||"",v=(a.labelpos||"top").toLowerCase(),H=void 0===
a.formattedValue?void 0:a.formattedValue,l=a.tooltext||this.tooltext,n=e(a.radius,this.markerRadius)*g*this.autoScale||1E-4,s=b(a.fillcolor,a.color,this.fillColor),q=b(a.fillalpha,a.alpha,this.fillAlpha),x=b(a.fillratio,this.fillRatio),r=b(a.fillangle,this.fillAngle),w=e(a.borderthickness,this.borderThickness),y=b(a.bordercolor,this.borderColor),u=b(a.borderalpha,this.borderAlpha),A=a.labelpadding||this.markerLabelPadding;if(D){l=l?ga(ra(l,[1,2,3],{formattedValue:H,label:k},a)):H?k+this.tooltipSepChar+
H:k;void 0!==H&&null!==H?k=k+this.labelSepChar+H:isNaN(g)?g=1:0>g?g=0:5<g&&(g=5);a={x:a.x.toString(),y:a.y.toString(),fillcolor:s,fillalpha:q,fillratio:x,fillangle:r,borderthickness:w,bordercolor:y,borderalpha:u,hovereffect:b(a.showhovereffect,this.showHoverEffect),radius:n.toString(),tooltext:this.showMarkerTooltip?l:"",link:a.link,showshadow:e(a.showshadow,this.shadow),_markerLabel:k,_markerId:a.id,id:(a.id+"").toLowerCase(),onmouseover:function(a){var c=a.data,b=c.options,e=c.bounds,k=b._markerEventArgs;
(c=c.wrapper)&&b.hovereffect&&(m.call(d),c.attr(b._hoverattrs));k||(k=b._markerEventArgs={x:e.x1/e.xs,y:e.y1/e.ys,scaledX:e.x1,scaledY:e.y1,chartX:h+e.x1,chartY:f+e.y1,id:b._markerId,label:b._markerLabel});U.raiseEvent("markerRollOver",k,d.fusionCharts,a)},onmouseout:function(a){var c=a.data,b=c.wrapper;b&&c.options.hovereffect&&b.attr(c.options._defaultattrs);U.raiseEvent("markerRollOut",c.options._markerEventArgs,d.fusionCharts,a)},onclick:function(a){U.raiseEvent("markerClick",a.data.options._markerEventArgs,
d.fusionCharts,a)}};"triangle"===D?F(a,{type:"polygon",sides:3,startangle:this.startAngle}):"diamond"===D?F(a,{type:"polygon",sides:4,startangle:this.startAngle}):"arc"===D?F(a,{type:"arc",startangle:0,endangle:360,innerradius:.6*n}):"circle"===D?a.type="circle":(A=this.getShapeArgs(),this.dataEnabled&&this.valueToRadius&&void 0!==a.radius?delete A.radius:(!A.radius&&(A.radius=this.markerRadius),A.radius=A.radius*g*this.autoScale),F(a,A));F(a,{hoverfillcolor:b(a.fillhovercolor,this.hoverFillColor,
a.fillcolor),hoverfillalpha:b(a.fillhoveralpha,this.hoverFillAlpha,a.fillalpha),hoverfillratio:b(a.fillhoverratio,this.hoverFillRatio,a.fillratio),hoverfillangle:b(a.fillhoverangle,this.hoverFillAngle,a.fillangle),hoverborderthickness:e(a.borderhoverthickness,this.hoverBorderThickness,a.borderthickness),hoverbordercolor:b(a.borderhovercolor,this.hoverBorderColor,a.bordercolor),hoverborderalpha:b(a.borderhoveralpha,this.hoverBorderAlpha,a.borderalpha)});a._defaultattrs={fill:V({alpha:a.fillalpha,color:a.fillcolor,
angle:a.fillangle,ratio:a.fillratio}).toString(),"stroke-width":"0"!==a.showborder?a.borderthickness:0,stroke:Y(a.bordercolor,a.borderalpha)};a._hoverattrs={fill:V({alpha:a.hoverfillalpha,color:a.hoverfillcolor,angle:a.hoverfillangle,ratio:a.hoverfillratio}).toString(),"stroke-width":"0"!==a.showborder?a.hoverborderthickness:0,stroke:Y(a.hoverbordercolor,a.hoverborderalpha)};"image"===a.type&&(a.borderthickness=a.borderthickness||0,a.onload=function(a){var c=this.options,b=a.width;a=a.height;var f=
(Number(c.x)-b/(2*d.sFactor))*d.sFactor,c=(Number(c.y)-a/(2*d.sFactor))*d.sFactor,h;if(b&&a)for(h in{wrapper:1,tracker:1})this[h]&&this[h].attr({x:f,y:c,width:b,height:a})});this.drawOptions.shape=a;if(!this.showMarkerLabels)return{markerShape:a};A=a.labelpadding||this.markerLabelPadding;g=this.getLabelOptions(v,A,a);v=g.align;D=g.valign;l=c._labelBaseWidth;H=c._labelBaseHeight;n=c._labelXOffset;c=c._labelYOffset;l=this.labelWrapWidth?this.labelWrapWidth:this.getWrapWidth[v](l,Number(g.x)+n);c=this.labelWrapHeight?
this.labelWrapHeight:this.getWrapHeight[D](H,Number(g.y)+c);l>A&&(l-=A);c>A&&(c-=A);this.drawOptions.label=F({type:"text"},{text:k,tooltext:a.tooltext,x:g.x,y:g.y,align:v,valign:g.valign,wrap:1,wrapwidth:l,wrapheight:c,fontsize:this.markerFontSize/d.sFactor,font:this.markerFont,fillcolor:this.markerFontColor});return{markerShape:a,markerLabel:this.drawOptions.label}}}},show:function(){this.setMarkerVisibility(!0)},hide:function(){this.setMarkerVisibility(!1)},setMarkerVisibility:function(d){var c=
this.rapi&&this.rapi.internalAnnotations;if(c=(c=c&&c.markers)&&c.items)if(c=c[this._annotationIndex])this._origFill||(this._origFill=V({alpha:c.fillAlpha,color:c.fillColor,angle:c.fillAngle,ratio:c.fillRatio}),this._hideFill=V({alpha:"0",color:c.fillColor,angle:c.fillAngle,ratio:c.fillRatio})),d?c.wrapper.attr({fill:this._origFill}):c.wrapper.attr({fill:this._hideFill})},getShapeArgs:function(){var d=F({},this.shapeObj),c;return d?("polygon"===d.type?3>d.sides?d.type="circle":d.startangle=this.startAngle:
"arc"===d.type&&(c=(d.radius||this.markerRadius)*this.autoScale,d.radius=c,d.innerradius=d.innerradius&&d.innerradius*this.autoScale||.6*c),d):null},destroy:function(){var d=this.markerShape,c=this.markerLabel,b;d&&d.destroy();c&&c.destroy();for(b in this)delete this[b]},getLabelAlignment:{top:function(d,c,b){return{x:d.toString(),y:(c-b).toString(),align:"center",valign:"top"}},left:function(d,c,b){return{x:(d-b).toString(),y:c.toString(),align:"right",valign:"middle"}},right:function(d,c,b){return{x:(d+
b).toString(),y:c.toString(),align:"left",valign:"middle"}},bottom:function(d,c,b){return{x:d.toString(),y:(c+b).toString(),align:"center",valign:"bottom"}},center:function(d,c){return{x:d.toString(),y:c.toString(),align:"center",valign:"middle"}}},getWrapWidth:{right:function(d,c){return c},left:function(d,c){return d-c},center:function(d,c){return 2*ba(c,d-c)}},getWrapHeight:{top:function(d,c){return c},middle:function(d,c){return 2*ba(c,d-c)},bottom:function(d,c){return d-c}}};P(C.eventList,{entityrollover:"FC_Event",
entityrollout:"FC_Event"});N("geo",{name:"geo",friendlyName:"Map",revision:1,creditLabel:ya,standaloneInit:!1,annotationInteractionEvents:!1,charttopmargin:10,chartrightmargin:10,chartbottommargin:10,chartleftmargin:10,baseWidth:400,baseHeight:300,baseScaleFactor:1,defaultSeriesType:"geo",rendererId:"maps",entities:{},draw:function(d,c){var b=this.renderer,f=this.chartInstance;b||(b=this.renderer=new N("renderer."+this.rendererId));this.updateDefaultAnnotations();f.addEventListener("internal.mapdrawingcomplete",
function(a,d){c&&c.apply(this,[d.renderer]);a.detachHandler()});return b.init(this,d,function(a){a.checkComplete()})},chart:function(d,c){F(this.dataObj.chart,{charttopmargin:this.dataObj.chart.maptopmargin,chartrightmargin:this.dataObj.chart.maprightmargin,chartbottommargin:this.dataObj.chart.mapbottommargin,chartleftmargin:this.dataObj.chart.mapleftmargin,animation:this.dataObj.chart.animation||"0"});var h=this.dataObj,f=va(h,d,c,this),a=h.chart,g=h.markers,m=f.chart,k=f[pa],v=m.useRoundEdges=1===
e(a.useroundedges),l=v?1:0,v=v?0:1,n=m.use3DLighting=1===e(a.use3dlighting,1),q=F({},f.tooltip.style),s=new Ha(this.colorPaletteMap,(0<a.palette&&6>a.palette?a.palette:e(this.paletteIndex,1))-1),u=b(a.basefont,"Verdana,sans"),x=Ca(a.basefontsize,10),r=b(a.basefontcolor,s.basefontcolor),w=Ca(a.outcnvbasefontsize,x),y=b(a.outcnvbasefont,u),B=w+"px",A=aa(b(a.outcnvbasefontcolor,r)),z=b(a.bgcolor,a.canvasbgcolor,s.canvasbgcolor),p=b(a.bgalpha,a.canvasbgalpha,s.canvasbgalpha),G=e(a.usevaluesformarkers,
h.markers&&h.markers.items&&h.markers.items.length,!(h.markers&&h.markers.application&&h.markers.application.length&&h.markers.definition&&h.markers.definition.length)),t,I,K,E,J,N,P,x=x+"px",r=aa(r);this.realtimeEnabled&&this.postHCJSONCreation&&this.postHCJSONCreation.call(this,f);m.events.click=this.linkClickFN;k.numberFormatter=this.numberFormatter;F(k,{width:d,height:c,showTooltip:e(a.showtooltip,this.showtooltip,1),showHoverEffect:e(a.showhovereffect,1),tooltipSepChar:b(a.tooltipsepchar,", "),
showValues:e(a.showvalues,this.showValues,1),showCanvasBG:b(a.showcanvasbg,1),useValuesForMarkers:G,adjustViewPortForMarkers:e(a.adjustviewportformarkers,G),flatScrollBars:e(a.flatscrollbars,0),scrollBar3DLighting:e(a.scrollbar3dlighting,1),outCanvasStyle:{fontFamily:y,color:A,fontSize:B},inCanvasStyle:{fontFamily:u,fontSize:x,color:r}});ha(k.outCanvasStyle);t=ha(k.inCanvasStyle);k.trendStyle=k.outCanvasStyle;"0"==k.showCanvasBG&&(p="0");I=b(a.entitybordercolor,a.bordercolor,s.plotbordercolor);K=
b(a.entityfillcolor,a.fillcolor,s.plotfillcolor);E=b(a.entityfillalpha,a.fillalpha,s.plotfillalpha);J=b(a.entityfillratio,a.fillratio,s.plotfillratio);N=b(a.entityfillangle,a.fillangle,s.plotfillangle);P=b(a.nullentityfillcolor,a.nullentitycolor,K);G=e(a.showcanvasborder,v)?e(a.canvasborderthickness,1):0;F(f,{chart:{emulateFlashGutter:e(a._emulateflashgutter,1),defaultSeriesType:this.defaultSeriesType,paletteIndex:s.index,borderRadius:e(a.canvasborderradius,0),borderColor:Y(b(a.canvasbordercolor,
s.canvasbordercolor),b(a.canvasborderalpha,s.canvasborderalpha)),borderWidth:G,borderDashStyle:e(a.canvasborderdashed,0)?ua(e(a.canvasborderdashlen,4),e(a.canvasborderdashgap,2),G):void 0,backgroundColor:V({color:z,alpha:p,angle:b(a.bgangle,a.canvasbgangle,s.canvasbgangle),ratio:b(a.bgratio,a.canvasbgratio,s.canvasbgratio)}),plotBorderColor:"#ffffff",plotBorderWidth:0,plotBackgroundColor:V({color:"#ffffff",alpha:0}),bgSWF:b(a.bgimage,a.bgswf),bgSWFAlpha:e(a.bgimagealpha,a.bgswfalpha,100),bgImageScale:e(a.bgimagescale,
100),bgImageDisplayMode:b(a.bgimagedisplaymode,"none").toLowerCase(),logoURL:sa(a.logourl),logoPosition:b(a.logoposition,"tl").toLowerCase(),logoAlpha:e(a.logoalpha,100),logoLink:sa(a.logolink),logoScale:e(a.logoscale,100),logoLeftMargin:e(a.logoleftmargin,0),logoTopMargin:e(a.logotopmargin,0),toolbar:function(){var f={button:{}},h=f.button,k;h.scale=e(a.toolbarbuttonscale,1.15);h.width=e(a.toolbarbuttonwidth,15);h.height=e(a.toolbarbuttonheight,15);h.radius=e(a.toolbarbuttonradius,2);h.spacing=e(a.toolbarbuttonspacing,
5);h.fill=Y(b(a.toolbarbuttoncolor,"ffffff"));h.labelFill=Y(b(a.toolbarlabelcolor,"cccccc"));h.symbolFill=Y(b(a.toolbarsymbolcolor,"ffffff"));h.hoverFill=Y(b(a.toolbarbuttonhovercolor,"ffffff"));h.stroke=Y(b(a.toolbarbuttonbordercolor,"bbbbbb"));h.symbolStroke=Y(b(a.toolbarsymbolbordercolor,"9a9a9a"));h.strokeWidth=e(a.toolbarbuttonborderthickness,1);h.symbolStrokeWidth=e(a.toolbarsymbolborderthickness,1);k=h.symbolPadding=e(a.toolbarsymbolpadding,5);h.symbolHPadding=e(a.toolbarsymbolhpadding,k);
h.symbolVPadding=e(a.toolbarsymbolvpadding,k);k=f.position=b(a.toolbarposition,"tr").toLowerCase();switch(k){case "tr":case "tl":case "br":case "bl":break;default:k="tr"}h=f.hAlign="left"===(""+a.toolbarhalign).toLowerCase()?"l":k.charAt(1);k=f.vAlign="bottom"===(""+a.toolbarvalign).toLowerCase()?"b":k.charAt(0);f.hDirection=e(a.toolbarhdirection,"r"===h?-1:1);f.vDirection=e(a.toolbarvdirection,"b"===k?-1:1);f.vMargin=e(a.toolbarvmargin,6);f.hMargin=e(a.toolbarhmargin,10);f.x=e(a.toolbarx,"l"===h?
0:d);f.y=e(a.toolbary,"t"===k?0:c);return f}()},title:{text:ga(a.caption),offsetX:Number(a.captionxshift),offsetY:Number(a.captionyshift),position:b(a.captionposition,void 0!==a.captionxshift||void 0!==a.captionyshift?"top left":"top"),padding:e(a.captionpadding,10),style:{fontFamily:b(a.captionfontfamily,y),color:b(a.captionfontcolor,A).replace(/^#?([a-f0-9]+)/ig,"#$1"),fontSize:e(a.captionfontsize,w+3)+"px",fontWeight:0===e(a.captionfontbold)?"normal":"bold"}},subtitle:{text:ga(a.subcaption),style:{fontFamily:b(a.subcaptionfontfamily,
a.captionfontfamily,y),color:b(a.subcaptionfontcolor,a.captionfontcolor,A).replace(/^#?([a-f0-9]+)/ig,"#$1"),fontSize:e(a.subcaptionfontsize,e(qa(a.captionfontsize-3,1),w))+"px",fontWeight:0===e(a.subcaptionfontbold)?"normal":"bold"}},orphanStyles:{defaultStyle:{style:F({},k.inCanvasStyle)}},tooltip:{enabled:0!==k.showTooltip,style:{fontFamily:u,fontSize:x,lineHeight:t,color:r,padding:e(a.tooltippadding,this.tooltippadding,3)+"px",backgroundColor:Y(b(q.backgroundColor,a.tooltipbgcolor,s.tooltipbgcolor),
b(a.tooltipbgalpha,"100")),borderColor:Y(b(q.borderColor,a.tooltipbordercolor,s.tooltipbordercolor),b(a.tooltipborderalpha,"100")),borderWidth:e(a.tooltipborderthickness,v)+"px",borderRadius:e(a.tooltipborderradius,l+1)+"px"},constrain:e(a.constraintooltip,1),shadow:e(a.showtooltipshadow,a.showshadow,1)?{enabled:!0,opacity:qa(e(a.tooltipbgalpha,100),e(a.tooltipborderalpha,100))/100}:!1},legend:{itemStyle:{fontFamily:b(a.legenditemfont,y),fontSize:e(a.legenditemfontsize,w)+"px",color:aa(b(a.legenditemfontcolor,
A)),fontWeight:e(a.legenditemfontbold)?"bold":"normal"},itemHiddenStyle:{fontFamily:y,fontSize:B,color:aa(b(a.legenditemhiddencolor,A))},itemHoverStyle:{color:aa(b(a.legenditemhoverfontcolor,a.legenditemfontcolor,A))},enabled:e(a.showlegend,1),title:{text:ga(a.legendcaption),style:{fontFamily:b(a.legendcaptionfont,y),fontSize:e(a.legendcaptionfontsize,w)+"px",color:aa(b(a.legendcaptionfontcolor,A)),fontWeight:e(a.legendcaptionfontbold,1)?"bold":"normal"},align:S[b(a.legendcaptionalignment)]},position:b(a.legendposition,
0===e(h.colorrange&&h.colorrange.gradient,0)?"right":"bottom"),backgroundColor:b(a.legendbgcolor,s.bgcolor),backgroundAlpha:b(a.legendbgalpha,"100"),borderColor:b(a.legendbordercolor,s.legendbordercolor),borderThickness:b(a.legendborderthickness,"1"),borderAlpha:b(a.legendborderalpha,"100"),shadow:e(a.legendshadow,1),allowDrag:e(a.legendallowdrag,0),scroll:{scrollBgColor:b(a.legendscrollbgcolor,a.scrollcolor,"AAAAAA"),scrollBtnColor:b(a.legendscrollbtncolor,"BBBBBB"),scrollBarColor:b(a.legendscrollbarcolor,
"CCCCCC")},reversed:e(a.reverselegend,0),interactive:e(a.interactivelegend,0),minColor:P,lighting3d:n},markers:{dataLabels:{style:{fontFamily:b(a.markerfont,u),fontSize:e(a.markerfontsize,parseInt(x,10)),fontColor:b(a.markerfontcolor,r)}},showTooltip:e(a.showmarkertooltip,k.showTooltip),showLabels:e(a.showmarkerlabels,a.showlabels,1),showHoverEffect:e(a.showmarkerhovereffect,1),labelPadding:b(a.markerlabelpadding,"5"),labelWrapWidth:e(a.markerlabelwrapwidth,0),labelWrapHeight:e(a.markerlabelwrapheight,
0),fillColor:b(a.markerfillcolor,a.markerbgcolor,s.markerfillcolor),fillAlpha:b(a.markerfillalpha,s.markerfillalpha),fillAngle:b(a.markerfillangle,s.markerfillangle),fillRatio:b(a.markerfillratio,s.markerfillratio),fillPattern:b(a.markerfillpattern,s.markerbgpattern),hoverFillColor:a.markerfillhovercolor,hoverFillAlpha:a.markerfillhoveralpha,hoverFillRatio:a.markerfillhoverratio,hoverFillAngle:a.markerfillhoverangle,borderThickness:b(a.markerborderthickness,1),borderColor:b(a.markerbordercolor,s.markerbordercolor),
borderAlpha:e(a.markerborderalpha,s.markerborderalpha),hoverBorderThickness:a.markerborderhoverthickness,hoverBorderColor:a.markerborderhovercolor,hoverBorderAlpha:a.markerborderhoveralpha,radius:e(a.markerradius&&C.trimString(a.markerradius),7),shapeId:b(a.defaultmarkershape,"circle"),labelSepChar:b(a.labelsepchar,", "),tooltipSepChar:k.tooltipSepChar,autoScale:e(a.autoscalemarkers,0),tooltext:b(g&&g.tooltext,a.markertooltext),dataEnabled:k.useValuesForMarkers,valueToRadius:e(a.markerradiusfromvalue,
1),valueMarkerAlpha:b(a.valuemarkeralpha,"75"),hideNull:e(a.hidenullmarkers,0),nullRadius:e(a.nullmarkerradius,a.markerradius,7),adjustViewPort:e(a.adjustviewportformarkers,0),startAngle:e(a.markerstartangle,90),maxRadius:e(a.maxmarkerradius,0),minRadius:e(a.minmarkerradius,0),applyAll:e(a.applyallmarkers,0),shadow:e(a.showmarkershadow,a.showshadow,0)},connectors:{showHoverEffect:e(a.showconnectorhovereffect,1),thickness:e(a.connectorthickness,a.markerconnthickness,"2"),color:b(a.connectorcolor,a.markerconncolor,
s.markerbordercolor),alpha:b(a.connectoralpha,a.markerconnalpha,"100"),hoverthickness:e(a.connectorhoverthickness,a.connectorthickness,a.markerconnthickness,"2"),hovercolor:b(a.connectorhovercolor,a.connectorcolor,a.markerconncolor,s.markerbordercolor),hoveralpha:b(a.connectorhoveralpha,a.connectoralpha,a.markerconnalpha,"100"),dashed:e(a.connectordashed,a.markerconndashed,0),dashLen:e(a.connectordashlen,a.markerconndashlen,3),dashGap:e(a.connectordashgap,a.markerconndashgap,2),font:b(a.connectorfont,
a.markerconnfont,u),fontColor:b(a.connectorfontcolor,a.markerconnfontcolor,r),fontSize:e(a.connectorfontsize,a.markerconnfontsize,parseInt(x,10)),showLabels:e(a.showconnectorlabels,a.showmarkerlabels,a.showlabels,1),labelBgColor:b(a.connectorlabelbgcolor,a.markerconnlabelbgcolor,s.plotfillcolor),labelBorderColor:b(a.connectorlabelbordercolor,a.markerconnlabelbordercolor,s.markerbordercolor),shadow:e(a.showconnectorshadow,a.showmarkershadow,a.showshadow,0),showTooltip:e(a.showconnectortooltip,a.showmarkertooltip,
k.showTooltip),tooltext:b(g&&g.connectortooltext,a.connectortooltext),hideOpen:e(a.hideopenconnectors,1)},entities:{baseScaleFactor:this.baseScaleFactor,dataLabels:{style:{fontFamily:u,fontSize:x,lineHeight:t,color:f.plotOptions.series.dataLabels.color=r}},fillColor:K,fillAlpha:E,fillRatio:J,fillAngle:N,borderColor:I,borderAlpha:b(a.entityborderalpha,a.borderalpha,this.borderAlpha,"100"),borderThickness:e(a.showentityborder,a.showborder,1)?e(a.entityborderthickness,a.borderthickness,1):0,scaleBorder:e(a.scaleentityborder,
a.scaleborder,0),hoverFillColor:b(a.entityfillhovercolor,a.hoverfillcolor,a.hovercolor,s.plothoverfillcolor),hoverFillAlpha:b(a.entityfillhoveralpha,a.hoverfillalpha,a.hoveralpha,s.plothoverfillalpha),hoverFillRatio:b(a.entityfillhoverratio,a.hoverfillratio,a.hoverratio,s.plothoverfillratio),hoverFillAngle:b(a.entityfillhoverangle,a.hoverfillangle,a.hoverangle,s.plothoverfillangle),hoverBorderThickness:b(a.entityborderhoverthickness,a.hoverborderthickness),hoverBorderColor:b(a.entityborderhovercolor,
s.plotbordercolor),hoverBorderAlpha:b(a.entityborderhoveralpha,s.plotborderalpha),nullEntityColor:P,nullEntityAlpha:b(a.nullentityfillalpha,a.nullentityalpha,E),nullEntityRatio:b(a.nullentityfillratio,a.nullentityratio,J),nullEntityAngle:b(a.nullentityfillangle,a.nullentityangle,N),connectorColor:b(a.labelconnectorcolor,a.connectorcolor,r),connectorAlpha:b(a.labelconnectoralpha,a.connectoralpha,"100"),connectorThickness:e(a.labelconnectorthickness,a.borderthickness,1),showHoverEffect:e(a.showentityhovereffect,
a.usehovercolor,k.showHoverEffect),hoverOnNull:e(a.hoveronnull,a.entityhoveronnull,1),labelPadding:e(a.labelpadding,5),showLabels:e(a.showlabels,1),labelsOnTop:e(a.entitylabelsontop,1),includeNameInLabels:e(a.includenameinlabels,1),includeValueInLabels:e(a.includevalueinlabels,0),useSNameInTooltip:e(a.usesnameintooltip,0),useShortName:e(a.usesnameinlabels,1),labelSepChar:b(a.labelsepchar,", "),showTooltip:e(a.showentitytooltip,k.showTooltip),tooltipSepChar:k.tooltipSepChar,tooltext:a.entitytooltext,
hideNullEntities:e(a.hidenullentities,0),showHiddenEntityBorder:e(a.showhiddenentityborder,1),showNullEntityBorder:e(a.shownullentityborder,1),hiddenEntityColor:b(a.hiddenentitycolor,a.hiddenentityfillcolor,a.hiddenentityalpha||a.hiddenentityfillalpha?P:"ffffff"),hiddenEntityAlpha:b(a.hiddenentityalpha,a.hiddenentityfillalpha,.001),shadow:e(a.showshadow,this.defaultPlotShadow,s.shadow)},entitydef:{useSNameAsId:e(a.usesnameasid,0)}});f.legend.title.style.lineHeight=ha(f.legend.title.style);f.legend.itemStyle.lineHeight=
ha(f.legend.itemStyle);f.legend.itemHiddenStyle.lineHeight=ha(f.legend.itemHiddenStyle);g=Ba(d,c,a.markermaxradius,a.markerminradius);f.markers.maxRadius=g.max;f.markers.minRadius=g.min;a.tooltipcolor&&(f.tooltip.style.color=ka(a.tooltipcolor));void 0!==b(a.clickurl)&&(m.link=a.clickurl,m.style.cursor="pointer",ia&&(m.style._cursor="hand"),f.plotOptions.series.point.events.click=function(){m.events.click.call({link:a.clickurl})});g=m.bgImageDisplayMode;k=sa(a.bgimagevalign,"").toLowerCase();l=sa(a.bgimagehalign,
"").toLowerCase();"tile"==g||"fill"==g||"fit"==g?("top"!=k&&"middle"!=k&&"bottom"!=k&&(k="middle"),"left"!=l&&"middle"!=l&&"right"!=l&&(l="middle")):("top"!=k&&"middle"!=k&&"bottom"!=k&&(k="top"),"left"!=l&&"middle"!=l&&"right"!=l&&(l="left"));m.bgImageVAlign=k;m.bgImageHAlign=l;this.parseStyles(f);ha(f.title.style);ha(f.subtitle.style);ha(f.tooltip.style);f.plotOptions.series.allowPointSelect=!0;this.parseExportOptions(f);this.preSeriesAddition&&this.preSeriesAddition(f,h,d,c);this.series&&this.series(h,
f,this.name,d,c);this.postSeriesAddition&&this.postSeriesAddition(f,h,d,c);this.spaceManager(f,h,d,c);X.console&&X.FC_DEV_ENVIRONMENT&&X.console.log(f);return f},series:function(d,c){function h(d){for(I=d&&d.length||0;I--;)y=d[I],p=y.value,y.cleanValue=a.getCleanValue(p),y.formattedValue=null!==y.cleanValue?a.dataLabels(p):void 0,y.origValue=p,null!==y.cleanValue&&(r=ba(y.cleanValue,r),w=qa(y.cleanValue,w))}function f(a,d,f){for(I=a&&a.length||0;I--;){y=a[I];var h;a:{h=e(y.value);for(var g=void 0,
l=void 0,g=void 0,D=z&&z.length||0;D--;)if(g=z[D],l=Number(g.maxvalue),g=e(g.minvalue,c.colorRange.scaleMin),h>=g&&h<=l){h=D;break a}h=null}G=h;null!==G&&(B="gradient"===u.type?c.colorRange.getColorObj(y.value).code:s&&s[G]&&b(s[G].color,s[G].code),x[G]||(x[G]=[]),B&&(y.color=y.color?y.color:B,d&&(y.alpha=y.alpha?y.alpha:d),f&&(v||y.fillhoveralpha||(y.fillhoveralpha=y.alpha),k||y.fillhovercolor||(y.fillhovercolor=y.color)),x[G].push(y)))}}var a=this.numberFormatter,g=this.hcJSON.series,m=c.markers.valueMarkerAlpha,
k=c.markers.hasHoverColor,v=c.markers.hasHoverAlpha,l=this.dataObj,n=c[pa],q=l.colorrange,s=q&&q.color,u=c.legend,x={},q={legendClick:function(){var a;if(a=this.chart)!this.legend&&(this.legend=this.plot.legend),a.legendClick(this,!this.visible)},getEventArgs:function(){var a;if(a=this.chart)return!this.legend&&(this.legend=this.plot.legend),a.getEventArgs(this)},setVisible:function(a){var d=this.data,b=this.legendItem,c=this.visible;this.visible=a=void 0===a?!c:a;b&&u.colorizeItem&&u.colorizeItem(this,
a);for(c=d&&d.length;c--;)(b=d[c].mapItem)&&(a?b.show&&b.show():b.hide&&b.hide())}},r=Infinity,w=-Infinity,y,B,A,z,p,G,t,I;h(l.data||[]);n.useValuesForMarkers&&h(l.markers&&l.markers.items||[]);n._doNotShowLegend=!0;u.type=l.colorrange&&"1"===l.colorrange.gradient?"gradient":"point";Infinity===r&&(r=void 0);-Infinity===w&&(w=void 0);n.dataMin=r;n.dataMax=w;c.colorRange=new C.colorRange({colorRange:l.colorrange,dataMin:r,dataMax:w,defaultColor:u.minColor,numberFormatter:a});I=(z=c.colorRange.colorArr)&&
z.length||0;if(0<I){for(;I--;)A=z[I],!n._doNotShowLegend||""===A.label&&void 0===A.label||(n._doNotShowLegend=!1),g.push(F({type:this.defaultSeriesType,showInLegend:!0,data:[],plot:{},name:A.label,color:A.code,rangeMin:A.minvalue,rangeMax:A.maxvalue,visible:!0},q));f(l.data||[]);n.useValuesForMarkers&&f(l.markers&&l.markers.items||[],m,!0);g=g.reverse();for(t in x)g[t]&&(g[t].data=x[t])}else g.push({type:this.defaultSeriesType,data:[]});n._doNotShowLegend&&(this.hcJSON.legend.enabled=!1)},preliminaryScaling:function(d,
b){for(var h=b.markers&&b.markers.items||[],f=h&&h.length||0,a=Infinity,e=Infinity,g=-Infinity,k=-Infinity,l,m;f--;)m=h[f],l=Number(m.x),m=Number(m.y),a=ba(a,l),e=ba(e,m),g=qa(g,l),k=qa(k,m);return{x:a,y:e,x1:g,y1:k}},getScalingParameters:function(d,b,h,f){var a=d/b,e=h/(d*this.baseScaleFactor),g=f/(b*this.baseScaleFactor),k=0,l=0;e>g?(e=g,k+=(h-f*a)/2,d=200/(b*e)):(l+=(f-h/a)/2,d=200/(d*e));return{scaleFactor:e,strokeWidth:d,translateX:k,translateY:l}},calculateMarkerBounds:function(d,b,h,f,a){var e=
d.markers,g=d[pa];d=g.dataMin;for(var g=g.dataMax,k=e.minRadius,l=e.maxRadius,m=e.hideNull,n=e.nullRadius,e=e.valueToRadius,q=(b=b.markers&&b.markers.items||[],b.length)||0,s=Infinity,u=Infinity,x=-Infinity,r=-Infinity,w,y,z;q--;)y=b[q],null!==y.cleanValue?(e&&void 0===y.radius&&(y.radius=k+(l-k)*(y.cleanValue-d)/(g-d)),z=Number(y.radius),w=(Number(y.x)+f)*h,y=(Number(y.y)+a)*h,s=ba(s,w-z),u=ba(u,y-z),x=qa(x,w+z),r=qa(r,y+z)):m?y.__hideMarker=!0:void 0===y.radius&&(y.radius=n);return{x:s,y:u,x1:x,
y1:r}},spaceManager:function(b,c,h,f){var a=b.chart,e=b[pa],g=a.spacingLeft,k=a.spacingTop,l=this.baseWidth,m=this.baseHeight;h-=a.spacingRight+g;a=f-(a.spacingBottom+k);f=e._captionBlock=this.manageTitleSpace(b,c,h,a);var n=e._legendBlock=this.placeLegendBlock(b,c,h,a-f.height,f.isBottom?f.height:0);h-=n.width;var a=a-f.height-n.height,q=n=0;e.useValuesForMarkers?(e.adjustViewPortForMarkers?(e=this.preliminaryScaling(b,c),e.x1>l&&(l=e.x1),0>e.x&&(l+=-e.x,q=-e.x),e.y1>m&&(m=e.y1),0>e.y&&(m+=-e.y,
n=-e.y),e=this.getScalingParameters(l,m,h,a),e=this.calculateMarkerBounds(b,c,e.scaleFactor*this.baseScaleFactor,q,n),b=a,c=h,0>e.x&&(g+=-e.x,h+=e.x),0>e.y&&(k+=-e.y,a+=e.y),e.x1>c&&(h-=e.x1-c),e.y1>b&&(a-=e.y1-b)):(e=this.getScalingParameters(l,m,h,a),this.calculateMarkerBounds(b,c,e.scaleFactor*this.baseScaleFactor,q,n)),e=this.getScalingParameters(l,m,h,a),g+=q*e.scaleFactor*this.baseScaleFactor,k+=n*e.scaleFactor*this.baseScaleFactor):e=this.getScalingParameters(l,m,h,a);/bottom/i.test(f.position)||
(k+=f.height);this.scaleFactor=e.scaleFactor;this.strokeWidth=e.strokeWidth;this.translateX=e.translateX+g;this.translateY=e.translateY+k},placeGLegendBlockRight:C.placeGLegendBlockRight,placeGLegendBlockBottom:C.placeGLegendBlockBottom,placeLegendBlock:function(b,c,e,f,a){var g=b.legend,l=b[pa],k=g.position.toLowerCase(),m={position:k};if("0"===c.chart.showlegend||l._doNotShowLegend)return m.height=0,m.width=0,m;"bottom"===k?(m.height="gradient"===g.type?this.placeGLegendBlockBottom(b,c,e,f):this.placeLegendBlockBottom(b,
c,e,f),m.width=0,a&&(g.y=-a)):(e/=2,m.width="gradient"===g.type?this.placeGLegendBlockRight(b,c,e,f):this.placeLegendBlockRight(b,c,e,f),m.height=0);return m},manageTitleSpace:function(b,c,e,f){var a=this.hcJSON;b=a.title;c=a.chart;var a=a.subtitle,g=this.smartLabel,l=f/2,k=0,m=b.position.toLowerCase(),n=b.padding,q=!1,u=b.offsetX,s=b.offsetY,z=0,x={},r,w;if(""===b.text&&""===a.text)return{height:0,position:m};isNaN(u)&&isNaN(s)||(q=!0,u=isNaN(u)?0:u,s=isNaN(s)?0:s);r=b.text;if(""!==r){g.setStyle(b.style);
w=g.getOriSize(r);if(w.width>e||w.height>l)w=g.getSmartText(r,e,l),b.text=w.text,w.tooltext&&(b.originalText=w.tooltext);b.height=z=w.height;k+=z}l-=k;r=a.text;if(""!==r){g.setStyle(a.style);w=g.getOriSize(r);if(w.width>e||w.height>l)w=g.getSmartText(r,e,l),a.text=w.text,w.tooltext&&(a.originalText=w.tooltext);k+=a.height=w.height}k=k+n>l?l:k+n;m.match(/left/)?(a.align=b.align="start",a.x=b.x=c.marginLeft):m.match(/right/)?(a.align=b.align="end",a.x=b.x=e):(a.align=b.align="middle",a.x=b.x=e/2);/bottom/.test(m)?
(e=f-k+c.marginTop+n,b.y=e,a.y=e+z,q?(b.y+=s,a.y+=s,b.x+=u,a.x+=u):(c.marginBottom+=k,x.isBottom=!0)):q?(b.y+=s,a.y+=s,b.x+=u,a.x+=u):c.marginTop+=k;x.height=q?0:k;x.position=m;return x},getFirstId:function(){return this.firstEntity},getEntityPaths:function(b){var c={},e=this.entities,f;if(b){for(f in e)c[f]=e[f];return c}return e},redefineEntities:function(b,c){var e=this.entities,f={},a={},g=0,l,k,m,n,q,u,s,z;for(s=b.length;s--;)if(l=b[s],k=l.internalid,q=l.newid?l.newid:k,m=l.sname,l=l.lname,n=
e[k],k=C.trimString(k),q=C.trimString(q),n){f[q]=q={origId:k};a[k]=!0;for(u in n)q[u]=n[u];q.shortLabel=m?m:n.shortLabel;q.label=l?l:n.label}this.entities={};for(z in f)f[z].origId=z,this.entities[z.toLowerCase()]=f[z],g+=1;for(z in e)if(q=e[z],z=C.trimString(z),!a[z]){c.useSNameAsId?(this.entities[q.shortLabel.toLowerCase()]=n={},n.origId=q.shortLabel):(this.entities[z.toLowerCase()]=n={},n.origId=z);for(u in q)n[u]=q[u];g+=1}this.entityCount=g},colorPaletteMap:{basefontcolor:"foregroundcolor",bordercolor:"foregrounddarkcolor",
borderalpha:"foregrounddarkalpha",bgcolor:"backgroundlightcolor",bgalpha:"backgroundlightalpha",bgangle:"backgroundlightangle",bgratio:"backgroundlightratio",canvasbordercolor:"foregrounddarkcolor",canvasborderalpha:"foregrounddarkalpha",canvasbgcolor:"backgroundlightcolor",canvasbgalpha:"backgroundlightalpha",canvasbgangle:"backgroundlightangle",canvasbgratio:"backgroundlightratio",tooltipbordercolor:"foregrounddarkcolor",tooltipborderalpha:"foregrounddarkalpha",tooltipbgcolor:"backgroundlightcolor",
tooltipbgalpha:"backgroundlightalpha",tooltipfontcolor:"foregroundcolor",legendbordercolor:"foregrounddarkcolor",legendborderalpha:"foregrounddarkalpha",markerbordercolor:"foregroundlightcolor",markerborderalpha:"foregroundlightalpha",markerfillcolor:"backgrounddarkcolor",markerfillalpha:"backgrounddarkalpha",markerfillangle:"backgrounddarkangle",markerfillratio:"backgrounddarkratio",plotfillcolor:"backgroundcolor",plotfillalpha:"backgroundalpha",plotfillangle:"backgroundangle",plotfillratio:"backgroundratio",
plothoverfillcolor:"backgrounddarkcolor",plothoverfillalpha:"backgrounddarkalpha",plothoverfillangle:"backgrounddarkangle",plothoverfillratio:"backgrounddarkratio",plotbordercolor:"foregroundcolor",plotborderalpha:"foregroundalpha",shadow:"shadow"},eiMethods:{getMapName:function(){return this.jsVars.hcObj.logic.name},getEntityList:function(){var b=this.jsVars.hcObj,b=b.entities&&b.entities.items,c,e=[],f,a;for(f in b)a=b[f],c=a.eJSON,e.push({id:a.id,originalId:a.originalId||a.id,label:c.label,shortlabel:c.shortLabel,
value:a.value,formattedValue:a.formattedValue,toolText:a.toolText});return e},getDataAsCSV:function(){var b=this.jsVars,b=b.hcObj&&b.hcObj.entities&&b.hcObj.entities.items,c='"Id","Short Name","Long Name","Value","Formatted Value"',e,f,a,g;for(e in b)f=b[e],a=f.eJSON,g=f.value,c+='\r\n"'+f.id+'","'+a.shortLabel+'","'+a.label+'","'+(void 0===g?"":g)+'","'+f.formattedValue+'"';return c},getMapAttribute:function(){var b=this.jsVars.fcObj;U.raiseWarning(this,"12061210581","run","JavaScriptRenderer~getMapAttribute()",
'Use of deprecated "getMapAttribute()". Replace with "getChartAttribute()".');return b.getChartAttribute.apply(b,arguments)},exportMap:function(){var b=this.jsVars.fcObj;U.raiseWarning(this,"12061210581","run","JavaScriptRenderer~exportMap()",'Use of deprecated "exportMap()". Replace with "exportChart()".');return b.exportChart&&b.exportChart.apply(b,arguments)},addMarker:function(b){this.jsVars.hcObj.markers.addMarkerItem(b)||U.raiseWarning(this,"1309264086","run","MapsRenderer~addMarker()","Failed to add marker. Check the options and try again.")},
updateMarker:function(b,c){var e=this.jsVars.hcObj,f=e.markers,e=e.mapAnnotations,a;b&&(b=(b+"").toLowerCase(),f=f.items[b])&&(a=f.options,F(a,c),f=f.draw().markerShape,e.update(b,f))},removeMarker:function(b){var c=this.jsVars.hcObj.markers,e;b&&(b=(b+"").toLowerCase(),(e=c.items[b])&&e.destroy(),delete c.items[b])}}},N.linebase);N("renderer.maps",{drawGraph:function(){var b=this.paper,c=this.layers,e,f,a;if(!this.options.nativeMessage){c.dataset||(c.dataset=b.group("dataset").insertAfter(c.background),
c.tracker=b.group("hot").insertAfter(c.dataset));this.shadowLayer||(this.shadowLayer=c.shadow=b.group("shadow").insertBefore(c.dataset));this.strokeWidth=this.logic.strokeWidth;e=this.logic.scaleFactor;this.translateX=f=this.logic.translateX;this.translateY=a=this.logic.translateY;this.sFactor=e*this.logic.baseScaleFactor;this.transformStr=["t",f,",",a,"s",e,",",e,",0,0"].join("");this.options.tooltip&&!1!==this.options.tooltip.enabled&&b.tooltip(this.options.tooltip.style,this.options.tooltip.shadow,
this.options.tooltip.constrain);this.mapAnnotations=new C.Annotations;this.mapAnnotations.reset(null,{id:"geo",showbelow:0,autoscale:0,grpxshift:this.translateX?this.translateX:0,grpyshift:this.translateY?this.translateY:0,xscale:100*(this.sFactor?this.sFactor:1),yscale:100*(this.sFactor?this.sFactor:1),options:{useTracker:!0}});this.processEntityDefs();this.drawEntities();if(!ia||xa)c.dataset.attr({transform:this.transformStr}),c.shadow.attr({transform:this.transformStr});this.drawMarkers()}},setScaleRange:function(b,
c){for(var e=this.options.series,f=e.length,a,g,l,k;f--;)if(l=e[f],g=(a=l.data)&&a.length)if(l.rangeMin>=b&&l.rangeMax<=c)l.setVisible(!0);else if(l.rangeMax<b||l.rangeMin>c)l.setVisible(!1);else for(;g--;)l=(k=a[g].mapItem)&&k.value,isNaN(l)||""===l||(l>=b&&l<=c?k.show():k.hide())},processEntityDefs:function(){var b=this.logic,c=this.options.series,e=c&&c.length;for(b.redefineEntities(b.dataObj.entitydef||[],this.options.entitydef);e--;)c[e].chart=this},drawEntities:function(){this.entities=new n(this.logic&&
this.logic.dataObj&&this.logic.dataObj.data,this,this.logic,this.layers.dataset)},drawMarkers:function(){var b=this.logic&&this.logic.dataObj&&this.logic.dataObj.markers||null;b&&(this.markers=new u(b,this,this.group));this.options.entities.labelsOnTop||this.entities.drawLabels()},checkComplete:function(){var b=this.logic,c=b.chartInstance;this.entities&&this.entities.isReady()&&(this.mapAnnotations.draw(this),b.hasRendered=!0,U.raiseEvent("internal.mapdrawingcomplete",{renderer:this},c))}},N["renderer.root"])},
[3,2,0,"release"]]);
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
<!doctype html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link type="text/css" rel="stylesheet" href="GwtDashboardPage.css">
<script type="text/javascript" language="javascript" src="FusionChart/js/BuildChart.js"></script>
<script type="text/javascript" language="javascript" src="FusionChart/js/fusioncharts.js"></script>
<script type="text/javascript" language="javascript" src="gwtdashboardreport/gwtdashboardreport.nocache.js"></script>
</head>
<body>
<div id="filterDiv" class="filterDiv"></div>
<div id="optioDiv"></div>
<div id="chartContainer" >
<table >
<tr>
<td><div id="chartContainer1" class="chartContainer"></div></td>
<td><div id="chartContainer2" class="chartContainer"></div></td>
</tr>
<tr> <td colspan="2"><div id="chartContainer3" class="chartContainer"></div></td></tr>
<tr> <td colspan="2"><div id="chartContainer4" class="chartContainer"></div></td></tr>
<tr> <td colspan="2"><div id="chartContainer5" class="chartContainer" ></div></td></tr>
<tr>
<td><div id="chartContainer6" class="chartContainer" ></div></td>
<td><div id="chartContainer7" class="chartContainer"></div></td>
</tr>
<tr>
<td><div id="chartContainer8" class="chartContainer" ></div></td>
<td><div id="chartContainer9" class="chartContainer"></div></td>
</tr>
<tr>
<td><div id="chartContainer10" class="chartContainer" ></div></td>
<td><div id="chartContainer11" class="chartContainer"></div></td>
</tr>
</table>
</div>
<!-- <body>
<div id="chartContainer1" class="chartContainer1">FusionCharts will load here...</div>
</body> -->
</body>
</html>
...@@ -3,28 +3,48 @@ ...@@ -3,28 +3,48 @@
<head> <head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"> <meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link type="text/css" rel="stylesheet" href="GwtDashboardPage.css"> <link type="text/css" rel="stylesheet" href="GwtDashboardPage.css">
<link type="text/css" rel="stylesheet" href="CwCustomDataGrid.css"> <script type="text/javascript" language="javascript" src="FusionChart/js/BuildChart.js"></script>
<link type="text/css" rel="stylesheet" href="BaseE12.css"> <script type="text/javascript" language="javascript" src="FusionChart/js/FusionCharts.js"></script>
<script type="text/javascript" language="javascript" src="FusionChart/js/BuildChart.js"></script> <script type="text/javascript" language="javascript" src="gwtdashboardreport/gwtdashboardreport.nocache.js"></script>
<script type="text/javascript" language="javascript" src="FusionChart/js/FusionCharts.js"></script>
<script type="text/javascript" language="javascript" src="gwtdashboardreport/gwtdashboardreport.nocache.js"></script>
</head> </head>
<body> <body>
<div id="filterDiv" class="filterDiv"></div> <div id="filterDiv" class="filterDiv"></div>
<div id="optioDiv"></div> <div id="optioDiv"></div>
<div id="view1"> <div id="chartContainer" >
<table class="tableCSS" cellpadding=0; cellspacing=0;> <table >
<tr>
<td><div id="chartContainer1" class="chartContainer"></div></td>
<td><div id="chartContainer2" class="chartContainer"></div></td>
</tr>
<tr> <td colspan="2"><div id="chartContainer3" class="chartContainer"></div></td></tr>
<tr> <td colspan="2"><div id="chartContainer4" class="chartContainer"></div></td></tr>
<tr> <td colspan="2"><div id="chartContainer5" class="chartContainer" ></div></td></tr>
<tr>
<td><div id="chartContainer6" class="chartContainer" ></div></td>
<td><div id="chartContainer7" class="chartContainer"></div></td>
</tr>
<tr>
<td><div id="chartContainer8" class="chartContainer" ></div></td>
<td><div id="chartContainer9" class="chartContainer"></div></td>
</tr>
<tr>
<td><div id="chartContainer10" class="chartContainer" ></div></td>
<td><div id="chartContainer11" class="clhartContainer"></div></td>
</tr>
<tr><td> <div id="chartContainer1" class="chartContainer" ></div></td></tr>
<tr><td ><div id="chartContainer2" class="chartContainer" ></div></td></tr>
<tr><td ><div id="chartContainer3" class="chartContainer" ></div></td></tr>
<tr><td ><div id="chartContainer4" class="chartContainer" ></div></td></tr>
<tr><td ><div id="chartContainer5" class="chartContainer" ></div></td></tr>
<tr><td ><div id="chartContainer6" class="chartContainer" ></div></td></tr>
<tr><td ><div id="chartContainer7" class="chartContainer" ></div></td></tr>
</table> </table>
</div> </div>
<!-- <body>
<div id="chartContainer1" class="chartContainer1">FusionCharts will load here...</div>
</body> -->
</body> </body>
</html> </html>
<?xml version="1.0" encoding="UTF-8"?>
<DASHBAORD_PAGE>
<OBJ_NAME>
</OBJ_NAME>
<DATA_SRC>
</DATA_SRC>
<FILTERS>
<FILTER>
<COL_NAME></COL_NAME>
<DISPLAY></DISPLAY>
<SQL></SQL>
</FILTER>
<FILTER>
<COL_NAME></COL_NAME>
<DISPLAY></DISPLAY>
<SQL></SQL>
</FILTER>
</FILTERS>
<ANALYSIS_SCOPE>
</ANALYSIS_SCOPE>
<GROUP_COMP>
<HEADER>
<![CDATA[Header]]>
</HEADER>
<FUNSION_CHART>
</FUNSION_CHART>
<FLAT_TABLE>
<COLUMN_NAME pos="1">
<![CDATA[ EmpCode ]]>
</COLUMN_NAME>
<COLUMN_NAME pos="2">
<![CDATA[ First Name ]]>
</COLUMN_NAME>
<COLUMN_NAME pos="3">
<![CDATA[ Last Name ]]>
</COLUMN_NAME>
</FLAT_TABLE>
</GROUP_COMP>
</DASHBAORD_PAGE>
<Errors>
<error id="VTORDVST01" type="E" column_name="line_no_1">
<message>Error : Invalid order of visit</message>
<description>Order of visit is must and should be Numeric
</description>
<type>E</type>
<option></option>
<time></time>
<alarm></alarm>
<source></source>
<trace>Error : Invalid order of visit</trace>
<redirect>1</redirect>
</error>
</Errors>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment