hqchart 1.1.15503 → 1.1.15518
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/umychart.vue.js +22 -14
- package/package.json +1 -1
- package/src/jscommon/umychart.js +106 -3
- package/src/jscommon/umychart.keyboard.js +9 -2
- package/src/jscommon/umychart.report.js +35 -16
- package/src/jscommon/umychart.uniapp.h5/umychart.uniapp.h5.js +151 -22
- package/src/jscommon/umychart.version.js +1 -1
- package/src/jscommon/umychart.vue/umychart.vue.js +151 -22
|
@@ -62874,6 +62874,7 @@ function FrameSplitMinuteX()
|
|
|
62874
62874
|
|
|
62875
62875
|
const minuteCoordinate = g_MinuteCoordinateData;
|
|
62876
62876
|
var xcoordinateData = minuteCoordinate.GetCoordinateData(this.Symbol, width, this.Frame.GlobalOption);
|
|
62877
|
+
if (!xcoordinateData) return;
|
|
62877
62878
|
var minuteCount=xcoordinateData.Count;
|
|
62878
62879
|
var minuteMiddleCount=xcoordinateData.MiddleCount>0? xcoordinateData.MiddleCount: parseInt(minuteCount/2);
|
|
62879
62880
|
var xcoordinate = xcoordinateData.Data;
|
|
@@ -107044,7 +107045,9 @@ var MARKET_SUFFIX_NAME=
|
|
|
107044
107045
|
CFFEX3:'.CF', //中期所 (China Financial Futures Exchange)
|
|
107045
107046
|
DCE: '.DCE', //大连商品交易所(Dalian Commodity Exchange)
|
|
107046
107047
|
CZCE: '.CZC', //郑州期货交易所
|
|
107047
|
-
|
|
107048
|
+
CZCE2:".CZCE", //郑州期货交易所
|
|
107049
|
+
GZFE:".GZFE", //广州期货交易所
|
|
107050
|
+
GZFE2:"GFEX", //广州期货交易所
|
|
107048
107051
|
INE:".INE", //上海国际能源交易中心
|
|
107049
107052
|
|
|
107050
107053
|
USA:'.USA', //美股
|
|
@@ -107259,6 +107262,25 @@ var MARKET_SUFFIX_NAME=
|
|
|
107259
107262
|
if (upperSymbol.indexOf(this.SHFE2) > 0) return true;
|
|
107260
107263
|
return false;
|
|
107261
107264
|
},
|
|
107265
|
+
|
|
107266
|
+
IsSHFEOption:function(upperSymbol)
|
|
107267
|
+
{
|
|
107268
|
+
if (!upperSymbol) return false;
|
|
107269
|
+
if (!this.IsSHFE(upperSymbol)) return false;
|
|
107270
|
+
var shortSymbol=JSChart.GetShortSymbol(upperSymbol);
|
|
107271
|
+
//ZN2605-P-20600
|
|
107272
|
+
var aryValue=shortSymbol.split("-");
|
|
107273
|
+
if (!aryValue || aryValue.length!=3) return false;
|
|
107274
|
+
|
|
107275
|
+
var strValue=aryValue[0];
|
|
107276
|
+
const regex = /([a-zA-Z]+)(\d+)/;
|
|
107277
|
+
const match = strValue.match(regex);
|
|
107278
|
+
if (!match || !match[1] || !match[2]) return false;
|
|
107279
|
+
|
|
107280
|
+
var prefix=match[1];
|
|
107281
|
+
|
|
107282
|
+
return true;
|
|
107283
|
+
},
|
|
107262
107284
|
|
|
107263
107285
|
IsCFFEX: function (upperSymbol)
|
|
107264
107286
|
{
|
|
@@ -107298,16 +107320,77 @@ var MARKET_SUFFIX_NAME=
|
|
|
107298
107320
|
return upperSymbol.indexOf(this.DCE) > 0;
|
|
107299
107321
|
},
|
|
107300
107322
|
|
|
107323
|
+
IsDCEOption:function(upperSymbol)
|
|
107324
|
+
{
|
|
107325
|
+
if (!upperSymbol) return false;
|
|
107326
|
+
if (!this.IsDCE(upperSymbol)) return false;
|
|
107327
|
+
var shortSymbol=JSChart.GetShortSymbol(upperSymbol);
|
|
107328
|
+
//M2605-P-2400
|
|
107329
|
+
var aryValue=shortSymbol.split("-");
|
|
107330
|
+
if (!aryValue || aryValue.length!=3) return false;
|
|
107331
|
+
|
|
107332
|
+
var strValue=aryValue[0];
|
|
107333
|
+
const regex = /([a-zA-Z]+)(\d+)/;
|
|
107334
|
+
const match = strValue.match(regex);
|
|
107335
|
+
if (!match || !match[1] || !match[2]) return false;
|
|
107336
|
+
|
|
107337
|
+
var prefix=match[1];
|
|
107338
|
+
|
|
107339
|
+
return true;
|
|
107340
|
+
},
|
|
107341
|
+
|
|
107301
107342
|
IsCZCE: function (upperSymbol)
|
|
107302
107343
|
{
|
|
107303
107344
|
if (!upperSymbol) return false;
|
|
107304
|
-
|
|
107345
|
+
|
|
107346
|
+
return upperSymbol.indexOf(this.CZCE) > 0 || upperSymbol.indexOf(this.CZCE2)>0;
|
|
107347
|
+
},
|
|
107348
|
+
|
|
107349
|
+
IsCZCEOption:function(upperSymbol)
|
|
107350
|
+
{
|
|
107351
|
+
if (!upperSymbol) return false;
|
|
107352
|
+
if (!this.IsCZCE(upperSymbol)) return false;
|
|
107353
|
+
var shortSymbol=JSChart.GetShortSymbol(upperSymbol);
|
|
107354
|
+
//ZN2605-P-20600
|
|
107355
|
+
var aryValue=shortSymbol.split("-");
|
|
107356
|
+
if (!aryValue || aryValue.length!=3) return false;
|
|
107357
|
+
|
|
107358
|
+
var strValue=aryValue[0];
|
|
107359
|
+
const regex = /([a-zA-Z]+)(\d+)/;
|
|
107360
|
+
const match = strValue.match(regex);
|
|
107361
|
+
if (!match || !match[1] || !match[2]) return false;
|
|
107362
|
+
|
|
107363
|
+
var prefix=match[1];
|
|
107364
|
+
|
|
107365
|
+
return true;
|
|
107305
107366
|
},
|
|
107306
107367
|
|
|
107307
107368
|
IsGZFE:function(upperSymbol)
|
|
107308
107369
|
{
|
|
107309
107370
|
if (!upperSymbol) return false;
|
|
107310
|
-
|
|
107371
|
+
if (upperSymbol.indexOf(this.GZFE)>0) return true;
|
|
107372
|
+
if (upperSymbol.indexOf(this.GZFE2)>0) return true;
|
|
107373
|
+
|
|
107374
|
+
return false;
|
|
107375
|
+
},
|
|
107376
|
+
|
|
107377
|
+
IsGZFEOption:function(upperSymbol)
|
|
107378
|
+
{
|
|
107379
|
+
if (!upperSymbol) return false;
|
|
107380
|
+
if (!this.IsGZFE(upperSymbol)) return false;
|
|
107381
|
+
var shortSymbol=JSChart.GetShortSymbol(upperSymbol);
|
|
107382
|
+
//ZN2605-P-20600
|
|
107383
|
+
var aryValue=shortSymbol.split("-");
|
|
107384
|
+
if (!aryValue || aryValue.length!=3) return false;
|
|
107385
|
+
|
|
107386
|
+
var strValue=aryValue[0];
|
|
107387
|
+
const regex = /([a-zA-Z]+)(\d+)/;
|
|
107388
|
+
const match = strValue.match(regex);
|
|
107389
|
+
if (!match || !match[1] || !match[2]) return false;
|
|
107390
|
+
|
|
107391
|
+
var prefix=match[1];
|
|
107392
|
+
|
|
107393
|
+
return true;
|
|
107311
107394
|
},
|
|
107312
107395
|
|
|
107313
107396
|
IsINE:function(upperSymbol)
|
|
@@ -107316,6 +107399,26 @@ var MARKET_SUFFIX_NAME=
|
|
|
107316
107399
|
return upperSymbol.indexOf(this.INE) > 0;
|
|
107317
107400
|
},
|
|
107318
107401
|
|
|
107402
|
+
|
|
107403
|
+
IsINEOption:function(upperSymbol)
|
|
107404
|
+
{
|
|
107405
|
+
if (!upperSymbol) return false;
|
|
107406
|
+
if (!this.IsINE(upperSymbol)) return false;
|
|
107407
|
+
var shortSymbol=JSChart.GetShortSymbol(upperSymbol);
|
|
107408
|
+
//ZN2605-P-20600
|
|
107409
|
+
var aryValue=shortSymbol.split("-");
|
|
107410
|
+
if (!aryValue || aryValue.length!=3) return false;
|
|
107411
|
+
|
|
107412
|
+
var strValue=aryValue[0];
|
|
107413
|
+
const regex = /([a-zA-Z]+)(\d+)/;
|
|
107414
|
+
const match = strValue.match(regex);
|
|
107415
|
+
if (!match || !match[1] || !match[2]) return false;
|
|
107416
|
+
|
|
107417
|
+
var prefix=match[1];
|
|
107418
|
+
|
|
107419
|
+
return true;
|
|
107420
|
+
},
|
|
107421
|
+
|
|
107319
107422
|
//是否包含某一个市场的
|
|
107320
107423
|
IsIncludes:function(symbol, arySuffix)
|
|
107321
107424
|
{
|
|
@@ -144573,7 +144676,7 @@ function JSReportChartContainer(uielement)
|
|
|
144573
144676
|
//18=内盘 19=外盘 20=现量 21=涨幅% 22=涨跌 23=换手率% 24=振幅% 25=流通市值 26=总市值 27=扩展名字
|
|
144574
144677
|
//30=全局扩展数据 31=当前板块扩展数据
|
|
144575
144678
|
//32=收盘价线 33=K线 35=时间 36=日期字段 38=持仓量 39=结算价 40=昨结算价 41=开仓量 42=平仓量
|
|
144576
|
-
//43=1m涨速% 44=3m涨速% 45=5m涨速% 46=10m涨速% 47=15m涨速%
|
|
144679
|
+
//43=1m涨速% 44=3m涨速% 45=5m涨速% 46=10m涨速% 47=15m涨速% 48=交割日期 49=开始日期 50=过期时间
|
|
144577
144680
|
//80=整行背景色
|
|
144578
144681
|
//101-199=数值型 201-299=字符型 301-350=进度条 351-400=按钮 401-499=日期时间
|
|
144579
144682
|
|
|
@@ -144692,8 +144795,6 @@ function JSReportChartContainer(uielement)
|
|
|
144692
144795
|
|
|
144693
144796
|
if (IFrameSplitOperator.IsBool(item[37])) stock.Checked=item[37];
|
|
144694
144797
|
|
|
144695
|
-
|
|
144696
|
-
|
|
144697
144798
|
//1,3,5,10,15 涨速%
|
|
144698
144799
|
if (IFrameSplitOperator.IsNumber(item[43])) stock.RSpeed1M=item[43];
|
|
144699
144800
|
if (IFrameSplitOperator.IsNumber(item[44])) stock.RSpeed3M=item[44];
|
|
@@ -144701,9 +144802,6 @@ function JSReportChartContainer(uielement)
|
|
|
144701
144802
|
if (IFrameSplitOperator.IsNumber(item[46])) stock.RSpeed10M=item[46];
|
|
144702
144803
|
if (IFrameSplitOperator.IsNumber(item[47])) stock.RSpeed15M=item[47];
|
|
144703
144804
|
|
|
144704
|
-
if (item[80] || item[80]===null) stock.BGColor=item[80]; //整行背景色
|
|
144705
|
-
if (item[JSCHART_DATA_FIELD_ID.REPORT_EXTENDDATA]) stock.ExtendDataV2=item[JSCHART_DATA_FIELD_ID.REPORT_EXTENDDATA]; //扩展数据2
|
|
144706
|
-
|
|
144707
144805
|
function __Temp_IsNumberOrObject(value)
|
|
144708
144806
|
{
|
|
144709
144807
|
if (IFrameSplitOperator.IsNumber(value)) return true;
|
|
@@ -144718,6 +144816,14 @@ function JSReportChartContainer(uielement)
|
|
|
144718
144816
|
return false;
|
|
144719
144817
|
}
|
|
144720
144818
|
|
|
144819
|
+
if (__Temp_IsNumberOrObject(item[48])) stock.DeliveryDate=item[48];
|
|
144820
|
+
if (__Temp_IsNumberOrObject(item[49])) stock.OpenDate=item[49];
|
|
144821
|
+
if (__Temp_IsNumberOrObject(item[50])) stock.ExpireDate=item[50];
|
|
144822
|
+
|
|
144823
|
+
|
|
144824
|
+
if (item[80] || item[80]===null) stock.BGColor=item[80]; //整行背景色
|
|
144825
|
+
if (item[JSCHART_DATA_FIELD_ID.REPORT_EXTENDDATA]) stock.ExtendDataV2=item[JSCHART_DATA_FIELD_ID.REPORT_EXTENDDATA]; //扩展数据2
|
|
144826
|
+
|
|
144721
144827
|
//10个数值型 101-199
|
|
144722
144828
|
if (__Temp_IsNumberOrObject(item[101])) stock.ReserveNumber1=item[101];
|
|
144723
144829
|
if (__Temp_IsNumberOrObject(item[102])) stock.ReserveNumber2=item[102];
|
|
@@ -147819,6 +147925,9 @@ var REPORT_COLUMN_ID=
|
|
|
147819
147925
|
FUTURES_YCLOSE_ID:36, //期货昨结算
|
|
147820
147926
|
FUTURES_OPEN_POSITION_ID:37, //期货开仓量
|
|
147821
147927
|
FUTURES_CLOSE_POSITION_ID:38, //期货平仓量
|
|
147928
|
+
DELIVERY_DATE_ID:39, //交割日期
|
|
147929
|
+
OPEN_DATE_ID:40,
|
|
147930
|
+
EXPIRE_DATE_ID:41,
|
|
147822
147931
|
|
|
147823
147932
|
|
|
147824
147933
|
//1,3,5,10,15分钟涨速
|
|
@@ -147970,6 +148079,10 @@ var MAP_COLUMN_FIELD=new Map([
|
|
|
147970
148079
|
[REPORT_COLUMN_ID.FUTURES_OPEN_POSITION_ID, "OpenPosition"],
|
|
147971
148080
|
[REPORT_COLUMN_ID.FUTURES_CLOSE_POSITION_ID, "ClosePosition"],
|
|
147972
148081
|
|
|
148082
|
+
[REPORT_COLUMN_ID.DELIVERY_DATE_ID, "DeliveryDate"],
|
|
148083
|
+
[REPORT_COLUMN_ID.OPEN_DATE_ID, "OpenDate"],
|
|
148084
|
+
[REPORT_COLUMN_ID.EXPIRE_DATE_ID, "ExpireDate"],
|
|
148085
|
+
|
|
147973
148086
|
[REPORT_COLUMN_ID.RISING_SPEED_1M_ID, "RSpeed1M"],
|
|
147974
148087
|
[REPORT_COLUMN_ID.RISING_SPEED_3M_ID, "RSpeed3M"],
|
|
147975
148088
|
[REPORT_COLUMN_ID.RISING_SPEED_5M_ID, "RSpeed5M"],
|
|
@@ -148641,6 +148754,9 @@ function ChartReport()
|
|
|
148641
148754
|
|
|
148642
148755
|
{ Type:REPORT_COLUMN_ID.TIME_ID, Title:"时间", TextAlign:"left", ValueType:0, TextColor:g_JSChartResource.Report.FieldColor.Text, MaxText:"99:99:99.999" },
|
|
148643
148756
|
{ Type:REPORT_COLUMN_ID.DATE_ID, Title:"日期", TextAlign:"left", FormatType:0, TextColor:g_JSChartResource.Report.FieldColor.Text, MaxText:"9999-99-99" },
|
|
148757
|
+
{ Type:REPORT_COLUMN_ID.DELIVERY_DATE_ID, Title:"交割日", TextAlign:"left", FormatType:0, TextColor:g_JSChartResource.Report.FieldColor.Text, MaxText:"9999-99-99" },
|
|
148758
|
+
{ Type:REPORT_COLUMN_ID.OPEN_DATE_ID, Title:"上市日", TextAlign:"left", FormatType:0, TextColor:g_JSChartResource.Report.FieldColor.Text, MaxText:"9999-99-99" },
|
|
148759
|
+
{ Type:REPORT_COLUMN_ID.EXPIRE_DATE_ID, Title:"到期日", TextAlign:"left", FormatType:0, TextColor:g_JSChartResource.Report.FieldColor.Text, MaxText:"9999-99-99" },
|
|
148644
148760
|
|
|
148645
148761
|
{ Type:REPORT_COLUMN_ID.CHECKBOX_ID, Title:"", TextAlign:"center", FixedWidth:20*GetDevicePixelRatio() },
|
|
148646
148762
|
|
|
@@ -149797,7 +149913,7 @@ function ChartReport()
|
|
|
149797
149913
|
else if (column.Type==REPORT_COLUMN_ID.SYMBOL_ID)
|
|
149798
149914
|
{
|
|
149799
149915
|
if (stock && stock.Symbol) drawInfo.Text=stock.Symbol;
|
|
149800
|
-
else drawInfo.Text=data.Symbol;
|
|
149916
|
+
else drawInfo.Text=MARKET_SUFFIX_NAME.GetShortSymbol(data.Symbol);
|
|
149801
149917
|
|
|
149802
149918
|
this.FormatDrawInfo(column, stock, drawInfo, data);
|
|
149803
149919
|
}
|
|
@@ -150030,7 +150146,7 @@ function ChartReport()
|
|
|
150030
150146
|
this.FormaTimeDrawInfo(column, stock, drawInfo, data);
|
|
150031
150147
|
this.FormatDrawInfoEvent(stock, data, column, drawInfo);
|
|
150032
150148
|
}
|
|
150033
|
-
else if (column.Type==REPORT_COLUMN_ID.DATE_ID)
|
|
150149
|
+
else if (column.Type==REPORT_COLUMN_ID.DATE_ID || column.Type==REPORT_COLUMN_ID.DELIVERY_DATE_ID || column.Type==REPORT_COLUMN_ID.OPEN_DATE_ID || column.Type==REPORT_COLUMN_ID.EXPIRE_DATE_ID)
|
|
150034
150150
|
{
|
|
150035
150151
|
this.FormaDateDrawInfo(column, stock, drawInfo, data);
|
|
150036
150152
|
this.FormatDrawInfoEvent(stock, data, column, drawInfo);
|
|
@@ -150956,20 +151072,26 @@ function ChartReport()
|
|
|
150956
151072
|
|
|
150957
151073
|
this.FormaDateDrawInfo=function(column, stock, drawInfo, data)
|
|
150958
151074
|
{
|
|
150959
|
-
|
|
151075
|
+
var fieldName=MAP_COLUMN_FIELD.get(column.Type);
|
|
151076
|
+
if (!stock || !fieldName) return;
|
|
151077
|
+
var date=stock[fieldName];
|
|
151078
|
+
|
|
151079
|
+
if (!IFrameSplitOperator.IsNumber(date)) return;
|
|
150960
151080
|
|
|
150961
151081
|
if (column.FormatType==0)
|
|
150962
|
-
drawInfo.Text=IFrameSplitOperator.FormatDateString(
|
|
151082
|
+
drawInfo.Text=IFrameSplitOperator.FormatDateString(date,"YYYY-MM-DD");
|
|
150963
151083
|
else if (column.FormatType==1)
|
|
150964
|
-
drawInfo.Text=IFrameSplitOperator.FormatDateString(
|
|
151084
|
+
drawInfo.Text=IFrameSplitOperator.FormatDateString(date,"YYYY/MM/DD");
|
|
150965
151085
|
else if (column.FormatType==2)
|
|
150966
|
-
drawInfo.Text=IFrameSplitOperator.FormatDateString(
|
|
151086
|
+
drawInfo.Text=IFrameSplitOperator.FormatDateString(date,"YYYY/MM/DD/W");
|
|
150967
151087
|
else if (column.FormatType==3)
|
|
150968
|
-
drawInfo.Text=IFrameSplitOperator.FormatDateString(
|
|
151088
|
+
drawInfo.Text=IFrameSplitOperator.FormatDateString(date,"YYYY-MM");
|
|
150969
151089
|
else if (column.FormatType==4)
|
|
150970
|
-
drawInfo.Text=IFrameSplitOperator.FormatDateString(
|
|
150971
|
-
else if (column.FormatType==
|
|
150972
|
-
drawInfo.Text=IFrameSplitOperator.FormatDateString(
|
|
151090
|
+
drawInfo.Text=IFrameSplitOperator.FormatDateString(date,"MM/DD");
|
|
151091
|
+
else if (column.FormatType==5)
|
|
151092
|
+
drawInfo.Text=IFrameSplitOperator.FormatDateString(date,"MM-DD");
|
|
151093
|
+
else
|
|
151094
|
+
drawInfo.Text=IFrameSplitOperator.FormatDateString(date,"YYYY-MM-DD");
|
|
150973
151095
|
}
|
|
150974
151096
|
|
|
150975
151097
|
|
|
@@ -158325,20 +158447,23 @@ function ChartSymbolList()
|
|
|
158325
158447
|
for(var i=this.Data.XOffset;i<this.Column.length;++i)
|
|
158326
158448
|
{
|
|
158327
158449
|
var item=this.Column[i];
|
|
158328
|
-
this.DrawItem(dataIndex, data, item, left, top, rowType);
|
|
158450
|
+
this.DrawItem(dataIndex, data, item, left, top, rowType, i);
|
|
158329
158451
|
left+=item.Width;
|
|
158330
158452
|
|
|
158331
158453
|
if (left>=chartRight) break;
|
|
158332
158454
|
}
|
|
158333
158455
|
}
|
|
158334
158456
|
|
|
158335
|
-
this.DrawItem=function(index, data, column, left, top, rowType)
|
|
158457
|
+
this.DrawItem=function(index, data, column, left, top, rowType, colIndex)
|
|
158336
158458
|
{
|
|
158337
158459
|
var itemWidth=column.Width;
|
|
158338
158460
|
var x=left+this.ItemMergin.Left;
|
|
158339
158461
|
var textWidth=column.Width-this.ItemMergin.Left-this.ItemMergin.Right;
|
|
158340
158462
|
var stock=data.Stock;
|
|
158341
158463
|
var drawInfo={ Text:null, TextColor:this.TextColor , TextAlign:column.TextAlign };
|
|
158464
|
+
var columnEx=null;
|
|
158465
|
+
if (stock && IFrameSplitOperator.IsNonEmptyArray(stock.Column)) columnEx=stock.Column[colIndex];
|
|
158466
|
+
|
|
158342
158467
|
if (column.Type==KEYBOARD_COLUMN_ID.SHORT_SYMBOL_ID)
|
|
158343
158468
|
{
|
|
158344
158469
|
if (stock && stock.ShortSymbol) drawInfo.Text=stock.ShortSymbol;
|
|
@@ -158348,6 +158473,8 @@ function ChartSymbolList()
|
|
|
158348
158473
|
}
|
|
158349
158474
|
else if (column.Type==KEYBOARD_COLUMN_ID.NAME_ID)
|
|
158350
158475
|
{
|
|
158476
|
+
if (columnEx && columnEx.IsShow===false) return;
|
|
158477
|
+
|
|
158351
158478
|
if (stock && stock.Name)
|
|
158352
158479
|
{
|
|
158353
158480
|
drawInfo.Text=this.TextEllipsis(stock.Name, textWidth, column.MaxText);
|
|
@@ -158356,6 +158483,8 @@ function ChartSymbolList()
|
|
|
158356
158483
|
}
|
|
158357
158484
|
else if (column.Type==KEYBOARD_COLUMN_ID.TYPE_NAME_ID)
|
|
158358
158485
|
{
|
|
158486
|
+
if (columnEx && columnEx.IsShow===false) return;
|
|
158487
|
+
|
|
158359
158488
|
if (stock && stock.TypeName)
|
|
158360
158489
|
{
|
|
158361
158490
|
drawInfo.Text=this.TextEllipsis(stock.TypeName, textWidth, column.MaxText);
|
|
@@ -171750,7 +171879,7 @@ function ChartStockData()
|
|
|
171750
171879
|
|
|
171751
171880
|
|
|
171752
171881
|
|
|
171753
|
-
var HQCHART_VERSION="1.1.
|
|
171882
|
+
var HQCHART_VERSION="1.1.15517";
|
|
171754
171883
|
|
|
171755
171884
|
function PrintHQChartVersion()
|
|
171756
171885
|
{
|