source: schedule/Module/calendar.php@ 16156

Last change on this file since 16156 was 16156, checked in by tanio, 12 years ago
File size: 8.7 KB
Line 
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
Note: See TracBrowser for help on using the repository browser.