فهرست منبع

Bug fixes

Minor bug fixes related to HTML5 and Font Awesome code
Josh Smith 6 سال پیش
والد
کامیت
5b490324b1
6فایلهای تغییر یافته به همراه1313 افزوده شده و 1313 حذف شده
  1. 875 875
      index.html.tmpl
  2. 3 3
      month.html.tmpl
  3. 245 245
      summary.html.tmpl
  4. 183 183
      text.php.tmpl
  5. 4 4
      week.html.tmpl
  6. 3 3
      year.html.tmpl

+ 875 - 875
index.html.tmpl

@@ -1,875 +1,875 @@
-<!DOCTYPE html>
-<html lang="en" class="no-js">
-  <head itemscope itemtype="http://schema.org/Website">
-    <meta charset="utf-8">
-    <meta http-equiv="X-UA-Compatible" content="IE=edge">
-    <meta http-equiv="Refresh" content="180">
-    #if $Extras.has_key('cwop')
-    <meta name="description" content="$station.location Weather Station ($Extras.cwop) - weather web site powered by WeeWX">
-    #else
-    <meta name="description" content="$station.location Weather Station - weather web site powered by WeeWX">
-    #end if
-    <meta name="viewport" content="width=device-width, initial-scale=1">
-    <link rel="profile" href="http://gmpg.org/xfn/11" />
-    #if $Extras.has_key('web_url')
-    <link rel="canonical" href="$Extras.web_url"/>
-    #end if
-    <title>$station.location Current Weather Conditions</title>
-    <!-- Open Graph -->
-    #if $Extras.has_key('cwop')
-    <meta property="og:site_name" content="$station.location Weather Station ($Extras.cwop)" />
-    <meta property="og:title" content="$station.location ($Extras.cwop) Current Weather Conditions"/>
-    #else
-    <meta property="og:site_name" content="$station.location Weather Station" />
-    <meta property="og:title" content="$station.location Current Weather Conditions"/>
-    #end if
-    #if $Extras.has_key('web_url')
-    <meta property="og:image" content="$Extras.web_url/daytempdew.png"/>
-    <meta property="og:url" content="$Extras.web_url"/>
-    #end if
-    #if $Extras.has_key('cwop')
-    <meta property="og:description" content="Current Weather Conditions in $station.location ($Extras.cwop) - weather web site powered by WeeWX" />
-    #else
-    <meta property="og:description" content="Current Weather Conditions in $station.location - weather web site powered by WeeWX" />
-    #end if
-    <meta property="og:type" content="website" />
-    <!--SM Markups -->
-    #if $Extras.has_key('cwop')
-    <meta itemprop="name" content="$station.location ($Extras.cwop) Current Weather Conditions"/>
-    #else
-    <meta itemprop="name" content="$station.location Current Weather Conditions"/>
-    #end if
-    <meta itemprop="image" content="$Extras.web_url/daytempdew.png"/>
-    #if $Extras.has_key('web_url')
-    <meta itemprop="url" content="$Extras.web_url"/>
-    #end if
-    #if $Extras.has_key('cwop')
-    <meta itemprop="description" content="Current Weather Conditions in $station.location ($Extras.cwop) - weather web site powered by WeeWX" />
-    #else
-    <meta itemprop="description" content="Current Weather Conditions in $station.location - weather web site powered by WeeWX" />
-    #end if
-
-    <!-- FavIcons -->
-    <link rel="icon" href="favicon.ico" type="image/png">
-    <link rel="apple-touch-icon" href="touch-icon.png"/>
-        
-    <!-- Styles -->
-    <link href='http://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet' type='text/css'>
-    <link rel="stylesheet" href="css/main.css">
-
-    <!-- Font Awesome CDN links for 5.3-->
-    <!-- If you have a pro license -->
-    <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous">
-    <!-- Free license -->
-    <!-- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous"> -->
-    
-    <!-- Script -->
-    <script src="js/modernizr-2.6.2.min.js"></script>
-    <script src="js/checkdiff.js"></script>
-
-  </head>
-  <body>
-    <header>
-      <div class="container-fix" >
-        <div class="h-left" >
-          <h1><i class="fas fa-cloud" ></i> $station.location </h1>
-          <p>$station.latitude[0]&deg; $station.latitude[1]' $station.latitude[2] | $station.longitude[0]&deg; $station.longitude[1]' $station.longitude[2] | $station.altitude | <a href="https://www.google.com/maps/?q=$station.latitude[0]&deg;%20$station.latitude[1]%20$station.latitude[2],$station.longitude[0]&deg;%20$station.longitude[1]%20$station.longitude[2]" target="_blank" ><i class="fas fa-map-marker-alt" ></i> Show on map</a></p>
-          <h2>Current Weather Conditions</h2>
-          <p><i class="far fa-clock" ></i> $current.dateTime $current.dateTime.format("%Z")</p>
-          <p id="freshweather" class="m-orange"></p>
-          <script>
-            window.onload = checkDiff("$current.dateTime ($current.dateTime.format('%Z'))");
-          </script>
-        </div>
-        <div class="h-right" >
-          <table>
-            <tr>
-              <td><b>Station:</b></td>
-              <td>$station.hardware</td>
-            </tr>
-            <tr>
-              <td><b>Software:</b></td>
-              <td><a href="http://weewx.com/" target="_blank" >WeeWX v$station.version</a></td>
-            </tr>
-            <tr>
-              <td><b>Weewx uptime:</b></td>
-              <td>$station.uptime</td>
-            </tr>
-            <tr>
-              <td><b>Server uptime:</b></td>
-              <td>$station.os_uptime</td>
-            </tr>
-          </table>
-        </div>
-        <nav>
-          <ul class="topnav" id="myTopnav">
-            <li class="icon"><a href="javascript:void(0);" onclick="myFunction()"><i class="fas fa-bars" ></i></a></li>
-            <li class="active" ><a href="/" >Current</a></li>
-            <li><a href="week.html" >Week</a></li>
-            <li><a href="month.html" >Month</a></li>
-            <li><a href="year.html" >Year</a></li>
-            <li><a href="summary.html" >Summaries</a></li>
-            <li><a href="about.html" >About</a></li>
-            <li><a href="RSS/weewx_rss.xml" ><i class="fas fa-rss" ></i></a></li>
-          </ul>
-        </nav>
-      </div>
-    </header>
-    <div class="main" >
-      <div class="container" >
-        <div class="left" >
-          <div class="card" >
-            #if $current.rainRate.raw == 0.0
-            <h1><i class="fas fa-sun m-orange" ></i> Current Conditions</h1>
-            #else if $current.rainRate.raw >= 0.01
-            <h1><i class="fas fa-umbrella m-blau" ></i> Current Conditions</h1>
-            #else
-            <h1><i class="fas fa-sun m-orange" ></i> Current Conditions</h1>
-            #end if
-            <table class="tablespacer">
-              <tr>
-                <td>Outside Temperature</td>
-                <td>$current.outTemp</td>
-              </tr>
-              <tr>
-                <td>Wind Chill</td>
-                <td>$current.windchill</td>
-              </tr>
-              <tr>
-                <td>Heat Index</td>
-                <td>$current.heatindex</td>
-              </tr>
-              <tr>
-                <td>Dewpoint</td>
-                <td>$current.dewpoint</td>
-              </tr>
-              <tr>
-                <td>Humidity</td>
-                <td>$current.outHumidity</td>
-              </tr>
-              <tr>
-                <td>Barometer</td>
-                <td>$current.barometer</td>
-              </tr>
-              <tr>
-                <td>Barometer Trend ($trend.time_delta.hour.format("%.0f"))</td>
-                <td>$trend.barometer</td>
-              </tr>
-              #if $current.windSpeed.raw == 0.0
-              <tr>
-                <td>Wind</td>
-                <td>$current.windSpeed </td>
-              </tr>
-              #else
-              <tr>
-                <td>Wind</td>
-                <td>$current.windSpeed $current.windDir.ordinal_compass ($current.windDir)</td>
-              </tr>
-              #end if
-              #if $current.windGust.raw == 0.0
-              <tr>
-                <td>Wind Gust</td>
-                <td>$current.windGust </td>
-              </tr>
-              #else
-              <tr>
-                <td>Wind Gust</td>
-                <td>$current.windGust $current.windGustDir.ordinal_compass ($current.windGustDir)</td>
-              </tr>
-              #end if
-              <tr>
-                <td>Rain Rate</td>
-                <td>$current.rainRate</td>
-              </tr>
-	      #if $day.inTemp.has_data
-              <tr>
-                <td>Inside Temperature</td>
-                <td>$current.inTemp</td>
-              </tr>
-	      #end if
-	      #if $day.inHumidity.has_data
-              <tr>
-                <td>Inside Humidity</td>
-                <td>$current.inHumidity</td>
-              </tr>
-	      #end if
-              #if $day.extraTemp1.has_data
-              <tr>
-                <td>Pond Temperature</td>
-                <td>$current.extraTemp1</td>
-              </tr>
-              #end if
-              #if $day.UV.has_data
-              <tr>
-                <td>UV Index</td>
-                <td>$current.UV</td>
-              </tr>
-              #end if
-              #if $day.ET.has_data and $day.ET.sum.raw > 1
-              <tr>
-                <td>ET</td>
-                <td>$current.ET</td>
-              </tr>
-              #end if
-              #if $day.radiation.has_data
-              <tr>
-                <td>Solar Radiation</td>
-                <td>$current.radiation</td>
-              </tr>
-              #end if
-	      #if $day.lux.has_data
-              <tr>
-                <td>Brightness</td>
-                <td>$current.lux</td>
-              </tr>
-              #end if
-	      #if $day.lightningStrikes.has_data
-              <tr>
-                <td>Lightning Strikes</td>
-                <td>$current.lightningStrikes</td>
-              </tr>
-	      <tr>
-                <td>Average Strike Distance</td>
-                <td>$current.lightningAvgDistance</td>
-              </tr>
-              #end if
-            </table>
-          </div>
-          <div class="card" >
-            <h1><i class="far fa-moon m-grau" ></i> Since Midnight</h1>
-            <table class="tablespacer">
-              <tr>
-                <td>High Temperature</td>
-                <td>$day.outTemp.max</td>
-                <td>$day.outTemp.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Temperature</td>
-                <td>$day.outTemp.min</td>
-                <td>$day.outTemp.mintime</td>
-              </tr>
-              <tr>
-                <td>High Heat Index</td>
-                <td>$day.heatindex.max</td>
-                <td>$day.heatindex.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Wind Chill</td>
-                <td>$day.windchill.min</td>
-                <td>$day.windchill.mintime</td>
-              </tr>
-              <tr>
-                <td>High Dewpoint</td>
-                <td>$day.dewpoint.max</td>
-                <td>$day.dewpoint.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Dewpoint</td>
-                <td>$day.dewpoint.min</td>
-                <td>$day.dewpoint.mintime</td>
-              </tr>
-              <tr>
-                <td>High Humidity</td>
-                <td>$day.outHumidity.max</td>
-                <td>$day.outHumidity.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Humidity</td>
-                <td>$day.outHumidity.min</td>
-                <td>$day.outHumidity.mintime</td>
-              </tr>
-              <tr>
-                <td>High Barometer</td>
-                <td>$day.barometer.max</td>
-                <td>$day.barometer.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Barometer</td>
-                <td>$day.barometer.min</td>
-                <td>$day.barometer.mintime</td>
-              </tr>
-              <tr>
-                <td>Today's Rain</td>
-                <td>$day.rain.sum</td>
-                <td></td>
-              </tr>
-              <tr>
-                <td>High Rain Rate</td>
-                <td>$day.rainRate.max</td>
-                <td>$day.rainRate.maxtime</td>
-              </tr>
-              <tr>
-                <td>High Wind</td>
-                <td>$day.wind.max $day.wind.gustdir</td>
-                <td>$day.wind.maxtime</td>
-              </tr>
-              <tr>
-                <td>Average Wind</td>
-                <td>$day.wind.avg</td>
-                <td></td>
-              </tr>
-              <tr>
-                <td>RMS Wind</td>
-                <td>$day.wind.rms</td>
-                <td></td>
-              </tr>
-              <tr>
-                <td>Vector Average Speed</td>
-                <td>$day.wind.vecavg</td>
-                <td></td>
-              </tr>
-              <tr>
-                <td>Vector Average Direction</td>
-                <td>$day.wind.vecdir</td>
-                <td></td>
-              </tr>
-	      #if $day.inTemp.has_data
-              <tr>
-                <td>High Inside Temperature</td>
-                <td>$day.inTemp.max</td>
-                <td>$day.inTemp.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Inside Temperature</td>
-                <td>$day.inTemp.min</td>
-                <td>$day.inTemp.mintime</td>
-              </tr>
-	      #end if
-	      #if $day.inHumidity.has_data
-              <tr>
-                <td>High Inside Humidity</td>
-                <td>$day.inHumidity.max</td>
-                <td>$day.inHumidity.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Inside Humidity</td>
-                <td>$day.inHumidity.min</td>
-                <td>$day.inHumidity.mintime</td>
-              </tr>
-	      #end if
-              #if $day.extraTemp1.has_data
-              <tr>
-                <td>High Pond Temp</td>
-                <td>$day.extraTemp1.max</td>
-                <td>$day.extraTemp1.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Pond Temp</td>
-                <td>$day.extraTemp1.min</td>
-                <td>$day.extraTemp1.mintime</td>
-              </tr>
-              #end if
-              #if $day.UV.has_data
-              <tr>
-                <td>High UV</td>
-                <td>$day.UV.max</td>
-                <td>$day.UV.maxtime</td>
-              </tr>
-              #end if
-              #if $day.ET.has_data and $day.ET.sum.raw > 1
-              <tr>
-                <td>High ET</td>
-                <td>$day.ET.max</td>
-                <td>$day.ET.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low ET</td>
-                <td>$day.ET.min</td>
-                <td>$day.ET.mintime</td>
-              </tr>
-              #end if
-              #if $day.radiation.has_data
-              <tr>
-                <td>High Radiation</td>
-                <td>$day.radiation.max</td>
-                <td>$day.radiation.maxtime</td>
-              </tr>
-              #end if
-	      #if $day.lux.has_data
-              <tr>
-                <td>High Brightness</td>
-                <td>$day.lux.max</td>
-                <td>$day.lux.maxtime</td>
-              </tr>
-              #end if
-	      #if $day.lightningStrikes.has_data
-              <tr>
-                <td>Lightning Strikes</td>
-                <td>$day.lightningStrikes.sum</td>
-                <td></td>
-              </tr>
-	       <tr>
-                <td>Average Strike Distance</td>
-                <td>$day.lightningAvgDistance.avg</td>
-		<td></td>
-              </tr>
-              #end if
-            </table>
-          </div>
-          
-            <!--Leap Year Code -->
-            #set $yr = int($day.dateTime.format("%Y"))%4
-            #if $yr == 0
-              #if $yr % 100 == 0
-                #if $yr % 400 == 0
-                  #if $day.dateTime.format("%d-%b") == '29-Feb'
-                    #set $n = 1461
-                  #else if $day.dateTime.format("%d-%b") >= '01-Mar'
-                    #set $n = 366
-                  #else
-                    #set $n = 365
-                  #end if
-                #else
-                  #set $n = 365
-                #end if
-              #else
-                #if $day.dateTime.format("%d-%b") == '29-Feb'
-                  #set $n = 1461
-                #else if $day.dateTime.format("%d-%b") >= '01-Mar'
-                  #set $n = 366
-                #else
-                  #set $n = 365
-                #end if
-              #end if
-            #else
-              #set $yrNew = ($yr - 1)
-            #if $yrNew % 100 == 0
-              #if $yrNew % 400 == 0
-                #if $day.dateTime.format("%d-%b") < '01-Mar'
-                  #set $n = 366
-                #else
-                  #set $n = 365
-                #end if
-              #end if
-              #else
-                #set $n = 365
-              #end if
-            #end if
-	  #if $days_ago($days_ago=$n).outTemp.max.string != "   N/A"
-	  <div class="card" >
-            <h1><i class="fas fa-history" ></i> Last $days_ago($days_ago=$n).dateTime.format("%d-%b (%Y)") </h1>
-            <table class="tablespacer">
-              <tr>
-                <td>High Temperature</td>
-                <td>$days_ago($days_ago=$n).outTemp.max</td>
-                <td>$days_ago($days_ago=$n).outTemp.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Temperature</td>
-                <td>$days_ago($days_ago=$n).outTemp.min</td>
-                <td>$days_ago($days_ago=$n).outTemp.mintime</td>
-              </tr>
-              <tr>
-                <td>High Dewpoint</td>
-                <td>$days_ago($days_ago=$n).dewpoint.max</td>
-                <td>$days_ago($days_ago=$n).dewpoint.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Dewpoint</td>
-                <td>$days_ago($days_ago=$n).dewpoint.min</td>
-                <td>$days_ago($days_ago=$n).dewpoint.mintime</td>
-              </tr>
-              <tr>
-                <td>High Humidity</td>
-                <td>$days_ago($days_ago=$n).outHumidity.max</td>
-                <td>$days_ago($days_ago=$n).outHumidity.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Humidity</td>
-                <td>$days_ago($days_ago=$n).outHumidity.min</td>
-                <td>$days_ago($days_ago=$n).outHumidity.mintime</td>
-              </tr>
-              <tr>
-                <td>High Barometer</td>
-                <td>$days_ago($days_ago=$n).barometer.max</td>
-                <td>$days_ago($days_ago=$n).barometer.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Barometer</td>
-                <td>$days_ago($days_ago=$n).barometer.min</td>
-                <td>$days_ago($days_ago=$n).barometer.mintime</td>
-              </tr>
-              <tr>
-                <td>Rain</td>
-                <td>$days_ago($days_ago=$n).rain.sum</td>
-                <td></td>
-              </tr>
-              <tr>
-                <td>High Rain Rate</td>
-                <td>$days_ago($days_ago=$n).rainRate.max</td>
-                <td>$days_ago($days_ago=$n).rainRate.maxtime</td>
-              </tr>
-              <tr>
-                <td>High Wind</td>
-                <td>$days_ago($days_ago=$n).wind.max <br> $days_ago($days_ago=$n).wind.gustdir</td>
-                <td>$days_ago($days_ago=$n).wind.maxtime</td>
-              </tr>
-	      #if $days_ago($days_ago=$n).inTemp.has_data
-              <tr>
-                <td>High Inside Temperature</td>
-                <td>$days_ago($days_ago=$n).inTemp.max</td>
-                <td>$days_ago($days_ago=$n).inTemp.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Inside Temperature</td>
-                <td>$days_ago($days_ago=$n).inTemp.min</td>
-                <td>$days_ago($days_ago=$n).inTemp.mintime</td>
-              </tr>
-	      #end if
-	      #if $days_ago($days_ago=$n).inHumidity.has_data
-              <tr>
-                <td>High Inside Humidity</td>
-                <td>$days_ago($days_ago=$n).inHumidity.max</td>
-                <td>$days_ago($days_ago=$n).inHumidity.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Inside Humidity</td>
-                <td>$days_ago($days_ago=$n).inHumidity.min</td>
-                <td>$days_ago($days_ago=$n).inHumidity.mintime</td>
-              </tr>
-	      #end if
-              #if $days_ago($days_ago=$n).extraTemp1.has_data
-              <tr>
-                <td>High Pond Temp</td>
-                <td>$days_ago($days_ago=$n).extraTemp1.max</td>
-                <td>$days_ago($days_ago=$n).extraTemp1.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low Pond Temp</td>
-                <td>$days_ago($days_ago=$n).extraTemp1.min</td>
-                <td>$days_ago($days_ago=$n).extraTemp1.mintime</td>
-              </tr>
-              #end if
-              #if $days_ago($days_ago=$n).UV.has_data
-              <tr>
-                <td>High UV</td>
-                <td>$days_ago($days_ago=$n).UV.max</td>
-                <td>$days_ago($days_ago=$n).UV.maxtime</td>
-              </tr>
-              #end if
-              #if $days_ago($days_ago=$n).ET.has_data and $days_ago($days_ago=$n).ET.sum.raw >1
-              <tr>
-                <td>High ET</td>
-                <td>$days_ago($days_ago=$n).ET.max</td>
-                <td>$days_ago($days_ago=$n).ET.maxtime</td>
-              </tr>
-              <tr>
-                <td>Low ET</td>
-                <td>$days_ago($days_ago=$n).ET.min</td>
-                <td>$days_ago($days_ago=$n).ET.mintime</td>
-              </tr>
-              #end if
-              #if $days_ago($days_ago=$n).radiation.has_data
-              <tr>
-                <td>High Radiation</td>
-                <td>$days_ago($days_ago=$n).radiation.max</td>
-                <td>$days_ago($days_ago=$n).radiation.maxtime</td>
-              </tr>
-              #end if
-	      #if $days_ago($days_ago=$n).lux.has_data
-              <tr>
-                <td>High Brightness</td>
-                <td>$days_ago($days_ago=$n).lux.max</td>
-                <td>$days_ago($days_ago=$n).lux.maxtime</td>
-              </tr>
-              #end if
-            </table>
-          </div>
-	  #end if
-          #if $Extras.has_key('radar')
-          <div class="card" >
-	    <h1><i class="fab fa-react m-rot"></i> Radar</h1>
-            $Extras.radar
-	    <br>
-          </div>
-          #end if
-
-          #if $Extras.has_key('lightning_map')
-          <div class="card" >
-            #if $Extras.has_key('lightning_url')
-            <a href="$Extras.lightning_url" target="_blank">
-            #end if
-            <img src="$Extras.lightning_map" alt="Lightning Map" class="space small" />
-            #if $Extras.has_key('lightning_url')
-            </a>
-            #end if
-          </div>
-          #end if
-
-          #if $Extras.has_key('camera')
-          <!--camera section-->
-          <div class="card" >
-            <h1><i class="fas fa-camera-alt" style="color:#999"></i> Local Cameras</h1>
-            <div class="s-center s-content s-display-container" style="max-width:800px">
-              #set $b=0
-              #for $i in $Extras.camera
-              <div class="mySlides"><b>$Extras.cameratitle[$b]</b><br>
-                <img src="$i" alt="camera $b" style="width:100%">
-              </div>
-              #set $b=$b+1 
-              #end for
-              <div class="s-center s-container s-section s-large s-text-white s-display-bottommiddle" style="width:100%">
-                <div class="s-left" onclick="plusDivs(-1)">&nbsp;&nbsp;&nbsp;&nbsp;<i class="fa fa-chevron-left s-hover-text-gray"></i></div>
-                <div class="s-right" onclick="plusDivs(1)"><i class="fa fa-chevron-right s-hover-text-gray"></i>&nbsp;&nbsp;&nbsp;&nbsp;</div>
-                #set $a=1
-                #for $j in $Extras.camera
-                <span class="s-badge demo s-border s-transparent s-hover-white" onclick="currentDiv($a)"></span>
-                #set $a=$a+1 
-                #end for
-              </div>
-            </div>
-            <script>
-              var slideIndex = 1;
-              showDivs(slideIndex);
-              
-              function plusDivs(n) {
-                showDivs(slideIndex += n);
-              }
-              
-              function currentDiv(n) {
-                showDivs(slideIndex = n);
-              }
-              
-              function showDivs(n) {
-                var i;
-                var x = document.getElementsByClassName("mySlides");
-                var dots = document.getElementsByClassName("demo");
-                if (n > x.length) {slideIndex = 1}    
-                if (n < 1) {slideIndex = x.length}
-                for (i = 0; i < x.length; i++) {
-                   x[i].style.display = "none";  
-                }
-                for (i = 0; i < dots.length; i++) {
-                   dots[i].className = dots[i].className.replace(" s-white", "");
-                }
-                x[slideIndex-1].style.display = "block";  
-                dots[slideIndex-1].className += " s-white";
-              }
-            </script>
-          </div>
-          #end if
-        </div>
-        <div class="right" >
-          <div class="card" >
-            <h1><i class="far fa-star m-rot" ></i> Almanac</h1>
-            #if $almanac.hasExtras
-            ## Extended almanac information is available. Do the full set of tables.
-            #set $sun_altitude = $almanac.sun.alt
-            #if $sun_altitude < 0
-            #set $sun_None="<i>(Always down)</i>"
-            #else
-            #set $sun_None="<i>(Always up)</i>"
-            #end if
-            <div class="haelfte" >
-              <h3>Sun</h3>
-              <table>
-                <tr>
-                  <td>Start civil twilight:</td>
-                  <td>$almanac(horizon=-6).sun(use_center=1).rise</td>
-                </tr>
-                <tr>
-                  <td>Sunrise</td>
-                  <td>$almanac.sun.rise.string($sun_None)</td>
-                </tr>
-                <tr>
-                  <td>Transit:</td>
-                  <td>$almanac.sun.transit</td>
-                </tr>
-                <tr>
-                  <td>Sunset:</td>
-                  <td>$almanac.sun.set.string($sun_None)</td>
-                </tr>
-                <tr>
-                  <td>End civil twilight:</td>
-                  <td>$almanac(horizon=-6).sun(use_center=1).set</td>
-                </tr>
-                <tr>
-                  <td>Azimuth:</td>
-                  <td>$("%.1f&deg;" % $almanac.sun.az)</td>
-                </tr>
-                <tr>
-                  <td>Altitude:</td>
-                  <td>$("%.1f&deg;" % $sun_altitude)</td>
-                </tr>
-                <tr>
-                  <td>Right ascension:</td>
-                  <td>$("%.1f&deg;" % $almanac.sun.ra)</td>
-                </tr>
-                <tr>
-                  <td>Declination:</td>
-                  <td>$("%.1f&deg;" % $almanac.sun.dec)</td>
-                </tr>
-                #if $almanac.next_equinox.raw < $almanac.next_solstice.raw
-                ## The equinox is before the solstice. Display them in order.
-                <tr>
-                  <td>Equinox:</td>
-                  <td>$almanac.next_equinox</td>
-                </tr>
-                <tr>
-                  <td>Solstice:</td>
-                  <td>$almanac.next_solstice</td>
-                </tr>
-                #else
-                ## The solstice is before the equinox. Display them in order.
-                <tr>
-                  <td>Solstice:</td>
-                  <td>$almanac.next_solstice</td>
-                </tr>
-                <tr>
-                  <td>Equinox:</td>
-                  <td>$almanac.next_equinox</td>
-                </tr>
-                #end if
-              </table>
-            </div>
-            <div class="haelfte" >
-              <h3>Moon</h3>
-              <table>
-                <tr>
-                  <td>Rise:</td>
-                  <td>$almanac.moon.rise</td>
-                </tr>
-                <tr>
-                  <td>Transit:</td>
-                  <td>$almanac.moon.transit</td>
-                </tr>
-                <tr>
-                  <td>Set:</td>
-                  <td>$almanac.moon.set</td>
-                </tr>
-                <tr>
-                  <td>Azimuth:</td>
-                  <td>$("%.1f&deg;" % $almanac.moon.az)</td>
-                </tr>
-                <tr>
-                  <td>Altitude:</td>
-                  <td>$("%.1f&deg;" % $almanac.moon.alt)</td>
-                </tr>
-                <tr>
-                  <td>Right ascension:</td>
-                  <td>$("%.1f&deg;" % $almanac.moon.ra)</td>
-                </tr>
-                <tr>
-                  <td>Declination:</td>
-                  <td>$("%.1f&deg;" % $almanac.moon.dec)</td>
-                </tr>
-                #if $almanac.next_full_moon.raw < $almanac.next_new_moon.raw
-                <tr>
-                  <td>Full moon:</td>
-                  <td>$almanac.next_full_moon</td>
-                </tr>
-                <tr>
-                  <td>New moon:</td>
-                  <td>$almanac.next_new_moon</td>
-                </tr>
-                #else
-                <tr>
-                  <td>New moon:</td>
-                  <td>$almanac.next_new_moon</td>
-                </tr>
-                <tr>
-                  <td>Full moon:</td>
-                  <td>$almanac.next_full_moon</td>
-                </tr>
-                #end if
-                <tr>
-                  <td>Phase:</td>
-                  <td>$almanac.moon_phase<br />($almanac.moon_fullness% full)</td>
-                </tr>
-              </table>
-            </div>
-            #else
-            ## No extended almanac information available. Fall back to a simple table.
-            <table>
-              <tr>
-                <td>Sunrise:</td>
-                <td>$almanac.sunrise</td>
-              </tr>
-              <tr>
-                <td>Sunset:</td>
-                <td>$almanac.sunset</td>
-              </tr>
-              <tr>
-                <td>Moon Phase:</td>
-                <td>$almanac.moon_phase<br/>($almanac.moon_fullness% full)</td>
-              </tr>
-            </table>
-            #end if
-          </div>
-          <div class="card cc graphs" >
-            <h1><i class="far fa-chart-line m-gruen" ></i> Graphs</h1>
-            <img src="daytempdew.png" alt="temperatures" />
-            <img src="dayrain.png" alt="rain" />
-            <img src="daywind.png" alt="wind" />
-            <img src="daywinddir.png" alt="Hi Wind" />
-            <img src="daywindvec.png" alt="Wind Vector" />
-            <img src="daybarometer.png" alt="barometer"/>
-	    #if $day.inTemp.has_data
-            <img src="dayinside.png" alt="Inside" />
-	    #end if
-            <img src="dayinhumid.png" alt="Inside/Outside Humidity" />
-            #if $day.radiation.has_data
-            <img src="dayradiation.png" alt="Radiation" />
-            #end if
-            #if $day.UV.has_data
-            <img src="dayuv.png" alt="UV Index" />
-            #end if
-            #if $day.rxCheckPercent.has_data
-            <img src="dayrx.png" alt="day rx percent"/>
-            #end if
-	    #if $day.lightningStrikes.has_data
-            <img src="daylightning.png" alt="Lightning" />
-	    #end if
-	    #if $day.windBatteryStatus.has_data and $day.outTempBatteryStatus.has_data
-            <img src="daybattery.png" alt="day battery"/>
-            #end if
-            #if $day.extraTemp1.has_data
-            <img src="daypond.png" alt="Pond Temperatures" />
-            #end if
-          </div>
-        </div>
-      </div>
-    </div>
-    <footer>
-      <div class="container-fix">
-        <div style="text-align:center">
-          #if $Extras.has_key('you')
-          <i class="fab fa-pied-piper-pp"> </i><a href=mailto:$Extras.email> $Extras.you</a> 
-          #end if
-          &sdot;
-          Copyright <i class="far fa-copyright"></i> $latest.dateTime.format("%Y") 
-          <br>
-          Sofaskin by <a href="http://blauesledersofa.de">Blaues Ledersofa</a>
-          &sdot;
-          CW9009 Version by <a href="http://cw9009.x10host.com">JDS</a>
-          &sdot;
-          Powered by<i class="fas fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
-        </div>
-      </div>
-    </footer>
-    #if $Extras.has_key('googleAnalyticsId')
-    <!-- Google Analytics -->
-    <script>
-      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
-      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
-      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
-      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
-      
-      ga('create', '$Extras.googleAnalyticsId', 'auto');
-      ga('send', 'pageview');
-    </script>
-    #end if
-    <!-- Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon -->
-    <script>
-      function myFunction() {
-          var x = document.getElementById("myTopnav");
-          if (x.className === "topnav") {
-              x.className += " responsive";
-          } else {
-              x.className = "topnav";
-          }
-      }
-    </script>
-  </body>
-</html>
-
+<!DOCTYPE html>
+<html lang="en" class="no-js">
+  <head itemscope itemtype="http://schema.org/Website">
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta http-equiv="Refresh" content="180">
+    #if $Extras.has_key('cwop')
+    <meta name="description" content="$station.location Weather Station ($Extras.cwop) - weather web site powered by WeeWX">
+    #else
+    <meta name="description" content="$station.location Weather Station - weather web site powered by WeeWX">
+    #end if
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <link rel="profile" href="http://gmpg.org/xfn/11" />
+    #if $Extras.has_key('web_url')
+    <link rel="canonical" href="$Extras.web_url"/>
+    #end if
+    <title>$station.location Current Weather Conditions</title>
+    <!-- Open Graph -->
+    #if $Extras.has_key('cwop')
+    <meta property="og:site_name" content="$station.location Weather Station ($Extras.cwop)" />
+    <meta property="og:title" content="$station.location ($Extras.cwop) Current Weather Conditions"/>
+    #else
+    <meta property="og:site_name" content="$station.location Weather Station" />
+    <meta property="og:title" content="$station.location Current Weather Conditions"/>
+    #end if
+    #if $Extras.has_key('web_url')
+    <meta property="og:image" content="$Extras.web_url/daytempdew.png"/>
+    <meta property="og:url" content="$Extras.web_url"/>
+    #end if
+    #if $Extras.has_key('cwop')
+    <meta property="og:description" content="Current Weather Conditions in $station.location ($Extras.cwop) - weather web site powered by WeeWX" />
+    #else
+    <meta property="og:description" content="Current Weather Conditions in $station.location - weather web site powered by WeeWX" />
+    #end if
+    <meta property="og:type" content="website" />
+    <!--SM Markups -->
+    #if $Extras.has_key('cwop')
+    <meta itemprop="name" content="$station.location ($Extras.cwop) Current Weather Conditions"/>
+    #else
+    <meta itemprop="name" content="$station.location Current Weather Conditions"/>
+    #end if
+    <meta itemprop="image" content="$Extras.web_url/daytempdew.png"/>
+    #if $Extras.has_key('web_url')
+    <meta itemprop="url" content="$Extras.web_url"/>
+    #end if
+    #if $Extras.has_key('cwop')
+    <meta itemprop="description" content="Current Weather Conditions in $station.location ($Extras.cwop) - weather web site powered by WeeWX" />
+    #else
+    <meta itemprop="description" content="Current Weather Conditions in $station.location - weather web site powered by WeeWX" />
+    #end if
+
+    <!-- FavIcons -->
+    <link rel="icon" href="favicon.ico" type="image/png">
+    <link rel="apple-touch-icon" href="touch-icon.png"/>
+        
+    <!-- Styles -->
+    <link href='http://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet' type='text/css'>
+    <link rel="stylesheet" href="css/main.css">
+
+    <!-- Font Awesome CDN links for 5.3-->
+    <!-- If you have a pro license -->
+    <!-- <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous"> -->
+    <!-- Free license -->
+    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
+    
+    <!-- Script -->
+    <script src="js/modernizr-2.6.2.min.js"></script>
+    <script src="js/checkdiff.js"></script>
+
+  </head>
+  <body>
+    <header>
+      <div class="container-fix" >
+        <div class="h-left" >
+          <h1><i class="fas fa-cloud" ></i> $station.location </h1>
+          <p>$station.latitude[0]&deg; $station.latitude[1]' $station.latitude[2] | $station.longitude[0]&deg; $station.longitude[1]' $station.longitude[2] | $station.altitude | <a href="https://www.google.com/maps/?q=$station.latitude[0]&deg;%20$station.latitude[1]%20$station.latitude[2],$station.longitude[0]&deg;%20$station.longitude[1]%20$station.longitude[2]" target="_blank" ><i class="fas fa-map-marker-alt" ></i> Show on map</a></p>
+          <h2>Current Weather Conditions</h2>
+          <p><i class="far fa-clock" ></i> $current.dateTime $current.dateTime.format("%Z")</p>
+          <p id="freshweather" class="m-orange"></p>
+          <script>
+            window.onload = checkDiff("$current.dateTime ($current.dateTime.format('%Z'))");
+          </script>
+        </div>
+        <div class="h-right" >
+          <table>
+            <tr>
+              <td><b>Station:</b></td>
+              <td>$station.hardware</td>
+            </tr>
+            <tr>
+              <td><b>Software:</b></td>
+              <td><a href="http://weewx.com/" target="_blank" >WeeWX v$station.version</a></td>
+            </tr>
+            <tr>
+              <td><b>Weewx uptime:</b></td>
+              <td>$station.uptime</td>
+            </tr>
+            <tr>
+              <td><b>Server uptime:</b></td>
+              <td>$station.os_uptime</td>
+            </tr>
+          </table>
+        </div>
+        <nav>
+          <ul class="topnav" id="myTopnav">
+            <li class="icon"><a href="javascript:void(0);" onclick="myFunction()"><i class="fas fa-bars" ></i></a></li>
+            <li class="active" ><a href="/" >Current</a></li>
+            <li><a href="week.html" >Week</a></li>
+            <li><a href="month.html" >Month</a></li>
+            <li><a href="year.html" >Year</a></li>
+            <li><a href="summary.html" >Summaries</a></li>
+            <li><a href="about.html" >About</a></li>
+            <li><a href="RSS/weewx_rss.xml" ><i class="fas fa-rss" ></i></a></li>
+          </ul>
+        </nav>
+      </div>
+    </header>
+    <div class="main" >
+      <div class="container" >
+        <div class="left" >
+          <div class="card" >
+            #if $current.rainRate.raw == 0.0
+            <h1><i class="fas fa-sun m-orange" ></i> Current Conditions</h1>
+            #else if $current.rainRate.raw >= 0.01
+            <h1><i class="fas fa-umbrella m-blau" ></i> Current Conditions</h1>
+            #else
+            <h1><i class="fas fa-sun m-orange" ></i> Current Conditions</h1>
+            #end if
+            <table class="tablespacer">
+              <tr>
+                <td>Outside Temperature</td>
+                <td>$current.outTemp</td>
+              </tr>
+              <tr>
+                <td>Wind Chill</td>
+                <td>$current.windchill</td>
+              </tr>
+              <tr>
+                <td>Heat Index</td>
+                <td>$current.heatindex</td>
+              </tr>
+              <tr>
+                <td>Dewpoint</td>
+                <td>$current.dewpoint</td>
+              </tr>
+              <tr>
+                <td>Humidity</td>
+                <td>$current.outHumidity</td>
+              </tr>
+              <tr>
+                <td>Barometer</td>
+                <td>$current.barometer</td>
+              </tr>
+              <tr>
+                <td>Barometer Trend ($trend.time_delta.hour.format("%.0f"))</td>
+                <td>$trend.barometer</td>
+              </tr>
+              #if $current.windSpeed.raw == 0.0
+              <tr>
+                <td>Wind</td>
+                <td>$current.windSpeed </td>
+              </tr>
+              #else
+              <tr>
+                <td>Wind</td>
+                <td>$current.windSpeed $current.windDir.ordinal_compass ($current.windDir)</td>
+              </tr>
+              #end if
+              #if $current.windGust.raw == 0.0
+              <tr>
+                <td>Wind Gust</td>
+                <td>$current.windGust </td>
+              </tr>
+              #else
+              <tr>
+                <td>Wind Gust</td>
+                <td>$current.windGust $current.windGustDir.ordinal_compass ($current.windGustDir)</td>
+              </tr>
+              #end if
+              <tr>
+                <td>Rain Rate</td>
+                <td>$current.rainRate</td>
+              </tr>
+	      #if $day.inTemp.has_data
+              <tr>
+                <td>Inside Temperature</td>
+                <td>$current.inTemp</td>
+              </tr>
+	      #end if
+	      #if $day.inHumidity.has_data
+              <tr>
+                <td>Inside Humidity</td>
+                <td>$current.inHumidity</td>
+              </tr>
+	      #end if
+              #if $day.extraTemp1.has_data
+              <tr>
+                <td>Pond Temperature</td>
+                <td>$current.extraTemp1</td>
+              </tr>
+              #end if
+              #if $day.UV.has_data
+              <tr>
+                <td>UV Index</td>
+                <td>$current.UV</td>
+              </tr>
+              #end if
+              #if $day.ET.has_data and $day.ET.sum.raw > 1
+              <tr>
+                <td>ET</td>
+                <td>$current.ET</td>
+              </tr>
+              #end if
+              #if $day.radiation.has_data
+              <tr>
+                <td>Solar Radiation</td>
+                <td>$current.radiation</td>
+              </tr>
+              #end if
+	      #if $day.lux.has_data
+              <tr>
+                <td>Brightness</td>
+                <td>$current.lux</td>
+              </tr>
+              #end if
+	      #if $day.lightningStrikes.has_data
+              <tr>
+                <td>Lightning Strikes</td>
+                <td>$current.lightningStrikes</td>
+              </tr>
+	      <tr>
+                <td>Average Strike Distance</td>
+                <td>$current.lightningAvgDistance</td>
+              </tr>
+              #end if
+            </table>
+          </div>
+          <div class="card" >
+            <h1><i class="far fa-moon m-grau" ></i> Since Midnight</h1>
+            <table class="tablespacer">
+              <tr>
+                <td>High Temperature</td>
+                <td>$day.outTemp.max</td>
+                <td>$day.outTemp.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Temperature</td>
+                <td>$day.outTemp.min</td>
+                <td>$day.outTemp.mintime</td>
+              </tr>
+              <tr>
+                <td>High Heat Index</td>
+                <td>$day.heatindex.max</td>
+                <td>$day.heatindex.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Wind Chill</td>
+                <td>$day.windchill.min</td>
+                <td>$day.windchill.mintime</td>
+              </tr>
+              <tr>
+                <td>High Dewpoint</td>
+                <td>$day.dewpoint.max</td>
+                <td>$day.dewpoint.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Dewpoint</td>
+                <td>$day.dewpoint.min</td>
+                <td>$day.dewpoint.mintime</td>
+              </tr>
+              <tr>
+                <td>High Humidity</td>
+                <td>$day.outHumidity.max</td>
+                <td>$day.outHumidity.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Humidity</td>
+                <td>$day.outHumidity.min</td>
+                <td>$day.outHumidity.mintime</td>
+              </tr>
+              <tr>
+                <td>High Barometer</td>
+                <td>$day.barometer.max</td>
+                <td>$day.barometer.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Barometer</td>
+                <td>$day.barometer.min</td>
+                <td>$day.barometer.mintime</td>
+              </tr>
+              <tr>
+                <td>Today's Rain</td>
+                <td>$day.rain.sum</td>
+                <td></td>
+              </tr>
+              <tr>
+                <td>High Rain Rate</td>
+                <td>$day.rainRate.max</td>
+                <td>$day.rainRate.maxtime</td>
+              </tr>
+              <tr>
+                <td>High Wind</td>
+                <td>$day.wind.max $day.wind.gustdir</td>
+                <td>$day.wind.maxtime</td>
+              </tr>
+              <tr>
+                <td>Average Wind</td>
+                <td>$day.wind.avg</td>
+                <td></td>
+              </tr>
+              <tr>
+                <td>RMS Wind</td>
+                <td>$day.wind.rms</td>
+                <td></td>
+              </tr>
+              <tr>
+                <td>Vector Average Speed</td>
+                <td>$day.wind.vecavg</td>
+                <td></td>
+              </tr>
+              <tr>
+                <td>Vector Average Direction</td>
+                <td>$day.wind.vecdir</td>
+                <td></td>
+              </tr>
+	      #if $day.inTemp.has_data
+              <tr>
+                <td>High Inside Temperature</td>
+                <td>$day.inTemp.max</td>
+                <td>$day.inTemp.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Inside Temperature</td>
+                <td>$day.inTemp.min</td>
+                <td>$day.inTemp.mintime</td>
+              </tr>
+	      #end if
+	      #if $day.inHumidity.has_data
+              <tr>
+                <td>High Inside Humidity</td>
+                <td>$day.inHumidity.max</td>
+                <td>$day.inHumidity.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Inside Humidity</td>
+                <td>$day.inHumidity.min</td>
+                <td>$day.inHumidity.mintime</td>
+              </tr>
+	      #end if
+              #if $day.extraTemp1.has_data
+              <tr>
+                <td>High Pond Temp</td>
+                <td>$day.extraTemp1.max</td>
+                <td>$day.extraTemp1.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Pond Temp</td>
+                <td>$day.extraTemp1.min</td>
+                <td>$day.extraTemp1.mintime</td>
+              </tr>
+              #end if
+              #if $day.UV.has_data
+              <tr>
+                <td>High UV</td>
+                <td>$day.UV.max</td>
+                <td>$day.UV.maxtime</td>
+              </tr>
+              #end if
+              #if $day.ET.has_data and $day.ET.sum.raw > 1
+              <tr>
+                <td>High ET</td>
+                <td>$day.ET.max</td>
+                <td>$day.ET.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low ET</td>
+                <td>$day.ET.min</td>
+                <td>$day.ET.mintime</td>
+              </tr>
+              #end if
+              #if $day.radiation.has_data
+              <tr>
+                <td>High Radiation</td>
+                <td>$day.radiation.max</td>
+                <td>$day.radiation.maxtime</td>
+              </tr>
+              #end if
+	      #if $day.lux.has_data
+              <tr>
+                <td>High Brightness</td>
+                <td>$day.lux.max</td>
+                <td>$day.lux.maxtime</td>
+              </tr>
+              #end if
+	      #if $day.lightningStrikes.has_data
+              <tr>
+                <td>Lightning Strikes</td>
+                <td>$day.lightningStrikes.sum</td>
+                <td></td>
+              </tr>
+	       <tr>
+                <td>Average Strike Distance</td>
+                <td>$day.lightningAvgDistance.avg</td>
+		<td></td>
+              </tr>
+              #end if
+            </table>
+          </div>
+          
+            <!--Leap Year Code -->
+            #set $yr = int($day.dateTime.format("%Y"))%4
+            #if $yr == 0
+              #if $yr % 100 == 0
+                #if $yr % 400 == 0
+                  #if $day.dateTime.format("%d-%b") == '29-Feb'
+                    #set $n = 1461
+                  #else if $day.dateTime.format("%d-%b") >= '01-Mar'
+                    #set $n = 366
+                  #else
+                    #set $n = 365
+                  #end if
+                #else
+                  #set $n = 365
+                #end if
+              #else
+                #if $day.dateTime.format("%d-%b") == '29-Feb'
+                  #set $n = 1461
+                #else if $day.dateTime.format("%d-%b") >= '01-Mar'
+                  #set $n = 366
+                #else
+                  #set $n = 365
+                #end if
+              #end if
+            #else
+              #set $yrNew = ($yr - 1)
+            #if $yrNew % 100 == 0
+              #if $yrNew % 400 == 0
+                #if $day.dateTime.format("%d-%b") < '01-Mar'
+                  #set $n = 366
+                #else
+                  #set $n = 365
+                #end if
+              #end if
+              #else
+                #set $n = 365
+              #end if
+            #end if
+	  #if $days_ago($days_ago=$n).outTemp.max.string != "   N/A"
+	  <div class="card" >
+            <h1><i class="fas fa-history" ></i> Last $days_ago($days_ago=$n).dateTime.format("%d-%b (%Y)") </h1>
+            <table class="tablespacer">
+              <tr>
+                <td>High Temperature</td>
+                <td>$days_ago($days_ago=$n).outTemp.max</td>
+                <td>$days_ago($days_ago=$n).outTemp.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Temperature</td>
+                <td>$days_ago($days_ago=$n).outTemp.min</td>
+                <td>$days_ago($days_ago=$n).outTemp.mintime</td>
+              </tr>
+              <tr>
+                <td>High Dewpoint</td>
+                <td>$days_ago($days_ago=$n).dewpoint.max</td>
+                <td>$days_ago($days_ago=$n).dewpoint.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Dewpoint</td>
+                <td>$days_ago($days_ago=$n).dewpoint.min</td>
+                <td>$days_ago($days_ago=$n).dewpoint.mintime</td>
+              </tr>
+              <tr>
+                <td>High Humidity</td>
+                <td>$days_ago($days_ago=$n).outHumidity.max</td>
+                <td>$days_ago($days_ago=$n).outHumidity.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Humidity</td>
+                <td>$days_ago($days_ago=$n).outHumidity.min</td>
+                <td>$days_ago($days_ago=$n).outHumidity.mintime</td>
+              </tr>
+              <tr>
+                <td>High Barometer</td>
+                <td>$days_ago($days_ago=$n).barometer.max</td>
+                <td>$days_ago($days_ago=$n).barometer.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Barometer</td>
+                <td>$days_ago($days_ago=$n).barometer.min</td>
+                <td>$days_ago($days_ago=$n).barometer.mintime</td>
+              </tr>
+              <tr>
+                <td>Rain</td>
+                <td>$days_ago($days_ago=$n).rain.sum</td>
+                <td></td>
+              </tr>
+              <tr>
+                <td>High Rain Rate</td>
+                <td>$days_ago($days_ago=$n).rainRate.max</td>
+                <td>$days_ago($days_ago=$n).rainRate.maxtime</td>
+              </tr>
+              <tr>
+                <td>High Wind</td>
+                <td>$days_ago($days_ago=$n).wind.max <br> $days_ago($days_ago=$n).wind.gustdir</td>
+                <td>$days_ago($days_ago=$n).wind.maxtime</td>
+              </tr>
+	      #if $days_ago($days_ago=$n).inTemp.has_data
+              <tr>
+                <td>High Inside Temperature</td>
+                <td>$days_ago($days_ago=$n).inTemp.max</td>
+                <td>$days_ago($days_ago=$n).inTemp.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Inside Temperature</td>
+                <td>$days_ago($days_ago=$n).inTemp.min</td>
+                <td>$days_ago($days_ago=$n).inTemp.mintime</td>
+              </tr>
+	      #end if
+	      #if $days_ago($days_ago=$n).inHumidity.has_data
+              <tr>
+                <td>High Inside Humidity</td>
+                <td>$days_ago($days_ago=$n).inHumidity.max</td>
+                <td>$days_ago($days_ago=$n).inHumidity.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Inside Humidity</td>
+                <td>$days_ago($days_ago=$n).inHumidity.min</td>
+                <td>$days_ago($days_ago=$n).inHumidity.mintime</td>
+              </tr>
+	      #end if
+              #if $days_ago($days_ago=$n).extraTemp1.has_data
+              <tr>
+                <td>High Pond Temp</td>
+                <td>$days_ago($days_ago=$n).extraTemp1.max</td>
+                <td>$days_ago($days_ago=$n).extraTemp1.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low Pond Temp</td>
+                <td>$days_ago($days_ago=$n).extraTemp1.min</td>
+                <td>$days_ago($days_ago=$n).extraTemp1.mintime</td>
+              </tr>
+              #end if
+              #if $days_ago($days_ago=$n).UV.has_data
+              <tr>
+                <td>High UV</td>
+                <td>$days_ago($days_ago=$n).UV.max</td>
+                <td>$days_ago($days_ago=$n).UV.maxtime</td>
+              </tr>
+              #end if
+              #if $days_ago($days_ago=$n).ET.has_data and $days_ago($days_ago=$n).ET.sum.raw >1
+              <tr>
+                <td>High ET</td>
+                <td>$days_ago($days_ago=$n).ET.max</td>
+                <td>$days_ago($days_ago=$n).ET.maxtime</td>
+              </tr>
+              <tr>
+                <td>Low ET</td>
+                <td>$days_ago($days_ago=$n).ET.min</td>
+                <td>$days_ago($days_ago=$n).ET.mintime</td>
+              </tr>
+              #end if
+              #if $days_ago($days_ago=$n).radiation.has_data
+              <tr>
+                <td>High Radiation</td>
+                <td>$days_ago($days_ago=$n).radiation.max</td>
+                <td>$days_ago($days_ago=$n).radiation.maxtime</td>
+              </tr>
+              #end if
+	      #if $days_ago($days_ago=$n).lux.has_data
+              <tr>
+                <td>High Brightness</td>
+                <td>$days_ago($days_ago=$n).lux.max</td>
+                <td>$days_ago($days_ago=$n).lux.maxtime</td>
+              </tr>
+              #end if
+            </table>
+          </div>
+	  #end if
+          #if $Extras.has_key('radar')
+          <div class="card" >
+	    <h1><i class="fab fa-react m-rot"></i> Radar</h1>
+            $Extras.radar
+	    <br>
+          </div>
+          #end if
+
+          #if $Extras.has_key('lightning_map')
+          <div class="card" >
+            #if $Extras.has_key('lightning_url')
+            <a href="$Extras.lightning_url" target="_blank">
+            #end if
+            <img src="$Extras.lightning_map" alt="Lightning Map" class="space small" />
+            #if $Extras.has_key('lightning_url')
+            </a>
+            #end if
+          </div>
+          #end if
+
+          #if $Extras.has_key('camera')
+          <!--camera section-->
+          <div class="card" >
+            <h1><i class="fas fa-camera-alt" style="color:#999"></i> Local Cameras</h1>
+            <div class="s-center s-content s-display-container" style="max-width:800px">
+              #set $b=0
+              #for $i in $Extras.camera
+              <div class="mySlides"><b>$Extras.cameratitle[$b]</b><br>
+                <img src="$i" alt="camera $b" style="width:100%">
+              </div>
+              #set $b=$b+1 
+              #end for
+              <div class="s-center s-container s-section s-large s-text-white s-display-bottommiddle" style="width:100%">
+                <div class="s-left" onclick="plusDivs(-1)">&nbsp;&nbsp;&nbsp;&nbsp;<i class="fa fa-chevron-left s-hover-text-gray"></i></div>
+                <div class="s-right" onclick="plusDivs(1)"><i class="fa fa-chevron-right s-hover-text-gray"></i>&nbsp;&nbsp;&nbsp;&nbsp;</div>
+                #set $a=1
+                #for $j in $Extras.camera
+                <span class="s-badge demo s-border s-transparent s-hover-white" onclick="currentDiv($a)"></span>
+                #set $a=$a+1 
+                #end for
+              </div>
+            </div>
+            <script>
+              var slideIndex = 1;
+              showDivs(slideIndex);
+              
+              function plusDivs(n) {
+                showDivs(slideIndex += n);
+              }
+              
+              function currentDiv(n) {
+                showDivs(slideIndex = n);
+              }
+              
+              function showDivs(n) {
+                var i;
+                var x = document.getElementsByClassName("mySlides");
+                var dots = document.getElementsByClassName("demo");
+                if (n > x.length) {slideIndex = 1}    
+                if (n < 1) {slideIndex = x.length}
+                for (i = 0; i < x.length; i++) {
+                   x[i].style.display = "none";  
+                }
+                for (i = 0; i < dots.length; i++) {
+                   dots[i].className = dots[i].className.replace(" s-white", "");
+                }
+                x[slideIndex-1].style.display = "block";  
+                dots[slideIndex-1].className += " s-white";
+              }
+            </script>
+          </div>
+          #end if
+        </div>
+        <div class="right" >
+          <div class="card" >
+            <h1><i class="far fa-star m-rot" ></i> Almanac</h1>
+            #if $almanac.hasExtras
+            ## Extended almanac information is available. Do the full set of tables.
+            #set $sun_altitude = $almanac.sun.alt
+            #if $sun_altitude < 0
+            #set $sun_None="<i>(Always down)</i>"
+            #else
+            #set $sun_None="<i>(Always up)</i>"
+            #end if
+            <div class="haelfte" >
+              <h3>Sun</h3>
+              <table>
+                <tr>
+                  <td>Start civil twilight:</td>
+                  <td>$almanac(horizon=-6).sun(use_center=1).rise</td>
+                </tr>
+                <tr>
+                  <td>Sunrise</td>
+                  <td>$almanac.sun.rise.string($sun_None)</td>
+                </tr>
+                <tr>
+                  <td>Transit:</td>
+                  <td>$almanac.sun.transit</td>
+                </tr>
+                <tr>
+                  <td>Sunset:</td>
+                  <td>$almanac.sun.set.string($sun_None)</td>
+                </tr>
+                <tr>
+                  <td>End civil twilight:</td>
+                  <td>$almanac(horizon=-6).sun(use_center=1).set</td>
+                </tr>
+                <tr>
+                  <td>Azimuth:</td>
+                  <td>$("%.1f&deg;" % $almanac.sun.az)</td>
+                </tr>
+                <tr>
+                  <td>Altitude:</td>
+                  <td>$("%.1f&deg;" % $sun_altitude)</td>
+                </tr>
+                <tr>
+                  <td>Right ascension:</td>
+                  <td>$("%.1f&deg;" % $almanac.sun.ra)</td>
+                </tr>
+                <tr>
+                  <td>Declination:</td>
+                  <td>$("%.1f&deg;" % $almanac.sun.dec)</td>
+                </tr>
+                #if $almanac.next_equinox.raw < $almanac.next_solstice.raw
+                ## The equinox is before the solstice. Display them in order.
+                <tr>
+                  <td>Equinox:</td>
+                  <td>$almanac.next_equinox</td>
+                </tr>
+                <tr>
+                  <td>Solstice:</td>
+                  <td>$almanac.next_solstice</td>
+                </tr>
+                #else
+                ## The solstice is before the equinox. Display them in order.
+                <tr>
+                  <td>Solstice:</td>
+                  <td>$almanac.next_solstice</td>
+                </tr>
+                <tr>
+                  <td>Equinox:</td>
+                  <td>$almanac.next_equinox</td>
+                </tr>
+                #end if
+              </table>
+            </div>
+            <div class="haelfte" >
+              <h3>Moon</h3>
+              <table>
+                <tr>
+                  <td>Rise:</td>
+                  <td>$almanac.moon.rise</td>
+                </tr>
+                <tr>
+                  <td>Transit:</td>
+                  <td>$almanac.moon.transit</td>
+                </tr>
+                <tr>
+                  <td>Set:</td>
+                  <td>$almanac.moon.set</td>
+                </tr>
+                <tr>
+                  <td>Azimuth:</td>
+                  <td>$("%.1f&deg;" % $almanac.moon.az)</td>
+                </tr>
+                <tr>
+                  <td>Altitude:</td>
+                  <td>$("%.1f&deg;" % $almanac.moon.alt)</td>
+                </tr>
+                <tr>
+                  <td>Right ascension:</td>
+                  <td>$("%.1f&deg;" % $almanac.moon.ra)</td>
+                </tr>
+                <tr>
+                  <td>Declination:</td>
+                  <td>$("%.1f&deg;" % $almanac.moon.dec)</td>
+                </tr>
+                #if $almanac.next_full_moon.raw < $almanac.next_new_moon.raw
+                <tr>
+                  <td>Full moon:</td>
+                  <td>$almanac.next_full_moon</td>
+                </tr>
+                <tr>
+                  <td>New moon:</td>
+                  <td>$almanac.next_new_moon</td>
+                </tr>
+                #else
+                <tr>
+                  <td>New moon:</td>
+                  <td>$almanac.next_new_moon</td>
+                </tr>
+                <tr>
+                  <td>Full moon:</td>
+                  <td>$almanac.next_full_moon</td>
+                </tr>
+                #end if
+                <tr>
+                  <td>Phase:</td>
+                  <td>$almanac.moon_phase<br />($almanac.moon_fullness% full)</td>
+                </tr>
+              </table>
+            </div>
+            #else
+            ## No extended almanac information available. Fall back to a simple table.
+            <table>
+              <tr>
+                <td>Sunrise:</td>
+                <td>$almanac.sunrise</td>
+              </tr>
+              <tr>
+                <td>Sunset:</td>
+                <td>$almanac.sunset</td>
+              </tr>
+              <tr>
+                <td>Moon Phase:</td>
+                <td>$almanac.moon_phase<br/>($almanac.moon_fullness% full)</td>
+              </tr>
+            </table>
+            #end if
+          </div>
+          <div class="card cc graphs" >
+            <h1><i class="fas fa-chart-line m-gruen" ></i> Graphs</h1>
+            <img src="daytempdew.png" alt="temperatures" />
+            <img src="dayrain.png" alt="rain" />
+            <img src="daywind.png" alt="wind" />
+            <img src="daywinddir.png" alt="Hi Wind" />
+            <img src="daywindvec.png" alt="Wind Vector" />
+            <img src="daybarometer.png" alt="barometer"/>
+	    #if $day.inTemp.has_data
+            <img src="dayinside.png" alt="Inside" />
+	    #end if
+            <img src="dayinhumid.png" alt="Inside/Outside Humidity" />
+            #if $day.radiation.has_data
+            <img src="dayradiation.png" alt="Radiation" />
+            #end if
+            #if $day.UV.has_data
+            <img src="dayuv.png" alt="UV Index" />
+            #end if
+            #if $day.rxCheckPercent.has_data
+            <img src="dayrx.png" alt="day rx percent"/>
+            #end if
+	    #if $day.lightningStrikes.has_data
+            <img src="daylightning.png" alt="Lightning" />
+	    #end if
+	    #if $day.windBatteryStatus.has_data and $day.outTempBatteryStatus.has_data
+            <img src="daybattery.png" alt="day battery"/>
+            #end if
+            #if $day.extraTemp1.has_data
+            <img src="daypond.png" alt="Pond Temperatures" />
+            #end if
+          </div>
+        </div>
+      </div>
+    </div>
+    <footer>
+      <div class="container-fix">
+        <div style="text-align:center">
+          #if $Extras.has_key('you')
+          <i class="fab fa-pied-piper-pp"> </i><a href=mailto:$Extras.email> $Extras.you</a> 
+          #end if
+          &sdot;
+          Copyright <i class="far fa-copyright"></i> $latest.dateTime.format("%Y") 
+          <br>
+          Sofaskin by <a href="http://blauesledersofa.de">Blaues Ledersofa</a>
+          &sdot;
+          CW9009 Version by <a href="http://cw9009.x10host.com">JDS</a>
+          &sdot;
+          Powered by<i class="fas fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
+        </div>
+      </div>
+    </footer>
+    #if $Extras.has_key('googleAnalyticsId')
+    <!-- Google Analytics -->
+    <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+      
+      ga('create', '$Extras.googleAnalyticsId', 'auto');
+      ga('send', 'pageview');
+    </script>
+    #end if
+    <!-- Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon -->
+    <script>
+      function myFunction() {
+          var x = document.getElementById("myTopnav");
+          if (x.className === "topnav") {
+              x.className += " responsive";
+          } else {
+              x.className = "topnav";
+          }
+      }
+    </script>
+  </body>
+</html>
+

