1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
---|
2 | <html>
|
---|
3 | <head>
|
---|
4 | <link type="text/css" rel="stylesheet" href="Module/src/css/jscal2.css" />
|
---|
5 | <link type="text/css" rel="stylesheet" href="Module/src/css/border-radius.css" />
|
---|
6 |
|
---|
7 | <link id="skin-win2k" title="Win 2K" type="text/css" rel="alternate stylesheet" href="Module/src/css/win2k/win2k.css" />
|
---|
8 |
|
---|
9 | <script src="js/highcharts.js"></script>
|
---|
10 | <script src="js/exporting.js"></script>
|
---|
11 |
|
---|
12 | <script src="Module/src/js/jscal2.js"></script>
|
---|
13 | <script src="Module/src/js/unicode-letter.js"></script>
|
---|
14 |
|
---|
15 | <script src="Module/src/js/lang/en.js"></script>
|
---|
16 | <style type="text/css">
|
---|
17 | .highlight { color: #f00 !important; }
|
---|
18 | .highlight2 { color: #0f0 !important; font-weight: bold; }
|
---|
19 | </style>
|
---|
20 |
|
---|
21 | </head>
|
---|
22 | <body style="background-color: #fff">
|
---|
23 |
|
---|
24 | <table>
|
---|
25 | <tr>
|
---|
26 | <td valign="top" style="width: 30em;">
|
---|
27 | <div id="cont"></div>
|
---|
28 | <script type="text/javascript">
|
---|
29 | var DATE_INFO = {
|
---|
30 | <?php
|
---|
31 | $sqlSched=mysql_query("SELECT*FROM schedule");
|
---|
32 | $SchedCnt=mysql_num_rows($sqlSched);
|
---|
33 | $cntr=1;
|
---|
34 | while($rowSched=mysql_fetch_array($sqlSched))
|
---|
35 | {
|
---|
36 | $timestamp=strtotime($rowSched['fStart']);
|
---|
37 | if($SchedCnt==$cntr)
|
---|
38 | {
|
---|
39 | echo date("Ymd",$timestamp);?>:{klass: "highlight"}<?php
|
---|
40 | }
|
---|
41 | else
|
---|
42 | {
|
---|
43 | echo date("Ymd",$timestamp);?>:{klass: "highlight"},<?php
|
---|
44 | }
|
---|
45 | $cntr++;
|
---|
46 | ?>
|
---|
47 |
|
---|
48 | // 20130507: { klass: "highlight", tooltip: "%Y/%m/%d (%A)<br />That was yesterday" },
|
---|
49 | // 20130508: { klass: "highlight", tooltip: "And this is TODAY" }
|
---|
50 | <?php
|
---|
51 | }
|
---|
52 | ?>
|
---|
53 | };
|
---|
54 |
|
---|
55 | function getDateInfo(date, wantsClassName) {
|
---|
56 | var as_number = Calendar.dateToInt(date);
|
---|
57 | return DATE_INFO[as_number];
|
---|
58 | };
|
---|
59 | var CAL = Calendar.setup({
|
---|
60 | cont: "cont",
|
---|
61 | // weekNumbers: true,
|
---|
62 | selectionType: Calendar.SEL_MULTIPLE,
|
---|
63 | showTime: 24,
|
---|
64 | //fdow : 1,
|
---|
65 | dateInfo:getDateInfo
|
---|
66 | // titleFormat: "%B %Y"
|
---|
67 | })
|
---|
68 | </script>
|
---|
69 | </td>
|
---|
70 |
|
---|
71 | <tr>
|
---|
72 | <td>
|
---|
73 | <script type="text/javascript">//<![CDATA[
|
---|
74 | CAL.addEventListener("onSelect", function(){
|
---|
75 | var day =this.selection.print("%d").join("\n");
|
---|
76 | var month =this.selection.print("%m").join("\n");
|
---|
77 | var year =this.selection.print("%Y").join("\n");
|
---|
78 | var xml;
|
---|
79 | var Time = [new array[]];
|
---|
80 | var DataValue = [new array[]];
|
---|
81 | var Time1 = [];
|
---|
82 | var TimeColon = [];
|
---|
83 | var MinTime = [];
|
---|
84 | var HourTime = [];
|
---|
85 | var DataVal = [];
|
---|
86 | var source=['Crab','Mrk 501','Mrk 421'];
|
---|
87 | var options = {
|
---|
88 | chart: {
|
---|
89 | renderTo: 'container' /* display to div Graph*/
|
---|
90 |
|
---|
91 | },
|
---|
92 |
|
---|
93 | xAxis: {
|
---|
94 | categories:["12PM","1PM","2PM","3PM","4PM","5PM","6PM","7PM","8PM","9PM","10PM","11PM","12AM","1AM","2AM","3AM","4AM","5AM","6AM","7AM","8AM","9AM","10AM","12PM"]
|
---|
95 | },
|
---|
96 | series:[], /* array of Data */
|
---|
97 |
|
---|
98 | remove:function()
|
---|
99 | {
|
---|
100 | return false;
|
---|
101 | },
|
---|
102 |
|
---|
103 | exporting: { /*--------------------*/
|
---|
104 | buttons: { /* */
|
---|
105 | exportButton: { /* Export */
|
---|
106 | menuItems: null, /* to */
|
---|
107 | onclick: function() { /* PNG.file */
|
---|
108 | this.exportChart(); /*--------------------*/
|
---|
109 | }
|
---|
110 | }
|
---|
111 | }
|
---|
112 | },
|
---|
113 | plotOptions : {
|
---|
114 |
|
---|
115 | series : {
|
---|
116 | lineWidth: 3,
|
---|
117 |
|
---|
118 | marker : {
|
---|
119 | enabled:false
|
---|
120 | }
|
---|
121 | }
|
---|
122 | }
|
---|
123 | };
|
---|
124 | for(var i=0; i<source.length;i++)
|
---|
125 | {
|
---|
126 |
|
---|
127 | if(window.XMLHttpRequest)
|
---|
128 | {
|
---|
129 | xml=new XMLHttpRequest();
|
---|
130 | }
|
---|
131 | else
|
---|
132 | {
|
---|
133 | xml=new ActiveXObject("Microsoft.XMLHTTP");
|
---|
134 | }
|
---|
135 | xml.onreadystatechange = function()
|
---|
136 | {
|
---|
137 | if(xml.readyState==4 && xml.status ==200)
|
---|
138 | {
|
---|
139 | var lines=xml.responseText.split("\n");
|
---|
140 | for(var row=0;row<lines.length;row++)
|
---|
141 | {
|
---|
142 | var splitted=lines[row].split(',');
|
---|
143 | Time1[row]=splitted[0];
|
---|
144 | for(var SplittedTime=0;SplittedTime<Time1.length;SplittedTime++)
|
---|
145 | {
|
---|
146 | var SplitTime=Time1[SplittedTime].split(':');
|
---|
147 | TimeColon[SplittedTime]=SplitTime[0];
|
---|
148 | MinTime[SplittedTime]=(parseInt(SplitTime[1]/60*100)||parseInt("0"));
|
---|
149 | for(var TimeT=0;TimeT<TimeColon.length;TimeT++)
|
---|
150 | {
|
---|
151 | var SplittedT=TimeColon[TimeT].split('T');
|
---|
152 | HourTime[TimeT]=(parseFloat(SplittedT[1])||parseInt('0'));
|
---|
153 | }
|
---|
154 | }
|
---|
155 | DataVal[row]=(parseFloat(splitted[4])||parseInt('0'));
|
---|
156 | //document.getElementById('data').innerHTML=DataValue;
|
---|
157 |
|
---|
158 | for(var Data=0; Data<DataVal.length;Data++)
|
---|
159 | {
|
---|
160 | if(DataVal[Data]==0)
|
---|
161 | {
|
---|
162 |
|
---|
163 | }
|
---|
164 | else
|
---|
165 | DataValue.push(parseFloat(DataVal[Data]));
|
---|
166 | }
|
---|
167 |
|
---|
168 |
|
---|
169 | for(var ConTime=1;ConTime<HourTime.length-1;ConTime++)
|
---|
170 | {
|
---|
171 | if(HourTime[ConTime]==0)
|
---|
172 | {
|
---|
173 | if(MinTime[ConTime]==8)
|
---|
174 | {
|
---|
175 | Time.push(HourTime[ConTime]+24+'.'+'.08');
|
---|
176 | }
|
---|
177 | else
|
---|
178 | Time.push(HourTime[ConTime]+24+'.'+MinTime[ConTime]);
|
---|
179 | }
|
---|
180 | else if(HourTime[ConTime]==1)
|
---|
181 | {
|
---|
182 | if(MinTime[ConTime]==8)
|
---|
183 | {
|
---|
184 | Time.push(HourTime[ConTime]+24+'.'+'.08');
|
---|
185 | }
|
---|
186 | else
|
---|
187 | Time.push(HourTime[ConTime]+24+'.'+MinTime[ConTime]);
|
---|
188 | }
|
---|
189 | else if(HourTime[ConTime]==2)
|
---|
190 | {
|
---|
191 | if(MinTime[ConTime]==8)
|
---|
192 | {
|
---|
193 | Time.push(HourTime[ConTime]+24+'.'+'.08');
|
---|
194 | }
|
---|
195 | else
|
---|
196 | Time.push(HourTime[ConTime]+24+'.'+MinTime[ConTime]);
|
---|
197 | }
|
---|
198 | else if(HourTime[ConTime]==3)
|
---|
199 | {
|
---|
200 | if(MinTime[ConTime]==8)
|
---|
201 | {
|
---|
202 | Time.push(HourTime[ConTime]+24+'.'+'.08');
|
---|
203 | }
|
---|
204 | else
|
---|
205 | Time.push(HourTime[ConTime]+24+'.'+MinTime[ConTime]);
|
---|
206 | }
|
---|
207 | else if(HourTime[ConTime]==4)
|
---|
208 | {
|
---|
209 | if(MinTime[ConTime]==8)
|
---|
210 | {
|
---|
211 | Time.push(HourTime[ConTime]+24+'.'+'.08');
|
---|
212 | }
|
---|
213 | else
|
---|
214 | Time.push(HourTime[ConTime]+24+'.'+MinTime[ConTime]);
|
---|
215 | }
|
---|
216 | else if(HourTime[ConTime]==5)
|
---|
217 | {
|
---|
218 | if(MinTime[ConTime]==8)
|
---|
219 | {
|
---|
220 | Time.push(HourTime[ConTime]+24+'.'+'.08');
|
---|
221 | }
|
---|
222 | else
|
---|
223 | Time.push(HourTime[ConTime]+24+'.'+MinTime[ConTime]);
|
---|
224 | }
|
---|
225 | else if(HourTime[ConTime]==6)
|
---|
226 | {
|
---|
227 | if(MinTime[ConTime]==8)
|
---|
228 | {
|
---|
229 | Time.push(HourTime[ConTime]+24+'.'+'.08');
|
---|
230 | }
|
---|
231 | else
|
---|
232 | Time.push(HourTime[ConTime]+24+'.'+MinTime[ConTime]);
|
---|
233 | }
|
---|
234 | else
|
---|
235 | Time.push(HourTime[ConTime]+'.'+MinTime[ConTime]);
|
---|
236 |
|
---|
237 | }
|
---|
238 |
|
---|
239 | //GrapData(Data,Time);
|
---|
240 |
|
---|
241 | }
|
---|
242 |
|
---|
243 | var chart = new Highcharts.Chart(options);
|
---|
244 | for(var src=0;src<i;src++)
|
---|
245 | {
|
---|
246 | chart.addSeries({name:source[src], data:[]}); // created a series of data and add name of displayed source
|
---|
247 | for(var DataCnt=0;DataCnt<DataValue[src].length;DataCnt++)
|
---|
248 | {
|
---|
249 |
|
---|
250 | chart.series[src].addPoint({ // series[0] means index of zero in data;
|
---|
251 | x:Time[src][DataCnt], // Time
|
---|
252 | y:DataValue[src][DataCnt] // Value
|
---|
253 | })
|
---|
254 |
|
---|
255 | }
|
---|
256 |
|
---|
257 | }
|
---|
258 |
|
---|
259 |
|
---|
260 | }
|
---|
261 | }
|
---|
262 | xml.open("GET","http://www.fact-project.org/smartfact/index.php?source="+escape(source[i])+"&time="+year+"-"+month+"-"+day,true);
|
---|
263 | xml.send();
|
---|
264 |
|
---|
265 |
|
---|
266 | }
|
---|
267 | $('#Graph').load('chart.php?day='+day+"&month="+month+"&year="+year);
|
---|
268 |
|
---|
269 | });
|
---|
270 |
|
---|
271 | //]]></script>
|
---|
272 | </td>
|
---|
273 | </tr>
|
---|
274 |
|
---|
275 | </table>
|
---|
276 | </td>
|
---|
277 | </tr>
|
---|
278 | </table>
|
---|
279 |
|
---|
280 | </body>
|
---|
281 | </html>
|
---|
282 |
|
---|
283 |
|
---|