var home_productIntradayChart = { code : "", container : "", chart : null, init : function(code, id, callback){ var self = this; /*if(code == "") { code = 'hsi'; } self.code = code;*/ if (code != ""){ self.code = code; } $.getJSON('/'+lang+'/data/chart/home_productIntradayChart?code='+self.code, function(_data) { var data = self.decode(_data); $((self.container=='')?'#home_productIntradayChartContainer'+id:'#'+self.container).highcharts('StockChart', self.getJSON(data), function(chart){ self.chart = chart; if (callback!==undefined){ callback(chart,data); } }); }); }, decode : function(_data){ return _data; }, colors :{line: "#082A4D", lastc: "#F4842A", label: "#84888B", drawLine: "#08294E"}, getJSON : function(_data){ //console.log(_data); var dp = 0; var close = []; var data = _data.mainData; var fdata = _data.furtherData; var min_last = fdata.lastc*1; var max_last = fdata.lastc*1; var groupingUnits = [['minute',[5]], ['hour',[1]]]; for (i = 0; i < data.length; i++) { if (data[i][1] == null) data[i][2] = null; if (min_last == 0 && data[i][1]*1 > 0) min_last = data[i][1]; close.push([data[i][0], data[i][1]]); if (data[i][1]*1 > 0) min_last = Math.min(min_last, data[i][1]); max_last = Math.max(max_last, data[i][1]); } if (min_last == max_last) min_last = 0; //console.log(min_last+"!"+max_last+"!"+(max_last*1 == fdata.lastc*1)+"#"+(min_last*1 == fdata.lastc*1)); var self = this; return { chart:{ spacing: [0, 0, 0, 0], marginRight: 0, marginLeft: 0, marginTop: 0, marginBottom: 0, height: 29.51, }, tooltip: { enabled : false }, rangeSelector: { enabled: false }, xAxis: { tickLength:0, gridLineWidth: 0, lineWidth: 0, align: "top", opposite: false, labels: { enabled : false }, tickPositioner: function () { var positions = []; var lastday = 0; var msec; msec = 60*60*1000; lastday = Math.floor(close[0][0]/msec)*msec; for (i=0;i