+ 3 - 3
month.html.tmpl

@@ -33,9 +33,9 @@
 
     <!-- Font Awesome CDN links for 5.3--> 
     <!-- If you have a pro license -->
-    <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous">
+    <!-- <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous"> -->
     <!-- Free license -->
-    <!-- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous"> --!>
+    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
 
     <!-- Script -->
     <script src="js/modernizr-2.6.2.min.js"></script>
@@ -410,7 +410,7 @@
         </div>
         <div class="right" >
           <div class="card cc graphs" >
-            <h1><i class="far fa-chart-line m-gruen" ></i> Monthly Statistics and Plots</h1>
+            <h1><i class="fas fa-chart-line m-gruen" ></i> Monthly Statistics and Plots</h1>
             <img src="monthtempdew.png" alt="temperatures" />
             <img src="monthrain.png" alt="rain" />
             <img src="monthwind.png" alt="wind" />

+ 245 - 245
summary.html.tmpl

@@ -1,245 +1,245 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head itemscope itemtype="http://schema.org/Website">
-    <meta charset="utf-8">
-        <meta http-equiv="X-UA-Compatible" content="IE=edge">
-	<meta http-equiv="Refresh" Content="180">
-	#if $Extras.has_key('cwop')
-        <meta name="description" content="$station.location Weather Station ($Extras.cwop) - weather web site powered by WeeWX">
-        #else
-        <meta name="description" content="$station.location Weather Station - weather web site powered by WeeWX">
-	#end if
-        <meta name="viewport" content="width=device-width, initial-scale=1">
-        <link rel="profile" href="http://gmpg.org/xfn/11" />
-	#if $Extras.has_key('web_url')
-	<link href="$Extras.web_url/summary.html" itemprop="url"/>
-	#end if
-        
-	<title itemprop="name">$station.location Weather Summaries</title>
-        
-        <!-- Open Graph -->
-	<meta property="og:site_name" content="$station.location Summaries and Records" />
-	<meta property="og:title" content="Summaries and Records"/>
-	#if $Extras.has_key('web_url')
-	<meta property="og:url" content="$Extras.web_url/summary.html"/>
-	#end if
-	<meta property="og:description" content="Summaries and Records for $station.location - weather web site powered by WeeWX" />
-	<meta property="og:type" content="website" /> 
-
-        <!-- FavIcons -->
-        <link rel="icon" href="favicon.ico" type="image/png">
-	<link rel="apple-touch-icon" href="touch-icon.png"/>
-        
-        <!-- Styles -->
-        <link href='http://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet' type='text/css'>
-        <link rel="stylesheet" href="css/main.css">
-
-	<!-- Font Awesome CDN links for 5.3-->
-	<!-- If you have a pro license --!>
-	<link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous">
-	<!-- Free license --!>
-        <!-- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous"> --!>
-
-        <!-- Script -->
-        <script src="js/modernizr-2.6.2.min.js"></script>
-	<script src="js/checkdiff.js"></script>
-        
-  </head>
-
-  <body>
-    <!-- Menu navbar -->
-    <header>
-            <div class="container-fix" >
-                <div class="h-left" >
-                <h1><i class="fas fa-cloud" ></i> $station.location </h1>
-                <p>$station.latitude[0]&deg; $station.latitude[1]' $station.latitude[2] | $station.longitude[0]&deg; $station.longitude[1]' $station.longitude[2] | $station.altitude | <a href="https://www.google.com/maps/?q=$station.latitude[0]&deg;%20$station.latitude[1]%20$station.latitude[2],$station.longitude[0]&deg;%20$station.longitude[1]%20$station.longitude[2]" target="_blank" ><i class="fas fa-map-marker-alt" ></i> Show on map</a></p>
-                <h2>Summaries and Records</h2>
-                <p><i class="far fa-clock" ></i> $current.dateTime $current.dateTime.format("%Z")</p>
-		<p id="freshweather" class="m-orange"></p>
-		<script>
-                      window.onload = checkDiff("$current.dateTime ($current.dateTime.format('%Z'))");
-                </script>
-                </div>
-                
-                <div class="h-right" >
-                    <table>
-                        <tr><td><b>Station:</b></td><td>$station.hardware</td></tr>
-                        <tr><td><b>Software:</b></td><td><a href="http://weewx.com/" target="_blank" >WeeWX v$station.version</a></td></tr>
-                        <tr><td><b>Weewx uptime:</b></td><td>$station.uptime</td></tr>
-                        <tr><td><b>Server uptime:</b></td><td>$station.os_uptime</td></tr>
-                    </table>
-                </div>
-
-                <nav>
-                    <ul class="topnav" id="myTopnav">
-			<li class="icon"><a href="javascript:void(0);" onclick="myFunction()"><i class="fas fa-bars" ></i></a></li>
-                        <li><a href="/" >Current</a></li>
-                        <li><a href="week.html" >Week</a></li>
-                        <li><a href="month.html" >Month</a></li>
-                        <li><a href="year.html" >Year</a></li>
-			<li class="active" ><a href="summary.html" >Summaries</a></li>
-			<li><a href="about.html" >About</a></li>
-                        <li><a href="RSS/weewx_rss.xml" ><i class="fas fa-rss" ></i></a></li>
-                    </ul>
-                </nav>
-            </div>
-     </header>
-    <!-- Main container -->  
-     <div class="main" >
-        <div class="container" >
-	    <div class="left" >
-
-		<div class="card" >
-                    <h1><i class="fas fa-bolt m-orange" ></i> All Time Records (Since Sept. 2018)</h1>
-                    <table class="tablespacer">
-			<tr><td colspan="3"><b>Outside Temperatures</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.outTemp.max</td><td>$alltime.outTemp.maxtime</td></tr>
-			<tr><td>Lowest</td><td>$alltime.outTemp.min</td><td>$alltime.outTemp.mintime</td></tr>
-		    	<tr><td>Min Max</td><td>$alltime.outTemp.minmax</td><td>$alltime.outTemp.minmaxtime</td></tr>
-			<tr><td>Max Min</td><td>$alltime.outTemp.maxmin</td><td>$alltime.outTemp.maxmintime</td></tr>
-			<tr><td colspan="3"><br><b>Dewpoint</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.dewpoint.max</td><td>$alltime.dewpoint.maxtime</td></tr>
-			<tr><td>Lowest</td><td>$alltime.dewpoint.min</td><td>$alltime.dewpoint.mintime</td></tr>
-			<tr><td colspan="3"><br><b>Precipitation</b></td></tr>
-			<tr><td>Highest Daily Rainfall</td><td>$alltime.rain.maxsum</td><td>$alltime.rain.maxsumtime.format("%m/%d/%Y")</td></tr>
-			<tr><td>Highest Rain Rate</td><td>$alltime.rainRate.max</td><td>$alltime.rainRate.maxtime</td></tr>
-			<tr><td colspan="3"><br><b>Heat Index</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.heatindex.max</td><td>$alltime.heatindex.maxtime</td></tr>
-			<tr><td colspan="3"><br><b>Barometer</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.barometer.max</td><td>$alltime.barometer.maxtime</td></tr>
-			<tr><td>Lowest</td><td>$alltime.barometer.min</td><td>$alltime.barometer.mintime</td></tr>
-			<tr><td colspan="3"><br><b>Wind</b></td></tr>
-			<tr><td>Highest Sustained</td><td>$alltime.windSpeed.max</td><td>$alltime.windSpeed.maxtime</td></tr>
-			<tr><td>Highest Gust</td><td>$alltime.windGust.max</td><td>$alltime.windGust.maxtime</td></tr>
-			<tr><td colspan="3"><br><b>Wind Chill</b></td></tr>
-			<tr><td>Lowest</td><td>$alltime.windchill.min</td><td>$alltime.windchill.mintime</td></tr>
-			#if $alltime.radiation.has_data
-			<tr><td colspan="3"><br><b>Solar Radiation</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.radiation.max</td><td>$alltime.radiation.maxtime</td></tr>
-			#end if
-			#if $alltime.lux.has_data
-			<tr><td colspan="3"><br><b>Brightness</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.lux.max</td><td>$alltime.lux.maxtime</td></tr>
-			#end if
-			#if $alltime.lightningStrikes.has_data
-			<tr><td colspan="3"><br><b>Lightning</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.lightningStrikes.max</td><td>$alltime.lightningStrikes.maxtime</td></tr>
-			#end if
-			#if $alltime.inTemp.has_data
-			<tr><td colspan="3"><br><b>House Temperatures</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.inTemp.max</td><td>$alltime.inTemp.maxtime</td></tr>
-			<tr><td>Lowest</td><td>$alltime.inTemp.min</td><td>$alltime.inTemp.mintime</td></tr>
-			#end if
-			#if $alltime.inHumidity.has_data
-			<tr><td colspan="3"><br><b>House Humidity</b></td></tr>
-			<tr><td>Highest</td><td>$alltime.inHumidity.max</td><td>$alltime.inHumidity.maxtime</td></tr>
-			<tr><td>Lowest</td><td>$alltime.inHumidity.min</td><td>$alltime.inHumidity.mintime</td></tr>
-			#end if
-                    </table>
-                </div>
-
-	   </div>
-
-	   <div class="right" >
-		<div class="card">
-                    <h1><i class="fas fa-archive"></i> Monthly Reports</h1>
-			<div class="noaatable">
-                   	$NOAA_table
-			</div>
-                </div>
-
-		<div class="card">
-                    <h1><i class="far fa-thermometer-half" ></i> Average Monthly Temperature</h1>
-			<div class="tablefix">
-                    	$avg_temp_table
-			</div>
-                </div>
-		
-		<div class="card">
-                    <h1><i class="fas fa-umbrella m-blau" ></i> Total Monthly Rainfall </h1>
-			<div class="tablefix">
-                    	$rain_table
-			</div>
-                </div>
-
-		<div class="card">
-                    <h1><i class="fas fa-umbrella m-blau" ></i> Number of Days it Rained </h1>
-			<div class="tablefix">
-                    	$rain_count_table
-			</div>
-                </div>
-
-		#if $month.inTemp.has_data
-		<div class="card">
-                    <h1><i class="fas fa-thermometer-half m-rot" ></i> Average House Temperature by Month</h1>
-			<div class="tablefix">
-                    	$avg_htemp_table
-			</div>
-                </div>
-		#end if
-
-		#if $month.lightningStrikes.has_data
-		<div class="card">
-                    <h1><i class="fas fa-bolt m-orange" ></i> Total Lightning Strikes </h1>
-			<div class="tablefix">
-                    	$lightning_sum_table
-			</div>
-                </div>
-		#end if
-
-		<div class="card">
-                    <h1><i class="fas fa-table m-grau" ></i> Number of Days with Observations</h1>
-			<div class="tablefix">
-                    	$temp_count_table
-			</div>
-                </div>
-
-	   </div>
-        </div>
-        </div>
-        
-        <footer>
-            <div class="container-fix">
-	      <div style="text-align:center">
-          	#if $Extras.has_key('you')
-          	<i class="fab fa-pied-piper-pp"> </i><a href=mailto:$Extras.email> $Extras.you</a> 
-          	#end if
-          	&sdot;
-          	Copyright <i class="far fa-copyright"></i> $latest.dateTime.format("%Y") 
-          	<br>
-          	Sofaskin by <a href="http://blauesledersofa.de">Blaues Ledersofa</a>
-          	&sdot;
-          	CW9009 Version by <a href="http://cw9009.x10host.com">JDS</a>
-          	&sdot;
-          	Powered by<i class="fas fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
-              </div>
-	    </div>
-        </footer>
-
-        #if $Extras.has_key('googleAnalyticsId')
-        <!-- Google Analytics -->
-        <script>
-            (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
-            (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
-            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
-            })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
-            
-            ga('create', '$Extras.googleAnalyticsId', 'auto');
-            ga('send', 'pageview');
-        </script>
-        #end if
-
-	<!-- Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon -->
-	<script>
-		function myFunction() {
-    			var x = document.getElementById("myTopnav");
-    			if (x.className === "topnav") {
-    			    x.className += " responsive";
-    			} else {
-    			    x.className = "topnav";
-    			}
-		}	
-	</script>
-    </body>
-</html>
-
+<!DOCTYPE html>
+<html lang="en">
+  <head itemscope itemtype="http://schema.org/Website">
+    <meta charset="utf-8">
+        <meta http-equiv="X-UA-Compatible" content="IE=edge">
+	<meta http-equiv="Refresh" Content="180">
+	#if $Extras.has_key('cwop')
+     <meta name="description" content="$station.location Weather Station ($Extras.cwop) - weather web site powered by WeeWX">
+     #else
+     <meta name="description" content="$station.location Weather Station - weather web site powered by WeeWX">
+	#end if
+     <meta name="viewport" content="width=device-width, initial-scale=1">
+     <link rel="profile" href="http://gmpg.org/xfn/11" />
+	#if $Extras.has_key('web_url')
+	<link href="$Extras.web_url/summary.html" itemprop="url"/>
+	#end if
+        
+	<title itemprop="name">$station.location Weather Summaries</title>
+        
+      <!-- Open Graph -->
+	<meta property="og:site_name" content="$station.location Summaries and Records" />
+	<meta property="og:title" content="Summaries and Records"/>
+	#if $Extras.has_key('web_url')
+	<meta property="og:url" content="$Extras.web_url/summary.html"/>
+	#end if
+	<meta property="og:description" content="Summaries and Records for $station.location - weather web site powered by WeeWX" />
+	<meta property="og:type" content="website" /> 
+
+      <!-- FavIcons -->
+      <link rel="icon" href="favicon.ico" type="image/png">
+	 <link rel="apple-touch-icon" href="touch-icon.png"/>
+        
+      <!-- Styles -->
+      <link href='http://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet' type='text/css'>
+      <link rel="stylesheet" href="css/main.css">
+
+	<!-- Font Awesome CDN links for 5.3-->
+	<!-- If you have a pro license --!>
+	<!-- <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous"> -->
+	<!-- Free license --!>
+     <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
+
+     <!-- Script -->
+     <script src="js/modernizr-2.6.2.min.js"></script>
+	<script src="js/checkdiff.js"></script>
+        
+  </head>
+
+  <body>
+    <!-- Menu navbar -->
+    <header>
+            <div class="container-fix" >
+                <div class="h-left" >
+                <h1><i class="fas fa-cloud" ></i> $station.location </h1>
+                <p>$station.latitude[0]&deg; $station.latitude[1]' $station.latitude[2] | $station.longitude[0]&deg; $station.longitude[1]' $station.longitude[2] | $station.altitude | <a href="https://www.google.com/maps/?q=$station.latitude[0]&deg;%20$station.latitude[1]%20$station.latitude[2],$station.longitude[0]&deg;%20$station.longitude[1]%20$station.longitude[2]" target="_blank" ><i class="fas fa-map-marker-alt" ></i> Show on map</a></p>
+                <h2>Summaries and Records</h2>
+                <p><i class="far fa-clock" ></i> $current.dateTime $current.dateTime.format("%Z")</p>
+		<p id="freshweather" class="m-orange"></p>
+		<script>
+                      window.onload = checkDiff("$current.dateTime ($current.dateTime.format('%Z'))");
+                </script>
+                </div>
+                
+                <div class="h-right" >
+                    <table>
+                        <tr><td><b>Station:</b></td><td>$station.hardware</td></tr>
+                        <tr><td><b>Software:</b></td><td><a href="http://weewx.com/" target="_blank" >WeeWX v$station.version</a></td></tr>
+                        <tr><td><b>Weewx uptime:</b></td><td>$station.uptime</td></tr>
+                        <tr><td><b>Server uptime:</b></td><td>$station.os_uptime</td></tr>
+                    </table>
+                </div>
+
+                <nav>
+                    <ul class="topnav" id="myTopnav">
+			<li class="icon"><a href="javascript:void(0);" onclick="myFunction()"><i class="fas fa-bars" ></i></a></li>
+                        <li><a href="/" >Current</a></li>
+                        <li><a href="week.html" >Week</a></li>
+                        <li><a href="month.html" >Month</a></li>
+                        <li><a href="year.html" >Year</a></li>
+			<li class="active" ><a href="summary.html" >Summaries</a></li>
+			<li><a href="about.html" >About</a></li>
+                        <li><a href="RSS/weewx_rss.xml" ><i class="fas fa-rss" ></i></a></li>
+                    </ul>
+                </nav>
+            </div>
+     </header>
+    <!-- Main container -->  
+     <div class="main" >
+        <div class="container" >
+	    <div class="left" >
+
+		<div class="card" >
+                    <h1><i class="fas fa-bolt m-orange" ></i> All Time Records (Since Sept. 2018)</h1>
+                    <table class="tablespacer">
+			<tr><td colspan="3"><b>Outside Temperatures</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.outTemp.max</td><td>$alltime.outTemp.maxtime</td></tr>
+			<tr><td>Lowest</td><td>$alltime.outTemp.min</td><td>$alltime.outTemp.mintime</td></tr>
+		    	<tr><td>Min Max</td><td>$alltime.outTemp.minmax</td><td>$alltime.outTemp.minmaxtime</td></tr>
+			<tr><td>Max Min</td><td>$alltime.outTemp.maxmin</td><td>$alltime.outTemp.maxmintime</td></tr>
+			<tr><td colspan="3"><br><b>Dewpoint</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.dewpoint.max</td><td>$alltime.dewpoint.maxtime</td></tr>
+			<tr><td>Lowest</td><td>$alltime.dewpoint.min</td><td>$alltime.dewpoint.mintime</td></tr>
+			<tr><td colspan="3"><br><b>Precipitation</b></td></tr>
+			<tr><td>Highest Daily Rainfall</td><td>$alltime.rain.maxsum</td><td>$alltime.rain.maxsumtime.format("%m/%d/%Y")</td></tr>
+			<tr><td>Highest Rain Rate</td><td>$alltime.rainRate.max</td><td>$alltime.rainRate.maxtime</td></tr>
+			<tr><td colspan="3"><br><b>Heat Index</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.heatindex.max</td><td>$alltime.heatindex.maxtime</td></tr>
+			<tr><td colspan="3"><br><b>Barometer</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.barometer.max</td><td>$alltime.barometer.maxtime</td></tr>
+			<tr><td>Lowest</td><td>$alltime.barometer.min</td><td>$alltime.barometer.mintime</td></tr>
+			<tr><td colspan="3"><br><b>Wind</b></td></tr>
+			<tr><td>Highest Sustained</td><td>$alltime.windSpeed.max</td><td>$alltime.windSpeed.maxtime</td></tr>
+			<tr><td>Highest Gust</td><td>$alltime.windGust.max</td><td>$alltime.windGust.maxtime</td></tr>
+			<tr><td colspan="3"><br><b>Wind Chill</b></td></tr>
+			<tr><td>Lowest</td><td>$alltime.windchill.min</td><td>$alltime.windchill.mintime</td></tr>
+			#if $alltime.radiation.has_data
+			<tr><td colspan="3"><br><b>Solar Radiation</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.radiation.max</td><td>$alltime.radiation.maxtime</td></tr>
+			#end if
+			#if $alltime.lux.has_data
+			<tr><td colspan="3"><br><b>Brightness</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.lux.max</td><td>$alltime.lux.maxtime</td></tr>
+			#end if
+			#if $alltime.lightningStrikes.has_data
+			<tr><td colspan="3"><br><b>Lightning</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.lightningStrikes.max</td><td>$alltime.lightningStrikes.maxtime</td></tr>
+			#end if
+			#if $alltime.inTemp.has_data
+			<tr><td colspan="3"><br><b>House Temperatures</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.inTemp.max</td><td>$alltime.inTemp.maxtime</td></tr>
+			<tr><td>Lowest</td><td>$alltime.inTemp.min</td><td>$alltime.inTemp.mintime</td></tr>
+			#end if
+			#if $alltime.inHumidity.has_data
+			<tr><td colspan="3"><br><b>House Humidity</b></td></tr>
+			<tr><td>Highest</td><td>$alltime.inHumidity.max</td><td>$alltime.inHumidity.maxtime</td></tr>
+			<tr><td>Lowest</td><td>$alltime.inHumidity.min</td><td>$alltime.inHumidity.mintime</td></tr>
+			#end if
+                    </table>
+                </div>
+
+	   </div>
+
+	   <div class="right" >
+		<div class="card">
+                    <h1><i class="fas fa-archive"></i> Monthly Reports</h1>
+			<div class="noaatable">
+                   	$NOAA_table
+			</div>
+                </div>
+
+		<div class="card">
+                    <h1><i class="far fa-thermometer-half" ></i> Average Monthly Temperature</h1>
+			<div class="tablefix">
+                    	$avg_temp_table
+			</div>
+                </div>
+		
+		<div class="card">
+                    <h1><i class="fas fa-umbrella m-blau" ></i> Total Monthly Rainfall </h1>
+			<div class="tablefix">
+                    	$rain_table
+			</div>
+                </div>
+
+		<div class="card">
+                    <h1><i class="fas fa-umbrella m-blau" ></i> Number of Days it Rained </h1>
+			<div class="tablefix">
+                    	$rain_count_table
+			</div>
+                </div>
+
+		#if $month.inTemp.has_data
+		<div class="card">
+                    <h1><i class="fas fa-thermometer-half m-rot" ></i> Average House Temperature by Month</h1>
+			<div class="tablefix">
+                    	$avg_htemp_table
+			</div>
+                </div>
+		#end if
+
+		#if $month.lightningStrikes.has_data
+		<div class="card">
+                    <h1><i class="fas fa-bolt m-orange" ></i> Total Lightning Strikes </h1>
+			<div class="tablefix">
+                    	$lightning_sum_table
+			</div>
+                </div>
+		#end if
+
+		<div class="card">
+                    <h1><i class="fas fa-table m-grau" ></i> Number of Days with Observations</h1>
+			<div class="tablefix">
+                    	$temp_count_table
+			</div>
+                </div>
+
+	   </div>
+        </div>
+        </div>
+        
+        <footer>
+            <div class="container-fix">
+	      <div style="text-align:center">
+          	#if $Extras.has_key('you')
+          	<i class="fab fa-pied-piper-pp"> </i><a href=mailto:$Extras.email> $Extras.you</a> 
+          	#end if
+          	&sdot;
+          	Copyright <i class="far fa-copyright"></i> $latest.dateTime.format("%Y") 
+          	<br>
+          	Sofaskin by <a href="http://blauesledersofa.de">Blaues Ledersofa</a>
+          	&sdot;
+          	CW9009 Version by <a href="http://cw9009.x10host.com">JDS</a>
+          	&sdot;
+          	Powered by<i class="fas fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
+              </div>
+	    </div>
+        </footer>
+
+        #if $Extras.has_key('googleAnalyticsId')
+        <!-- Google Analytics -->
+        <script>
+            (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+            (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+            })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+            
+            ga('create', '$Extras.googleAnalyticsId', 'auto');
+            ga('send', 'pageview');
+        </script>
+        #end if
+
+	<!-- Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon -->
+	<script>
+		function myFunction() {
+    			var x = document.getElementById("myTopnav");
+    			if (x.className === "topnav") {
+    			    x.className += " responsive";
+    			} else {
+    			    x.className = "topnav";
+    			}
+		}	
+	</script>
+    </body>
+</html>
+

