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