| 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 | $(document).ready(function(){ | 
|---|
| 75 |  | 
|---|
| 76 | }), | 
|---|
| 77 | CAL.addEventListener("onSelect", function(){ | 
|---|
| 78 | var day =this.selection.print("%d").join("\n"); | 
|---|
| 79 | var month =this.selection.print("%m").join("\n"); | 
|---|
| 80 | var year =this.selection.print("%Y").join("\n"); | 
|---|
| 81 | var newline = []; | 
|---|
| 82 | var YaxisData; | 
|---|
| 83 | var newtime; | 
|---|
| 84 | var source=[]; | 
|---|
| 85 | source.push($('#box2View').text()); | 
|---|
| 86 | document.getElementById('data').innerHTML=$('#box2View').text(); | 
|---|
| 87 |  | 
|---|
| 88 | var xmlhttp; | 
|---|
| 89 | if (window.XMLHttpRequest) | 
|---|
| 90 | {// code for IE7+, Firefox, Chrome, Opera, Safari | 
|---|
| 91 | xmlhttp=new XMLHttpRequest(); | 
|---|
| 92 | } | 
|---|
| 93 | else | 
|---|
| 94 | {// code for IE6, IE5 | 
|---|
| 95 | xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); | 
|---|
| 96 | } | 
|---|
| 97 | xmlhttp.onreadystatechange=function() | 
|---|
| 98 | { | 
|---|
| 99 | if (xmlhttp.readyState==4 && xmlhttp.status==200) | 
|---|
| 100 | { | 
|---|
| 101 | var options = { | 
|---|
| 102 | chart: { | 
|---|
| 103 | renderTo: 'container' /* display to div Graph*/ | 
|---|
| 104 |  | 
|---|
| 105 | }, | 
|---|
| 106 |  | 
|---|
| 107 | xAxis: { | 
|---|
| 108 | 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"] | 
|---|
| 109 | }, | 
|---|
| 110 | series:[], /* array of Data  */ | 
|---|
| 111 |  | 
|---|
| 112 | remove:function() | 
|---|
| 113 | { | 
|---|
| 114 | return false; | 
|---|
| 115 | }, | 
|---|
| 116 |  | 
|---|
| 117 | exporting: {                                                   /*--------------------*/ | 
|---|
| 118 | buttons: {                                                      /*                                        */ | 
|---|
| 119 | exportButton: {                                 /*              Export            */ | 
|---|
| 120 | menuItems: null,                        /*                to              */ | 
|---|
| 121 | onclick: function() {           /*                      PNG.file  */ | 
|---|
| 122 | this.exportChart();             /*--------------------*/ | 
|---|
| 123 | } | 
|---|
| 124 | } | 
|---|
| 125 | } | 
|---|
| 126 | }, | 
|---|
| 127 | plotOptions : { | 
|---|
| 128 |  | 
|---|
| 129 | series : { | 
|---|
| 130 | lineWidth: 3, | 
|---|
| 131 |  | 
|---|
| 132 | marker : { | 
|---|
| 133 | enabled:false | 
|---|
| 134 | } | 
|---|
| 135 | } | 
|---|
| 136 | } | 
|---|
| 137 |  | 
|---|
| 138 |  | 
|---|
| 139 |  | 
|---|
| 140 | }; | 
|---|
| 141 | var lines = xmlhttp.responseText.split('\n'); | 
|---|
| 142 | var arr; | 
|---|
| 143 | var arrTime = []; | 
|---|
| 144 | var Time = []; | 
|---|
| 145 | var colon = []; | 
|---|
| 146 | var Temp = []; | 
|---|
| 147 | //var source = []; | 
|---|
| 148 | for(var row=0;row<lines.length; row++) | 
|---|
| 149 | { | 
|---|
| 150 | var f = lines[row].split(','); | 
|---|
| 151 | Time[row]=f[0]; | 
|---|
| 152 |  | 
|---|
| 153 | for(var c=0;c<Time.length;c++) | 
|---|
| 154 | { | 
|---|
| 155 | var cst=Time[c].split(':'); | 
|---|
| 156 | colon[c]=cst[0]; | 
|---|
| 157 | Temp[c]=(parseInt(cst[1]/60*100)||parseFloat("0")); | 
|---|
| 158 | for(var i=1;i<colon.length;i++) | 
|---|
| 159 | { | 
|---|
| 160 | var st=colon[i].split('T'); | 
|---|
| 161 | arrTime[i]=(parseFloat(st[1])||parseFloat("0")); | 
|---|
| 162 | } | 
|---|
| 163 | } | 
|---|
| 164 | //arr[row]="["+f[4]+"]"; | 
|---|
| 165 | newline[row]=(parseFloat(f[4])||parseFloat("0")); | 
|---|
| 166 | var s=[]; | 
|---|
| 167 | for(var c=0;c<newline.length;c++) | 
|---|
| 168 | { | 
|---|
| 169 | if(newline[c]==0) | 
|---|
| 170 | { | 
|---|
| 171 |  | 
|---|
| 172 | } | 
|---|
| 173 | else | 
|---|
| 174 | s.push(parseFloat(newline[c])); | 
|---|
| 175 | } | 
|---|
| 176 | var Timedata=[]; | 
|---|
| 177 |  | 
|---|
| 178 | for(var i=1;i<arrTime.length-1;i++) | 
|---|
| 179 | { | 
|---|
| 180 | if(arrTime[i]==0) | 
|---|
| 181 | { | 
|---|
| 182 | if(Temp[i]==8) | 
|---|
| 183 | { | 
|---|
| 184 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 185 | } | 
|---|
| 186 | else | 
|---|
| 187 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 188 | } | 
|---|
| 189 | else if(arrTime[i]==1) | 
|---|
| 190 | { | 
|---|
| 191 | if(Temp[i]==8) | 
|---|
| 192 | { | 
|---|
| 193 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 194 | } | 
|---|
| 195 | else | 
|---|
| 196 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 197 | } | 
|---|
| 198 | else if(arrTime[i]==2) | 
|---|
| 199 | { | 
|---|
| 200 | if(Temp[i]==8) | 
|---|
| 201 | { | 
|---|
| 202 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 203 | } | 
|---|
| 204 | else | 
|---|
| 205 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 206 | } | 
|---|
| 207 | else if(arrTime[i]==3) | 
|---|
| 208 | { | 
|---|
| 209 | if(Temp[i]==8) | 
|---|
| 210 | { | 
|---|
| 211 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 212 | } | 
|---|
| 213 | else | 
|---|
| 214 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 215 | } | 
|---|
| 216 | else if(arrTime[i]==4) | 
|---|
| 217 | { | 
|---|
| 218 | if(Temp[i]==8) | 
|---|
| 219 | { | 
|---|
| 220 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 221 | } | 
|---|
| 222 | else | 
|---|
| 223 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 224 | } | 
|---|
| 225 | else if(arrTime[i]==5) | 
|---|
| 226 | { | 
|---|
| 227 | if(Temp[i]==8) | 
|---|
| 228 | { | 
|---|
| 229 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 230 | } | 
|---|
| 231 | else | 
|---|
| 232 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 233 | } | 
|---|
| 234 | else if(arrTime[i]==6) | 
|---|
| 235 | { | 
|---|
| 236 | if(Temp[i]==8) | 
|---|
| 237 | { | 
|---|
| 238 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 239 | } | 
|---|
| 240 | else | 
|---|
| 241 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 242 | } | 
|---|
| 243 | else if(arrTime[i]==7) | 
|---|
| 244 | { | 
|---|
| 245 | if(Temp[i]==8) | 
|---|
| 246 | { | 
|---|
| 247 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 248 | } | 
|---|
| 249 | else | 
|---|
| 250 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 251 | } | 
|---|
| 252 | else if(arrTime[i]==8) | 
|---|
| 253 | { | 
|---|
| 254 | if(Temp[i]==8) | 
|---|
| 255 | { | 
|---|
| 256 | Timedata.push(arrTime[i]+24+'.08'); | 
|---|
| 257 | } | 
|---|
| 258 | else | 
|---|
| 259 | Timedata.push(arrTime[i]+24+'.'+Temp[i]); | 
|---|
| 260 | } | 
|---|
| 261 | else if(Temp[i]==8) | 
|---|
| 262 | { | 
|---|
| 263 |  | 
|---|
| 264 | Timedata.push(arrTime[i]+'.08'); | 
|---|
| 265 |  | 
|---|
| 266 | } | 
|---|
| 267 | else | 
|---|
| 268 | Timedata.push(arrTime[i]+'.'+Temp[i]); | 
|---|
| 269 |  | 
|---|
| 270 | } | 
|---|
| 271 |  | 
|---|
| 272 |  | 
|---|
| 273 | } | 
|---|
| 274 |  | 
|---|
| 275 |  | 
|---|
| 276 |  | 
|---|
| 277 |  | 
|---|
| 278 | var chart = new Highcharts.Chart(options); | 
|---|
| 279 | YaxisData=s; | 
|---|
| 280 | var Yaxis=[[]]; | 
|---|
| 281 | var Xaxis=[[]]; | 
|---|
| 282 | for(var src=0;src<source.length;src++) | 
|---|
| 283 | { | 
|---|
| 284 | for(var i=0;i<Timedata.length;i++) | 
|---|
| 285 | { | 
|---|
| 286 | Xaxis[src][i]=Timedata[i]; | 
|---|
| 287 | } | 
|---|
| 288 | for(var y=0;y<YaxisData.length;y++) | 
|---|
| 289 | { | 
|---|
| 290 | Yaxis[src][i]=YaxisData[i]; | 
|---|
| 291 | } | 
|---|
| 292 | } | 
|---|
| 293 | document.getElementById('data').innerHTML=Xaxis; | 
|---|
| 294 | //document.getElementById('sourcelist').innerHTML=; //aki man edit kuya | 
|---|
| 295 |  | 
|---|
| 296 |  | 
|---|
| 297 | /*options.series.push({ | 
|---|
| 298 |  | 
|---|
| 299 | data:[parseFloat(Timedata),parseFloat(YaxisData1)] | 
|---|
| 300 | });*/ | 
|---|
| 301 | for(var src=0;src<source.length;src++) | 
|---|
| 302 | { | 
|---|
| 303 | chart.addSeries({name:source[src], data:[]}); // created a series of data and add name of displayed source | 
|---|
| 304 | for(var i=0;i<Timedata.length;i++) | 
|---|
| 305 | { | 
|---|
| 306 |  | 
|---|
| 307 | chart.series[src].addPoint({ // series[0] means index of zero in data; | 
|---|
| 308 | x:Timedata[i], // Time | 
|---|
| 309 | y:YaxisData[i] // Value | 
|---|
| 310 | }) | 
|---|
| 311 |  | 
|---|
| 312 | } | 
|---|
| 313 | } | 
|---|
| 314 |  | 
|---|
| 315 |  | 
|---|
| 316 |  | 
|---|
| 317 |  | 
|---|
| 318 | } | 
|---|
| 319 | } | 
|---|
| 320 |  | 
|---|
| 321 | xmlhttp.open("GET","http://www.fact-project.org/smartfact/index.php?source="+escape(source)+"&time="+year+"-"+month+"-"+day,true); | 
|---|
| 322 | xmlhttp.send(); | 
|---|
| 323 | $('#Graph').load('chart.php?day='+day+"&month="+month+"&year="+year); | 
|---|
| 324 | $('#saving').load('function/function.php?day='+day+"&month="+month+"&year="+year); | 
|---|
| 325 |  | 
|---|
| 326 |  | 
|---|
| 327 | }); | 
|---|
| 328 |  | 
|---|
| 329 | //]]></script> | 
|---|
| 330 | </td> | 
|---|
| 331 | </tr> | 
|---|
| 332 |  | 
|---|
| 333 | </table> | 
|---|
| 334 | </td> | 
|---|
| 335 | </tr> | 
|---|
| 336 | </table> | 
|---|
| 337 |  | 
|---|
| 338 | </body> | 
|---|
| 339 | </html> | 
|---|
| 340 |  | 
|---|
| 341 |  | 
|---|