+ 183 - 183
text.php.tmpl

@@ -1,183 +1,183 @@
-<!DOCTYPE html>
-<html lang="en">
-  <head itemscope itemtype="http://schema.org/Website">
-
-<?php
-//Gets file name from url
-
-if(empty(\$_REQUEST["report"])) { 
-     //if empty then grab the latest years report
-     \$year = date("Y");
-     \$report = "NOAA/NOAA-".\$year.".txt";
-  } else {  
-     \$report = filter_var(\$_REQUEST["report"],FILTER_SANITIZE_URL);
-}
-
-//Get labels for meta and page titles
-\$labels = split("[-.]", \$report);
-\$count = count(\$labels);
-
-if (\$count == 3){
-	\$title = \$labels[1];
-}
-
-if (\$count == 4){
-	\$title = date("F Y", mktime(0, 0, 0, \$labels[2], 1, \$labels[1]));
-}
-?>
-
-    	<meta charset="utf-8">
-        <meta http-equiv="X-UA-Compatible" content="IE=edge">
-	<meta http-equiv="Refresh" content="180">
-	#if $Extras.has_key('cwop')
-        <meta name="description" content="$station.location Weather Station ($Extras.cwop) - weather web site powered by WeeWX">
-        #else
-        <meta name="description" content="$station.location Weather Station - weather web site powered by WeeWX">
-	#end if
-        <meta name="viewport" content="width=device-width, initial-scale=1">
-        <link rel="profile" href="http://gmpg.org/xfn/11" />
-	#if $Extras.has_key('web_url')
-	<link rel="canonical" href="$Extras.web_url/summary.html"/>
-	#end if 
-
-        #if $Extras.has_key('cwop')  
-<?php        
-        echo"<title>$station.location ($Extras.cwop) Climate Summary for \$title </title>";
-?>
-	#else
-<?php        
-        echo"<title>$station.location Climate Summary for \$title </title>";
-?>
-	#end if
-
-        <!-- Open Graph -->
-        <meta property="og:site_name" content="$station.location Summaries and Records" />
-	<meta property="og:title" content="Climate Summaries"/>
-	#if $Extras.has_key('web_url')
-	<meta property="og:url" content="$Extras.web_url/summary.html"/>
-	#end if
-        <meta property="og:description" content="Climate Summaries for $station.location - weather web site powered by WeeWX" />
-	<meta property="og:type" content="website" />
-
-        <!-- FavIcons -->
-        <link rel="icon" href="favicon.ico" type="image/png">
-	<link rel="apple-touch-icon" href="touch-icon.png"/>
-        
-        <!-- Styles -->
-        <link href='http://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet' type='text/css'>
-        <link rel="stylesheet" href="css/main.css">
-
-	<!-- Font Awesome CDN links for 5.3-->
-	<!-- If you have a pro license --!>
-	<link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous">
-	<!-- Free license --!>
-        <!-- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous"> --!>
-   
-        <!-- Skripte -->
-        <script src="js/modernizr-2.6.2.min.js"></script>
-	<script src="js/checkdiff.js"></script>
-        
-  </head>
-
-  <body>
-    <!-- Menu navbar -->
-    <header>
-            <div class="container-fix" >
-                <div class="h-left" >
-                <h1><i class="fas fa-cloud" ></i> $station.location </h1>
-                <p>$station.latitude[0]&deg; $station.latitude[1]' $station.latitude[2] | $station.longitude[0]&deg; $station.longitude[1]' $station.longitude[2] | $station.altitude | <a href="https://www.google.com/maps/?q=$station.latitude[0]&deg;%20$station.latitude[1]%20$station.latitude[2],$station.longitude[0]&deg;%20$station.longitude[1]%20$station.longitude[2]" target="_blank" ><i class="fas fa-map-marker-alt" ></i> Show on map</a></p>
-<?php
-          echo "<h2>Climate Summary \$title</h2>";
-?>
-                <p><i class="far fa-clock" ></i> $current.dateTime $current.dateTime.format("%Z")</p>
-		<p id="freshweather" class="m-orange"></p>
-		<script>
-                      window.onload = checkDiff("$current.dateTime ($current.dateTime.format('%Z'))");
-                </script>
-                </div>
-                
-                <div class="h-right" >
-                    <table>
-                        <tr><td><b>Station:</b></td><td>$station.hardware</td></tr>
-                        <tr><td><b>Software:</b></td><td><a href="http://weewx.com/" target="_blank" >WeeWX v$station.version</a></td></tr>
-                        <tr><td><b>Weewx uptime:</b></td><td>$station.uptime</td></tr>
-                        <tr><td><b>Server uptime:</b></td><td>$station.os_uptime</td></tr>
-                    </table>
-                </div>
-
-                <nav>
-                    <ul class="topnav" id="myTopnav">
-			<li class="icon"><a href="javascript:void(0);" onclick="myFunction()"><i class="fas fa-bars" ></i></a></li>
-                        <li><a href="/" >Current</a></li>
-                        <li><a href="week.html" >Week</a></li>
-                        <li><a href="month.html" >Month</a></li>
-                        <li><a href="year.html" >Year</a></li>
-			<li class="active" ><a href="summary.html" >Summaries</a></li>
-			<li><a href="about.html" >About</a></li>
-                        <li><a href="RSS/weewx_rss.xml" ><i class="fas fa-rss" ></i></a></li>
-                    </ul>
-                </nav>
-            </div>
-     </header>
-    <!-- Main container -->  
-     <div class="main" >
-        <div class="container" >
-	   <div class="center" >
-	       <div class="card">
-		
-<?php
-
-    		if(file_exists(\$report)){
-			echo "<pre class=\"noaareport\">";
-      			echo file_get_contents(\$report);
-			echo "</pre>";
-    		}
-?>  
-               </div>
-	   </div>   
-        </div>
-    </div>
-        
-        <footer>
-	    <div style="text-align:center">
-          	#if $Extras.has_key('you')
-          	<i class="fab fa-pied-piper-pp"> </i><a href=mailto:$Extras.email> $Extras.you</a> 
-          	#end if
-          	&sdot;
-          	Copyright <i class="far fa-copyright"></i> $latest.dateTime.format("%Y") 
-          	<br>
-          	Sofaskin by <a href="http://blauesledersofa.de">Blaues Ledersofa</a>
-          	&sdot;
-          	CW9009 Version by <a href="http://cw9009.x10host.com">JDS</a>
-          	&sdot;
-          	Powered by<i class="fas fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
-            </div>
-        </footer>
-
-        #if $Extras.has_key('googleAnalyticsId')
-        <!-- Google Analytics -->
-        <script>
-            (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
-            (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
-            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
-            })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
-            
-            ga('create', '$Extras.googleAnalyticsId', 'auto');
-            ga('send', 'pageview');
-        </script>
-        #end if
-
-<!-- Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon -->
-	<script>
-		function myFunction() {
-    			var x = document.getElementById("myTopnav");
-    			if (x.className === "topnav") {
-       			 	x.className += " responsive";
-    			} else {
-        			x.className = "topnav";
-    			}
-		}
-	</script>
-    </body>
-</html>
-
+<!DOCTYPE html>
+<html lang="en">
+  <head itemscope itemtype="http://schema.org/Website">
+
+<?php
+//Gets file name from url
+
+if(empty(\$_REQUEST["report"])) { 
+     //if empty then grab the latest years report
+     \$year = date("Y");
+     \$report = "NOAA/NOAA-".\$year.".txt";
+  } else {  
+     \$report = filter_var(\$_REQUEST["report"],FILTER_SANITIZE_URL);
+}
+
+//Get labels for meta and page titles
+\$labels = split("[-.]", \$report);
+\$count = count(\$labels);
+
+if (\$count == 3){
+	\$title = \$labels[1];
+}
+
+if (\$count == 4){
+	\$title = date("F Y", mktime(0, 0, 0, \$labels[2], 1, \$labels[1]));
+}
+?>
+
+    	<meta charset="utf-8">
+        <meta http-equiv="X-UA-Compatible" content="IE=edge">
+	<meta http-equiv="Refresh" content="180">
+	#if $Extras.has_key('cwop')
+        <meta name="description" content="$station.location Weather Station ($Extras.cwop) - weather web site powered by WeeWX">
+        #else
+        <meta name="description" content="$station.location Weather Station - weather web site powered by WeeWX">
+	#end if
+        <meta name="viewport" content="width=device-width, initial-scale=1">
+        <link rel="profile" href="http://gmpg.org/xfn/11" />
+	#if $Extras.has_key('web_url')
+	<link rel="canonical" href="$Extras.web_url/summary.html"/>
+	#end if 
+
+        #if $Extras.has_key('cwop')  
+<?php        
+        echo"<title>$station.location ($Extras.cwop) Climate Summary for \$title </title>";
+?>
+	#else
+<?php        
+        echo"<title>$station.location Climate Summary for \$title </title>";
+?>
+	#end if
+
+        <!-- Open Graph -->
+        <meta property="og:site_name" content="$station.location Summaries and Records" />
+	<meta property="og:title" content="Climate Summaries"/>
+	#if $Extras.has_key('web_url')
+	<meta property="og:url" content="$Extras.web_url/summary.html"/>
+	#end if
+        <meta property="og:description" content="Climate Summaries for $station.location - weather web site powered by WeeWX" />
+	<meta property="og:type" content="website" />
+
+        <!-- FavIcons -->
+        <link rel="icon" href="favicon.ico" type="image/png">
+	<link rel="apple-touch-icon" href="touch-icon.png"/>
+        
+        <!-- Styles -->
+        <link href='http://fonts.googleapis.com/css?family=Lato:300,400,700' rel='stylesheet' type='text/css'>
+        <link rel="stylesheet" href="css/main.css">
+
+	<!-- Font Awesome CDN links for 5.3-->
+	<!-- If you have a pro license --!>
+	<!-- <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous"> -->
+	<!-- Free license --!>
+        <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
+   
+        <!-- Skripte -->
+        <script src="js/modernizr-2.6.2.min.js"></script>
+	<script src="js/checkdiff.js"></script>
+        
+  </head>
+
+  <body>
+    <!-- Menu navbar -->
+    <header>
+            <div class="container-fix" >
+                <div class="h-left" >
+                <h1><i class="fas fa-cloud" ></i> $station.location </h1>
+                <p>$station.latitude[0]&deg; $station.latitude[1]' $station.latitude[2] | $station.longitude[0]&deg; $station.longitude[1]' $station.longitude[2] | $station.altitude | <a href="https://www.google.com/maps/?q=$station.latitude[0]&deg;%20$station.latitude[1]%20$station.latitude[2],$station.longitude[0]&deg;%20$station.longitude[1]%20$station.longitude[2]" target="_blank" ><i class="fas fa-map-marker-alt" ></i> Show on map</a></p>
+<?php
+          echo "<h2>Climate Summary \$title</h2>";
+?>
+                <p><i class="far fa-clock" ></i> $current.dateTime $current.dateTime.format("%Z")</p>
+		<p id="freshweather" class="m-orange"></p>
+		<script>
+                      window.onload = checkDiff("$current.dateTime ($current.dateTime.format('%Z'))");
+                </script>
+                </div>
+                
+                <div class="h-right" >
+                    <table>
+                        <tr><td><b>Station:</b></td><td>$station.hardware</td></tr>
+                        <tr><td><b>Software:</b></td><td><a href="http://weewx.com/" target="_blank" >WeeWX v$station.version</a></td></tr>
+                        <tr><td><b>Weewx uptime:</b></td><td>$station.uptime</td></tr>
+                        <tr><td><b>Server uptime:</b></td><td>$station.os_uptime</td></tr>
+                    </table>
+                </div>
+
+                <nav>
+                    <ul class="topnav" id="myTopnav">
+			<li class="icon"><a href="javascript:void(0);" onclick="myFunction()"><i class="fas fa-bars" ></i></a></li>
+                        <li><a href="/" >Current</a></li>
+                        <li><a href="week.html" >Week</a></li>
+                        <li><a href="month.html" >Month</a></li>
+                        <li><a href="year.html" >Year</a></li>
+			<li class="active" ><a href="summary.html" >Summaries</a></li>
+			<li><a href="about.html" >About</a></li>
+                        <li><a href="RSS/weewx_rss.xml" ><i class="fas fa-rss" ></i></a></li>
+                    </ul>
+                </nav>
+            </div>
+     </header>
+    <!-- Main container -->  
+     <div class="main" >
+        <div class="container" >
+	   <div class="center" >
+	       <div class="card">
+		
+<?php
+
+    		if(file_exists(\$report)){
+			echo "<pre class=\"noaareport\">";
+      			echo file_get_contents(\$report);
+			echo "</pre>";
+    		}
+?>  
+               </div>
+	   </div>   
+        </div>
+    </div>
+        
+        <footer>
+	    <div style="text-align:center">
+          	#if $Extras.has_key('you')
+          	<i class="fab fa-pied-piper-pp"> </i><a href=mailto:$Extras.email> $Extras.you</a> 
+          	#end if
+          	&sdot;
+          	Copyright <i class="far fa-copyright"></i> $latest.dateTime.format("%Y") 
+          	<br>
+          	Sofaskin by <a href="http://blauesledersofa.de">Blaues Ledersofa</a>
+          	&sdot;
+          	CW9009 Version by <a href="http://cw9009.x10host.com">JDS</a>
+          	&sdot;
+          	Powered by<i class="fas fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
+            </div>
+        </footer>
+
+        #if $Extras.has_key('googleAnalyticsId')
+        <!-- Google Analytics -->
+        <script>
+            (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+            (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+            m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+            })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+            
+            ga('create', '$Extras.googleAnalyticsId', 'auto');
+            ga('send', 'pageview');
+        </script>
+        #end if
+
+<!-- Toggle between adding and removing the "responsive" class to topnav when the user clicks on the icon -->
+	<script>
+		function myFunction() {
+    			var x = document.getElementById("myTopnav");
+    			if (x.className === "topnav") {
+       			 	x.className += " responsive";
+    			} else {
+        			x.className = "topnav";
+    			}
+		}
+	</script>
+    </body>
+</html>
+

