0){ $diffdate=1; if($y==6){ $diffdate=2; }; }; $y++; }while ($y < 7); if($y==7 && $arccheck==999){ $y=0; $date = date('m/d/Y'); $year = date('Y'); $day = date('d'); $month = date('m'); $dateuse = $year.'-'.$month.'-'.$day; $dayOfWeek = date("l", strtotime($dateuse)); $checkdates = $dayOfWeek; //Make sure the most current forecast file is being read. do { $date = $month."/".$day."/".$year; $file = $file_location.$year.$month.$day.".xml"; if (@fopen($file ,"r")){ break; }else{ $nextdate = strtotime ( '-1 day' , strtotime ($date) ) ; $nextdate = date ( 'm/d/Y' , $nextdate); $month = substr($nextdate, 0,-8); $day = substr($nextdate, 3,-5); $year = substr($nextdate, 6); } $diffdate=2; $y++; }while ($y < 7); } //Read XML File Found above $xml = simplexml_load_file($file); $fxtime = $xml->time; $fxdiscussion = $xml->discussion; $forecaster = $xml->forecaster; //Get information from file foreach ($xml->forecasts->forecast as $fxinfo){ $fxaqi[$yy] = $fxinfo ->aqi; $fxdate[$yy] = $fxinfo ->date; $fxday[$yy] = $fxinfo ->day; $fxalert[$yy] = $fxinfo ->alert; $fxozonehourly[$yy] = $fxinfo ->ozonehourly; $fxozoneconc[$yy] = $fxinfo ->ozoneconc; $fxozoneaqi[$yy] = $fxinfo ->ozoneaqi; $fxpm10hourly[$yy] = $fxinfo ->pm10hourly; $fxpm10conc[$yy] = $fxinfo ->pm10conc; $fxpm10aqi[$yy] = $fxinfo ->pm10aqi; $fxpm25hourly[$yy] = $fxinfo ->pm25hourly; $fxpm25conc[$yy] = $fxinfo ->pm25conc; $fxpm25aqi[$yy] = $fxinfo ->pm25aqi; $notices[$yy] = $fxinfo ->notice; //Get dates for archives requested vs found if($arccheck == 999){ $date1 = $fxdate[0]; $unixTimestamp1 = strtotime($date1); $dayOfWeek1 = date("l", $unixTimestamp1); $date2 = $monthp."/".$dayp."/".$yearp; $unixTimestamp2 = strtotime($date2); $dayOfWeek2 = date("l", $unixTimestamp2); }; //Check to see what varilables are being forecast if($fxpm25aqi[$yy] != ""){ $checkpm25 = "999"; }; if($fxpm10aqi[$yy] != ""){ $checkpm10 = "999"; }; if($fxozoneaqi[$yy] != ""){ $checkozone = "999"; }; //Check for AQ alerts $alertday[$yy] = "0"; $possiblecheck[$yy] = "0"; $pm10alert[$yy] = "0"; $pm25alert[$yy] = "0"; $ozonealert[$yy] = "0"; if($fxalert[$yy] != "NONE"){ if($fxalert[$yy] == "HPA"){ $alertday[$yy] = "1"; $dot[$yy] = "red"; }; if($fxalert[$yy] == "HW"){ $alertday[$yy] = "2"; $dot[$yy] = "orange"; } if($fxalert[$yy] == "HPAP"){ $alertday[$yy] = "1"; $dot[$yy] = "red"; $possiblecheck[$yy] = "1"; } if($fxalert[$yy] == "HWP"){ $alertday[$yy] = "2"; $dot[$yy] = "orange"; $possiblecheck[$yy] = "1"; } }; if($fxozoneconc[$yy]>70){ $ozonealert[$yy] = "1"; }; if($fxpm10conc[$yy]>154){ $pm10alert[$yy] = "1"; }; if($fxpm25conc[$yy]>154){ $pm10alert[$yy] = "1"; }; if($fxozoneconc[$yy]<71 && $fxozoneconc[$yy]>66){ $ozonealert[$yy] = "2"; }; if($fxpm10conc[$yy]<150 && $fxpm10conc[$yy]>131){ $pm10alert[$yy] = "2"; }; if($fxpm25conc[$yy]<35.5 && $fxpm25conc[$yy]>30.4){ $pm25alert[$yy] = "2"; }; //Get flag program information if ($fxaqi[$yy] < 51){ $flag[$yy] = "good"; $flagcolor[$yy] = "Green"; }; if ($fxaqi[$yy] > 150){ $flag[$yy] = "unhealthy"; $flagcolor[$yy] = "Red"; }; if ($fxaqi[$yy] > 50){ if ($fxaqi[$yy] < 101){ $flag[$yy] = "moderate"; $flagcolor[$yy] = "Yellow"; }; }; if ($fxaqi[$yy] > 100){ if ($fxaqi[$yy] < 151){ $flag[$yy] = "usg"; $flagcolor[$yy] = "Orange"; }; }; //Get the color for each bar of the graphs $rr=0; $pm10daycolor[$yy] = "'"; $pm10hourlyString = $fxpm10hourly[$yy]; $pm10hourly = explode(',', $pm10hourlyString); $pm25daycolor[$yy] = "'"; $pm25hourlyString = $fxpm25hourly[$yy]; $pm25hourly = explode(',', $pm25hourlyString); $ozonedaycolor[$yy] = "'"; $ozonehourlyString = $fxozonehourly[$yy]; $ozonehourly = explode(',', $ozonehourlyString); do{ if($checkpm10 == "999"){ if($pm10hourly[$rr]<55){ $daypm10color="#00E000"; }; if($pm10hourly[$rr]>54 and $pm10hourly[$rr]<155){ $daypm10color="#FFFF00"; }; if($pm10hourly[$rr]>154 and $pm10hourly[$rr]<255){ $daypm10color="#FF7600"; }; if($pm10hourly[$rr]>254 and $pm10hourly[$rr]<355){ $daypm10color="#FF0000"; }; if($pm10hourly[$rr]>354 and $pm10hourly[$rr]<424){ $daypm10color="#990049"; }; if($pm10hourly[$rr]>424){ $daypm10color="#7E0023"; }; }; if($checkozone == "999"){ if($ozonehourly[$rr]<55){ $dayozonecolor="#00E000"; }; if($ozonehourly[$rr]>54 and $ozonehourly[$rr]<71){ $dayozonecolor="#FFFF00"; }; if($ozonehourly[$rr]>70 and $ozonehourly[$rr]<86){ $dayozonecolor="#FF7600"; }; if($ozonehourly[$rr]>85 and $ozonehourly[$rr]<106){ $dayozonecolor="#FF0000"; }; if($ozonehourly[$rr]>105 and $ozonehourly[$rr]<201){ $dayozonecolor="#990049"; }; if($ozonehourly[$rr]>200){ $dayozonecolor="#7E0023"; }; }; if($checkpm25 == "999"){ if($pm25hourly[$rr]<12.1){ $daypm25color="#00E000"; }; if($pm25hourly[$rr]>12 and $pm25hourly[$rr]<35.5){ $daypm25color="#FFFF00"; }; if($pm25hourly[$rr]>35.4 and $pm25hourly[$rr]<55.5){ $daypm25color="#FF7600"; }; if($pm25hourly[$rr]>55.5 and $pm25hourly[$rr]<105.5){ $daypm25color="#FF0000"; }; if($pm25hourly[$rr]>150.4 and $pm25hourly[$rr]<250.5){ $daypm25color="#990049"; }; if($pm25hourly[$rr]>250.4){ $daypm25color="#7E0023"; }; }; if($rr==0){ if($checkpm10 == "999"){ $pm10daycolor[$yy] .= $daypm10color; $pm10daycolor[$yy] .= "',"; }; if($checkpm25 == "999"){ $pm25daycolor[$yy] .= $daypm25color; $pm25daycolor[$yy] .= "',"; }; if($checkozone == "999"){ $ozonedaycolor[$yy] .= $dayozonecolor; $ozonedaycolor[$yy] .= "',"; }; } else { if($checkpm10 == "999"){ $pm10daycolor[$yy] .= "'"; $pm10daycolor[$yy] .= $daypm10color; $pm10daycolor[$yy] .= "',"; }; if($checkpm25 == "999"){ $pm25daycolor[$yy] .= "'"; $pm25daycolor[$yy] .= $daypm25color; $pm25daycolor[$yy] .= "',"; }; if($checkozone == "999"){ $ozonedaycolor[$yy] .= "'"; $ozonedaycolor[$yy] .= $dayozonecolor; $ozonedaycolor[$yy] .= "',"; }; }; $rr++; } while($rr<24); //Get the color for each day for each pollutant to be used in the table if($checkozone == "999"){ if ($fxozoneaqi[$yy] < 51){ $ozonetablecolor[$yy] = "good"; }; if ($fxozoneaqi[$yy] > 50 and $fxozoneaqi[$yy] < 101 ){ $ozonetablecolor[$yy] = "moderate"; }; if ($fxozoneaqi[$yy] > 100 and $fxozoneaqi[$yy] < 151 ){ $ozonetablecolor[$yy] = "usg"; }; if ($fxozoneaqi[$yy] > 150 and $fxozoneaqi[$yy] < 201 ){ $ozonetablecolor[$yy] = "unhealthy"; }; if ($fxozoneaqi[$yy] > 200 and $fxozoneaqi[$yy] < 301 ){ $ozonetablecolor[$yy] = "veryunhealthy"; }; if ($fxozoneaqi[$yy] > 300){ $ozonetablecolor[$yy] = "hazardous"; }; }; if($checkpm10 == "999"){ if ($fxpm10aqi[$yy] < 51){ $pm10tablecolor[$yy] = "good"; }; if ($fxpm10aqi[$yy] > 50 and $fxpm10aqi[$yy] < 101 ){ $pm10tablecolor[$yy] = "moderate"; }; if ($fxpm10aqi[$yy] > 100 and $fxpm10aqi[$yy] < 151 ){ $pm10tablecolor[$yy] = "usg"; }; if ($fxpm10aqi[$yy] > 150 and $fxpm10aqi[$yy] < 201 ){ $pm10tablecolor[$yy] = "unhealthy"; }; if ($fxpm10aqi[$yy] > 200 and $fxpm10aqi[$yy] < 301 ){ $pm10tablecolor[$yy] = "veryunhealthy"; }; if ($fxpm10aqi[$yy] > 300){ $pm10tablecolor[$yy] = "hazardous"; }; }; if($checkpm25 == "999"){ if ($fxpm25aqi[$yy] < 51){ $pm25tablecolor[$yy] = "good"; }; if ($fxpm25aqi[$yy] > 50 and $fxpm25aqi[$yy] < 101 ){ $pm25tablecolor[$yy] = "moderate"; }; if ($fxpm25aqi[$yy] > 100 and $fxpm25aqi[$yy] < 151 ){ $pm25tablecolor[$yy] = "usg"; }; if ($fxpm25aqi[$yy] > 150 and $fxpm25aqi[$yy] < 201 ){ $pm25tablecolor[$yy] = "unhealthy"; }; if ($fxpm25aqi[$yy] > 200 and $fxpm25aqi[$yy] < 301 ){ $pm25tablecolor[$yy] = "veryunhealthy"; }; if ($fxpm25aqi[$yy] > 300){ $pm25tablecolor[$yy] = "hazardous"; }; }; //Get the long version of each day name if ($fxday[$yy] == "MON"){ $fxdaylong[$yy] = "Monday"; }; if ($fxday[$yy] == "TUE"){ $fxdaylong[$yy] = "Tuesday"; }; if ($fxday[$yy] == "WED"){ $fxdaylong[$yy] = "Wednesday"; }; if ($fxday[$yy] == "THU"){ $fxdaylong[$yy] = "Thursday"; }; if ($fxday[$yy] == "FRI"){ $fxdaylong[$yy] = "Friday"; }; if ($fxday[$yy] == "SAT"){ $fxdaylong[$yy] = "Saturday"; }; if ($fxday[$yy] == "SUN"){ $fxdaylong[$yy] = "Sunday"; }; $yy++; } $fxdiscussion = $xml->discussion; $fxtime = $xml->time; ?>
Notice";
if($diffdate==1){
echo "
No archived forecast is available for the requested date of ".$dayOfWeek2.", ".$monthp."/".$dayp."/".$yearp.".
This is the archived forecast that was created on ".$dayOfWeek1.", ".$fxdate[0].".";
echo "
For the current forecast click HERE
".$fxdaylong[$a].": ".$flagcolor[$a]." | ".$fxdaylong[$b].": ".$flagcolor[$b]." |
---|