source: schedule/Module/calendar.php@ 16112

Last change on this file since 16112 was 16112, checked in by tanio, 12 years ago
File size: 8.4 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 = [[]];
80 var Data = [[]];
81 var source=['Crab','Mrk 501','Mrk 402'];
82 for(var i = 0; i<source.length;i++)
83 {
84 xml.open("GET","http://www.fact-project.org/smartfact/index.php?source="+escape(source)+"&time="+year+"-"+month+"-"+day,true);
85 xml.send();
86
87 if(window.XMLHttpRequest)
88 {
89 xml=new XMLHttpRequest();
90 }
91 else
92 {
93 xml=new ActiveXObject("Microsoft.XMLHTTP");
94 }
95 xml.onreadystatechange = function();
96 {
97 if(xml.readyState==4 && xml.status ==200)
98 {
99 var lines=xml.responseText.split("\n");
100 for(var row=0;row<lines.length;row++)
101 {
102 var splitted=lines[row].split(',');
103 var Time[row]=splitted[0];
104 for(var SplittedTime=0;SplittedTime<Time.length;SplittdTime++)
105 {
106 var SplitTime=Time[Splittedtime].split(':');
107 var TimeColon[SplittedTime]=SplitTime[0];
108 var MinTime[SplittedTime]=(parseInt(SplitTime[1]/60*100)||parseFloat("0"));
109 for(var TimeT=0;TimeT<TimeColon.length;TimeT++)
110 {
111 var SplittedT=TimeColon[TimeT].split('T');
112 HourTime=(parseFloat(SplittedT[1])||parseFloat('0'));
113 }
114 }
115 var DataVal[row]=(parseFloat(splitted[4])||parseFloat('0'));
116 for(var Data=0; Data<DataVal.length;Data++)
117 {
118 if(DataVal[Data]==0)
119 {
120
121 }
122 else
123 Data[i][Data]=parseFlaot(DataVal[Data]);
124 }
125 for(var ConTime=1;ConTime<HourTime.length;ConTime++)
126 {
127 if(HourTime[ConTime]==0)
128 {
129 if(MinTime[ConTime]==8)
130 {
131 Time[i][ConTime]=HourTime[ConTime]+24+'.'+'.08';
132 }
133 else
134 Time[i][ConTime]=HourTime[ConTime]+24+'.'+MinTime[ConTime];
135 }
136 else if(HourTime[ConTime]==1)
137 {
138 if(MinTime[ConTime]==8)
139 {
140 Time[i][ConTime]=HourTime[ConTime]+24+'.'+'.08';
141 }
142 else
143 Time[i][ConTime]=HourTime[ConTime]+24+'.'+MinTime[ConTime];
144 }
145 else if(HourTime[ConTime]==2)
146 {
147 if(MinTime[ConTime]==8)
148 {
149 Time[i][ConTime]=HourTime[ConTime]+24+'.'+'.08';
150 }
151 else
152 Time[i][ConTime]=HourTime[ConTime]+24+'.'MinTime[ConTime];
153 }
154 else if(HourTime[ConTime]==3)
155 {
156 if(MinTime[ConTime]==8)
157 {
158 Time[i][ConTime]=HourTime[ConTime]+24+'.'+'.08';
159 }
160 else
161 Time[i][ConTime]=HourTime[ConTime]+24+'.'+MinTime[ConTime];
162 }
163 else if(HourTime[ConTime]==4)
164 {
165 if(MinTime[ConTime]==8)
166 {
167 Time[i][ConTime]=HourTime[ConTime]+24+'.'+'.08';
168 }
169 else
170 Time[i][ConTime]=HourTime[ConTime]+24+'.'+MinTime[ConTime];
171 }
172 else if(HourTime[ConTime]==5)
173 {
174 if(MinTime[ConTime]==8)
175 {
176 Time[i][ConTime]=HourTime[ConTime]+24+'.'+'.08';
177 }
178 else
179 Time[i][ConTime]=HourTime[ConTime]+24+'.'+MinTime[ConTime];
180 }
181 else if(HourTime[ConTime]==6)
182 {
183 if(MinTime[ConTime]==8)
184 {
185 Time[i][ConTime]=HourTime[ConTime]+24+'.'+'.08';
186 }
187 else
188 Time[i][ConTime]=HourTime[ConTime]+24+'.'+MinTime[ConTime];
189 }
190 else
191 Time[i][ConTime]=HourTime[ConTime]+'.'+MinTime[ConTime];
192 }
193 //GrapData(Data,Time);
194 }
195 var options = {
196 chart: {
197 renderTo: 'container' /* display to div Graph*/
198
199 },
200
201 xAxis: {
202 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"]
203 },
204 series:[], /* array of Data */
205
206 remove:function()
207 {
208 return false;
209 },
210
211 exporting: { /*--------------------*/
212 buttons: { /* */
213 exportButton: { /* Export */
214 menuItems: null, /* to */
215 onclick: function() { /* PNG.file */
216 this.exportChart(); /*--------------------*/
217 }
218 }
219 }
220 },
221 plotOptions : {
222
223 series : {
224 lineWidth: 3,
225
226 marker : {
227 enabled:false
228 }
229 }
230 }
231 };
232 var chart = new Highcharts.Chart(options);
233 for(var src=0;src<source.length;src++)
234 {
235 chart.addSeries({name:source[src], data:[]}); // created a series of data and add name of displayed source
236 for(var i=0;i<Data[src].length;i++)
237 {
238
239 chart.series[src].addPoint({ // series[0] means index of zero in data;
240 x:Time[src][i], // Time
241 y:Data[src][i] // Value
242 })
243
244 }
245 }
246 }
247 }
248 }
249
250 });
251
252 //]]></script>
253 </td>
254 </tr>
255
256 </table>
257 </td>
258 </tr>
259 </table>
260
261 </body>
262</html>
263
264
Note: See TracBrowser for help on using the repository browser.