+ 4 - 4
week.html.tmpl

@@ -33,9 +33,9 @@
 
     <!-- Font Awesome CDN links for 5.3-->
     <!-- If you have a pro license -->
-    <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous">
+    <!-- <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous"> -->
     <!-- Free license -->
-    <!-- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous"> -->
+    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
 
     <!-- Script -->
     <script src="js/modernizr-2.6.2.min.js"></script>
@@ -571,7 +571,7 @@
         </div>
         <div class="right" >
           <div class="card cc graphs" >
-            <h1><i class="far fa-chart-line m-gruen" ></i> Weekly Statistics and Plots</h1>
+            <h1><i class="fas fa-chart-line m-gruen" ></i> Weekly Statistics and Plots</h1>
             <img src="weektempdew.png" alt="temperatures" />
             <img src="weekrain.png" alt="rain" />
             <img src="weekwind.png" alt="wind" />
@@ -617,7 +617,7 @@
           &sdot;
           CW9009 Version by <a href="http://cw9009.x10host.com">JDS</a>
           &sdot;
-          Powered by<i class="far fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
+          Powered by<i class="fas fa-cog fa-spin fa-fw" aria-hidden="true"></i><a href="http://weewx.com/" target="_blank">WeeWX</a> 
         </div>
       </div>
     </footer>

+ 3 - 3
year.html.tmpl

@@ -33,9 +33,9 @@
 
     <!-- Font Awesome CDN links for 5.3-->
     <!-- If you have a pro license -->
-    <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous">
+    <!-- <link rel="stylesheet" href="https://pro.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-9ralMzdK1QYsk4yBY680hmsb4/hJ98xK3w0TIaJ3ll4POWpWUYaA2bRjGGujGT8w" crossorigin="anonymous"> -->
     <!-- Free license -->
-    <!-- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous"> --!>
+    <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous">
 
     <!-- Script -->
     <script src="js/modernizr-2.6.2.min.js"></script>
@@ -412,7 +412,7 @@
         </div>
         <div class="right" >
           <div class="card cc graphs" >
-            <h1><i class="far fa-chart-line m-gruen" ></i> Yearly Statistics and Plots</h1>
+            <h1><i class="fas fa-chart-line m-gruen" ></i> Yearly Statistics and Plots</h1>
             <img src="yeartempdew.png" alt="temperatures" />
             <img src="yearhilow.png" alt="Daily highs and lows for the year" title="Daily highs and lows for the year"/>
             <img src="yearrain.png" alt="rain" />