Commit 9fbc165e authored by Philipp's avatar Philipp

updated Gruntfile.js to build french translation contributed by nyphargus

Also added mention to README.md
Also removed build artifacts from src/i18n/
parent d465ae6b
......@@ -11,10 +11,12 @@ pages:
- mv dist.en Rabenwetter.en
- mv dist.de Rabenwetter.de
- mv dist.no Rabenwetter.no
- mv dist.fr Rabenwetter.fr
artifacts:
paths:
- Rabenwetter.en
- Rabenwetter.de
- Rabenwetter.no
- Rabenwetter.fr
only:
- master
......@@ -57,7 +57,7 @@ module.exports = function (grunt) {
fileFormat: 'json',
files: '*.html.tmpl',
exclude: ['assets/', 'bower_components/', 'devextreme_bundler/', 'i18n/', 'skin.conf', 'i18n*.html.tmpl'],
locales: ['de', 'en', 'no'],
locales: ['de', 'en', 'no', 'fr'],
locale: grunt.config.get('lang'),
localesPath: 'src/i18n',
allowHtml: true
......@@ -179,7 +179,7 @@ module.exports = function (grunt) {
dirList: ['dist.'+ grunt.config.get('lang') +'/']
}
},
clean: ["src/*.tmpl", "src/i18n/*.html.tmpl", "src/fullscreen*.min.html", "src/assets/js/complete.min.js", "src/assets/js/incomplete.min.js", "src/assets/js/iecompat.min.js", "src/assets/css/complete.min.css", "src/assets/css/incomplete.min.css", "src/i18n/en", "src/i18n/de" ]
clean: ["src/*.tmpl", "src/i18n/*.html.tmpl", "src/fullscreen*.min.html", "src/assets/js/complete.min.js", "src/assets/js/incomplete.min.js", "src/assets/js/iecompat.min.js", "src/assets/css/complete.min.css", "src/assets/css/incomplete.min.css", "src/i18n/en", "src/i18n/de", "src/i18n/no", "src/i18n/fr" ]
});
......
......@@ -210,6 +210,7 @@ All translations other than english and german were done by users of this templa
**THANK YOU VERY MUCH:**
* [Hans-Christian Grande](http://grandebu.com/): Norwegian
* [Nyphargus](https://gitlab.ambhost.net/nyphargus): French
## License
......
#errorCatcher Echo
#set $YM="%Y %m"
#set $D=" %d"
#set $M=" %b"
#set $Time=" %H:%M"
#set $NODAY=" N/A"
#set $Temp="%6.1f"
#set $Wind="%6.1f"
#set $Dir="%6.0f"
#set $Count="%6d"
#set $NONE=" N/A"
#if $unit.unit_type_dict.group_rain == "mm"
#set $Rain="%6.1f"
#else
#set $Rain="%6.2f"
#end if
MONTHLY CLIMATOLOGICAL SUMMARY for $month_name $year_name
NAME: $station.location
ELEV: $station.altitude LAT: $station.latitude[0]-$station.latitude[1] $station.latitude[2] LONG: $station.longitude[0]-$station.longitude[1] $station.longitude[2]
TEMPERATURE ($unit.label.outTemp.strip()), RAIN ($unit.label.rain.strip()), WIND SPEED ($unit.label.windSpeed.strip())
HEAT COOL AVG
MEAN DEG DEG WIND DOM
DAY TEMP HIGH TIME LOW TIME DAYS DAYS RAIN SPEED HIGH TIME DIR
---------------------------------------------------------------------------------------
#for $day in $month.days
#if $day.barometer.count.raw
$day.dateTime.format($D) $day.outTemp.avg.nolabel($Temp,$NONE) $day.outTemp.max.nolabel($Temp,$NONE) $day.outTemp.maxtime.format($Time) $day.outTemp.min.nolabel($Temp,$NONE) $day.outTemp.mintime.format($Time) $day.heatdeg.sum.nolabel($Temp,$NONE) $day.cooldeg.sum.nolabel($Temp,$NONE) $day.rain.sum.nolabel($Rain,$NONE) $day.wind.avg.nolabel($Wind,$NONE) $day.wind.max.nolabel($Wind,$NONE) $day.wind.maxtime.format($Time) $day.wind.vecdir.nolabel($Dir,$NONE)
#else
$day.dateTime.format($D)
#end if
#end for
---------------------------------------------------------------------------------------
$month.outTemp.avg.nolabel($Temp,$NONE) $month.outTemp.max.nolabel($Temp,$NONE) $month.outTemp.maxtime.format($D) $month.outTemp.min.nolabel($Temp,$NONE) $month.outTemp.mintime.format($D) $month.heatdeg.sum.nolabel($Temp,$NONE) $month.cooldeg.sum.nolabel($Temp,$NONE) $month.rain.sum.nolabel($Rain,$NONE) $month.wind.avg.nolabel($Wind,$NONE) $month.wind.max.nolabel($Wind,$NONE) $month.wind.maxtime.format($D) $month.wind.vecdir.nolabel($Dir)
#errorCatcher Echo
#set $YM="%Y %m"
#set $D=" %d"
#set $M=" %b"
#set $NODAY=" N/A"
#set $Temp="%6.1f"
#set $Wind="%6.1f"
#set $Dir="%6.0f"
#set $Count="%6d"
#set $NONE=" N/A"
#if $unit.unit_type_dict.group_temperature == "degree_F"
#set $Hot =(90.0,"degree_F")
#set $Cold =(32.0,"degree_F")
#set $VeryCold=(0.0, "degree_F")
#else
#set $Hot =(30.0,"degree_C")
#set $Cold =(0.0,"degree_C")
#set $VeryCold=(-20.0,"degree_C")
#end if
#if $unit.unit_type_dict.group_rain == "inch"
#set $Trace =(0.01,"inch")
#set $SomeRain =(0.1, "inch")
#set $Soak =(1.0, "inch")
#set $Rain="%6.2f"
#elif $unit.unit_type_dict.group_rain == "mm"
#set $Trace =(.3, "mm")
#set $SomeRain =(3, "mm")
#set $Soak =(30.0,"mm")
#set $Rain="%6.1f"
#else
#set $Trace =(.03,"cm")
#set $SomeRain =(.3, "cm")
#set $Soak =(3.0,"cm")
#set $Rain="%6.2f"
#end if
#def ShowInt($T)
$("%6d" % $T[0])#slurp
#end def
#def ShowFloat($R)
$("%6.2f" % $R[0])#slurp
#end def
CLIMATOLOGICAL SUMMARY for year $year_name
NAME: $station.location
ELEV: $station.altitude LAT: $station.latitude[0]-$station.latitude[1] $station.latitude[2] LONG: $station.longitude[0]-$station.longitude[1] $station.longitude[2]
TEMPERATURE ($unit.label.outTemp.strip())
HEAT COOL MAX MAX MIN MIN
MEAN MEAN DEG DEG >= <= <= <=
YR MO MAX MIN MEAN DAYS DAYS HI DAY LOW DAY $ShowInt($Hot) $ShowInt($Cold) $ShowInt($Cold) $ShowInt($VeryCold)
------------------------------------------------------------------------------------------------
#for $month in $year.months
#if $month.barometer.count.raw
$month.dateTime.format($YM) $month.outTemp.meanmax.nolabel($Temp,$NONE) $month.outTemp.meanmin.nolabel($Temp,$NONE) $month.outTemp.avg.nolabel($Temp,$NONE) $month.heatdeg.sum.nolabel($Temp,$NONE) $month.cooldeg.sum.nolabel($Temp,$NONE) $month.outTemp.max.nolabel($Temp,$NONE) $month.outTemp.maxtime.format($D,$NODAY) $month.outTemp.min.nolabel($Temp,$NONE) $month.outTemp.mintime.format($D,$NODAY) $month.outTemp.max_ge($Hot).nolabel($Count,$NONE) $month.outTemp.max_le($Cold).nolabel($Count,$NONE) $month.outTemp.min_le($Cold).nolabel($Count,$NONE) $month.outTemp.min_le($VeryCold).nolabel($Count,$NONE)
#else
$month.dateTime.format($YM)
#end if
#end for
------------------------------------------------------------------------------------------------
$year.outTemp.meanmax.nolabel($Temp,$NONE) $year.outTemp.meanmin.nolabel($Temp,$NONE) $year.outTemp.avg.nolabel($Temp,$NONE) $year.heatdeg.sum.nolabel($Temp,$NONE) $year.cooldeg.sum.nolabel($Temp,$NONE) $year.outTemp.max.nolabel($Temp,$NONE) $year.outTemp.maxtime.format($M,$NODAY) $year.outTemp.min.nolabel($Temp,$NONE) $year.outTemp.mintime.format($M,$NODAY) $year.outTemp.max_ge($Hot).nolabel($Count,$NONE) $year.outTemp.max_le($Cold).nolabel($Count,$NONE) $year.outTemp.min_le($Cold).nolabel($Count,$NONE) $year.outTemp.min_le($VeryCold).nolabel($Count,$NONE)
PRECIPITATION ($unit.label.rain.strip())
MAX ---DAYS OF RAIN---
OBS. OVER
YR MO TOTAL DAY DATE $ShowFloat(Trace) $ShowFloat($SomeRain) $ShowFloat($Soak)
------------------------------------------------
#for $month in $year.months
#if $month.barometer.count.raw
$month.dateTime.format($YM) $month.rain.sum.nolabel($Rain,$NONE) $month.rain.maxsum.nolabel($Rain,$NONE) $month.rain.maxsumtime.format($D,$NODAY) $month.rain.sum_ge($Trace).nolabel($Count,$NONE) $month.rain.sum_ge($SomeRain).nolabel($Count,$NONE) $month.rain.sum_ge($Soak).nolabel($Count,$NONE)
#else
$month.dateTime.format($YM)
#end if
#end for
------------------------------------------------
$year.rain.sum.nolabel($Rain,$NONE) $year.rain.maxsum.nolabel($Rain,$NONE) $year.rain.maxsumtime.format($M,$NODAY) $year.rain.sum_ge($Trace).nolabel($Count,$NONE) $year.rain.sum_ge($SomeRain).nolabel($Count,$NONE) $year.rain.sum_ge($Soak).nolabel($Count,$NONE)
WIND SPEED ($unit.label.windSpeed.strip())
DOM
YR MO AVG HI DATE DIR
-----------------------------------
#for $month in $year.months
#if $month.barometer.count.raw
$month.dateTime.format($YM) $month.wind.avg.nolabel($Wind,$NONE) $month.wind.max.nolabel($Wind,$NONE) $month.wind.maxtime.format($D,$NODAY) $month.wind.vecdir.nolabel($Dir,$NONE)
#else
$month.dateTime.format($YM)
#end if
#end for
-----------------------------------
$year.wind.avg.nolabel($Wind,$NONE) $year.wind.max.nolabel($Wind,$NONE) $year.wind.maxtime.format($M,$NODAY) $year.wind.vecdir.nolabel($Dir,$NONE)
<?xml version="1.0"?>
<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" >
<channel>
<title>$station.location, Weather Conditions</title>
<link>$station.station_url</link>
<description>Current conditions, and daily, monthly, and yearly summaries</description>
<language>en-us</language>
<pubDate>$current.dateTime.format("%a, %d %b %Y %H:%M:%S %Z")</pubDate>
<lastBuildDate>$current.dateTime.format("%a, %d %b %Y %H:%M:%S %Z")</lastBuildDate>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<generator>weewx $station.version</generator>
<ttl>$current.interval.string('')</ttl>
<item>
<title>Weather Conditions at $current.dateTime</title>
<link>$station.station_url</link>
<description>
Outside temperature: $current.outTemp;
Barometer: $current.barometer;
Wind: $current.windSpeed from $current.windDir;
Rain rate: $current.rainRate;
Inside temperature: $current.inTemp
</description>
<pubDate>$current.dateTime.format("%a, %d %b %Y %H:%M:%S %Z")</pubDate>
<geo:lat>$station.latitude_f</geo:lat>
<geo:long>$station.longitude_f</geo:long>
<content:encoded><![CDATA[
<p>
Time: $current.dateTime<br/>
Outside Temperature: $current.outTemp<br/>
Inside Temperature: $current.inTemp<br/>
Wind Chill: $current.windchill<br/>
Heat Index: $current.heatindex<br/>
Dewpoint: $current.dewpoint<br/>
Humidity: $current.outHumidity<br/>
Barometer: $current.barometer<br/>
Wind: $current.windSpeed from $current.windDir<br/>
Rain Rate: $current.rainRate<br/>
</p>
]]></content:encoded>
</item>
<item>
<title>Daily Weather Summary as of $current.dateTime</title>
<link>$station.station_url</link>
<description>
Min outside temperature: $day.outTemp.min at $day.outTemp.mintime;
Max outside temperature: $day.outTemp.max at $day.outTemp.maxtime;
Min inside temperature: $day.inTemp.min at $day.inTemp.mintime;
Max inside temperature: $day.inTemp.max at $day.inTemp.maxtime;
Min barometer: $day.barometer.min at $day.barometer.mintime;
Max barometer: $day.barometer.max at $day.barometer.maxtime;
Max wind : $day.wind.max from $day.wind.gustdir at $day.wind.maxtime;
Rain today: $day.rain.sum
</description>
<pubDate>$current.dateTime.format("%a, %d %b %Y %H:%M:%S %Z")</pubDate>
<geo:lat>$station.latitude_f</geo:lat>
<geo:long>$station.longitude_f</geo:long>
<content:encoded><![CDATA[
<p>
Day: $day.dateTime.format("%d %b %Y")<br/>
Min Outside Temperature: $day.outTemp.min at $day.outTemp.mintime<br/>
Max Outside Temperature: $day.outTemp.max at $day.outTemp.maxtime<br/>
Min Inside Temperature: $day.inTemp.min at $day.inTemp.mintime<br/>
Max Inside Temperature: $day.inTemp.max at $day.inTemp.maxtime<br/>
Min Barometer: $day.barometer.min at $day.barometer.mintime<br/>
Max Barometer: $day.barometer.max at $day.barometer.maxtime<br/>
Max Wind : $day.wind.max from $day.wind.gustdir at $day.wind.maxtime<br/>
Rain today: $day.rain.sum<br/>
</p>
]]></content:encoded>
</item>
<item>
<title>Monthly Weather Summary as of $current.dateTime</title>
<link>$station.station_url/month.html</link>
<description>
Min outside temperature: $month.outTemp.min at $month.outTemp.mintime;
Max outside temperature: $month.outTemp.max at $month.outTemp.maxtime;
Min inside temperature: $month.inTemp.min at $month.inTemp.mintime;
Max inside temperature: $month.inTemp.max at $month.inTemp.maxtime;
Min barometer: $month.barometer.min at $month.barometer.mintime;
Max barometer: $month.barometer.max at $month.barometer.maxtime;
Max wind : $month.wind.max from $month.wind.gustdir at $month.wind.maxtime;
Rain total for month: $month.rain.sum
</description>
<pubDate>$current.dateTime.format("%a, %d %b %Y %H:%M:%S %Z")</pubDate>
<content:encoded><![CDATA[
<p>
Month: $month.dateTime.format("%B %Y")<br/>
Max Outside Temperature: $month.outTemp.max at $month.outTemp.maxtime<br/>
Min Outside Temperature: $month.outTemp.min at $month.outTemp.mintime<br/>
Max Inside Temperature: $month.inTemp.max at $month.inTemp.maxtime<br/>
Min Inside Temperature: $month.inTemp.min at $month.inTemp.mintime<br/>
Min Barometer: $month.barometer.min at $month.barometer.mintime<br/>
Max Barometer: $month.barometer.max at $month.barometer.maxtime<br/>
Max Wind : $month.wind.max from $month.wind.gustdir at $month.wind.maxtime<br/>
Rain total for month: $month.rain.sum<br/>
</p>
]]></content:encoded>
</item>
<item>
<title>Yearly Weather Summary as of $current.dateTime</title>
<link>$station.station_url/year.html</link>
<description>
Min outside temperature: $year.outTemp.min at $year.outTemp.mintime;
Max outside temperature: $year.outTemp.max at $year.outTemp.maxtime;
Min inside temperature: $year.inTemp.min at $year.inTemp.mintime;
Max inside temperature: $year.inTemp.max at $year.inTemp.maxtime;
Min barometer: $year.barometer.min at $year.barometer.mintime;
Max barometer: $year.barometer.max at $year.barometer.maxtime;
Max wind : $year.wind.max from $year.wind.gustdir at $year.wind.maxtime;
Rain total for year: $year.rain.sum
</description>
<pubDate>$current.dateTime.format("%a, %d %b %Y %H:%M:%S %Z")</pubDate>
<content:encoded><![CDATA[
<p>
Year: $year.dateTime.format("%Y")<br/>
Max Outside Temperature: $year.outTemp.max at $year.outTemp.maxtime<br/>
Min Outside Temperature: $year.outTemp.min at $year.outTemp.mintime<br/>
Max Inside Temperature: $year.inTemp.max at $year.inTemp.maxtime<br/>
Min Inside Temperature: $year.inTemp.min at $year.inTemp.mintime<br/>
Min Barometer: $year.barometer.min at $year.barometer.mintime<br/>
Max Barometer: $year.barometer.max at $year.barometer.maxtime<br/>
Max Wind : $year.wind.max from $year.wind.gustdir at $year.wind.maxtime<br/>
Rain total for year: $year.rain.sum<br/>
</p>
]]></content:encoded>
</item>
</channel>
</rss>
#errorCatcher Echo
#encoding UTF-8
<!DOCTYPE html><html lang="de-DE"><head><meta charset="utf-8"><meta content="IE=edge" http-equiv="X-UA-Compatible"><meta content="width=device-width,initial-scale=1" name="viewport"><title>$Extras.site_title</title><meta content="$Extras.site_description" name="description"><meta content="$Extras.site_owner" name="author"><meta content="$Extras.site_title" property="og:title"><meta content="website" property="og:type"><meta content="$station.station_url" property="og:url"><meta content="$Extras.webcam1_img" property="og:image"><meta content="$Extras.site_title" property="og:site_name"><meta content="$Extras.site_description" property="og:description"><meta content="$station.latitude[0].$station.latitude[1].replace('.', '')" property="og:latitude"><meta content="$station.longitude[0].$station.longitude[1].replace('.', '')" property="og:longitude"><meta content="$station.location" property="og:locality"><link href="/apple-touch-icon.png" rel="apple-touch-icon" sizes="180x180"><link href="/favicon-32x32.png" rel="icon" sizes="32x32" type="image/png"><link href="/favicon-16x16.png" rel="icon" sizes="16x16" type="image/png"><link href="/site.webmanifest" rel="manifest"><link href="/safari-pinned-tab.svg" rel="mask-icon" color="#f7931e"><meta content="#2b5797" name="msapplication-TileColor"><meta content="#00738c" name="theme-color"><link href="assets/css/complete.min.css" rel="stylesheet"><style>#camTabs li a:hover,#camTabs li.active a,#camTabs li.active a:hover,.we_current .whitebg h4,.whitebg h3,body.info .whitebg .whitebg h4{background:$Extras.theme_color_light}#camTabs li a{background:$Extras.theme_color_dark}</style></head><body class="dx-viewport archive month$current.dateTime.format('%m')"><nav class="navbar navbar-fixed-top navbar-inverse"><div class="container"><div class="navbar-header"><button aria-controls="navbar" aria-expanded="false" class="collapsed navbar-toggle" data-target="#navbar" data-toggle="collapse" type="button"><span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span></button> <a href="index.html" class="navbar-brand">Rabenwetter</a></div><div class="collapse navbar-collapse navbar-right" id="navbar"><ul class="nav navbar-main navbar-nav"><li><a href="index.html">Courant</a></li><li class="active"><a href="#">Archive</a></li><li><a href="info.html">Info</a></li><li><a href="contact.html">Contact</a></li></ul></div></div></nav><div class="container"><div class="col-md-9"><div class="whitebg jshide"><p class="alert alert-danger"><strong>Il faut javascript pour voir les compteurs live. (ex: desactivation NoScript addon.)</strong></p></div><div class="whitebg jshidden"><h3>Archive</h3><div class="row"><div class="col-xs-6 col-md-8"><a href="#" data-toggle="dropdown" class="dropdown-toggle btn btn-lg btn-default btn-block" id="dropdown-period" role="button" aria-haspopup="true" aria-expanded="false"><span class="title">Choisir la periode...</span><span class="caret"></span></a><ul class="dropdown-menu" id="period" aria-labelledby="period"><li><a href="#day">Jour</a></li><li><a href="#week">Semaine</a></li><li><a href="#month">Mois</a></li><li><a href="#year">Annee</a></li></ul></div><div class="col-xs-6 col-md-4 datetime_container"><div class="input-group input-group-lg"><div class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></div><input type="text" class="form-control" value="" id="datetime" size="10"></div></div></div><div class="clear"><br></div><div class="chart_container"><div class="btn-group" role="group"><button type="button" class="btn btn-secondary" value="l"><span class="glyphicon glyphicon-chevron-left"></span></button> <button type="button" class="btn btn-secondary" value="r"><span class="glyphicon glyphicon-chevron-right"></span></button></div><h4>Temperature</h4><div id="chart_temp"></div></div><div class="chart_container"><div class="btn-group" role="group"><button type="button" class="btn btn-secondary" value="l"><span class="glyphicon glyphicon-chevron-left"></span></button> <button type="button" class="btn btn-secondary" value="r"><span class="glyphicon glyphicon-chevron-right"></span></button></div><h4>Humidite</h4><div id="chart_hum"></div></div><div class="chart_container"><div class="btn-group" role="group"><button type="button" class="btn btn-secondary" value="l"><span class="glyphicon glyphicon-chevron-left"></span></button> <button type="button" class="btn btn-secondary" value="r"><span class="glyphicon glyphicon-chevron-right"></span></button></div><h4>Pression atmospherique</h4><div id="chart_press"></div></div><div class="chart_container"><div class="btn-group" role="group"><button type="button" class="btn btn-secondary" value="l"><span class="glyphicon glyphicon-chevron-left"></span></button> <button type="button" class="btn btn-secondary" value="r"><span class="glyphicon glyphicon-chevron-right"></span></button></div><h4>Precipitation</h4><div id="chart_rain"></div></div><div class="chart_container"><div class="btn-group" role="group"><button type="button" class="btn btn-secondary" value="l"><span class="glyphicon glyphicon-chevron-left"></span></button> <button type="button" class="btn btn-secondary" value="r"><span class="glyphicon glyphicon-chevron-right"></span></button></div><h4>Vitesse vent</h4><div id="chart_wspeed"></div></div><div class="chart_container"><div class="btn-group" role="group"><button type="button" class="btn btn-secondary" value="l"><span class="glyphicon glyphicon-chevron-left"></span></button> <button type="button" class="btn btn-secondary" value="r"><span class="glyphicon glyphicon-chevron-right"></span></button></div><h4>Direction vent</h4><div id="chart_wdir"></div></div>
#if $day.PM25.has_data
<div class="chart_container"><div class="btn-group" role="group"><button type="button" class="btn btn-secondary" value="l"><span class="glyphicon glyphicon-chevron-left"></span></button> <button type="button" class="btn btn-secondary" value="r"><span class="glyphicon glyphicon-chevron-right"></span></button></div><h4>Poussieres fines</h4><div id="chart_pm"></div></div>
#end if
</div></div><div class="col-md-3"><div class="whitebg we_current"><h3>Courant</h3><div class="row"><div class="col-md-12 current_meta"><h5>$station.location</h5><em><span id="we_lastupdate">$current.dateTime.format('%Y-%m-%d %H:%M')</span></em></div></div><div class="row"><div class="col-xs-8"><div class="whitebg current_temp"><h4>Temperature</h4><span id="we_temp-value">$current.outTemp.formatted</span><span class="sup we_tempunit">$unit.label.outTemp</span></div></div><div class="col-xs-4"><div class="whitebg current_temptrend"><h4>Tendance</h4><span class="glyphicon glyphicon-arrow-right" id="we_temp-trend"></span></div></div></div><div class="row"><div class="col-xs-8"><div class="whitebg current_baro"><h4>Barometre</h4><span id="we_barometer-value">$current.barometer.formatted</span><span class="sup we_pressunit">$unit.label.barometer</span></div></div><div class="col-xs-4"><div class="whitebg current_barotrend"><h4>Tendance</h4><span class="glyphicon glyphicon-arrow-right" id="we_barometer-trend"></span></div></div></div><div class="row"><div class="col-sm-6 col-xs-7"><div class="whitebg current_windspeed"><h4>Vent vit.</h4><span id="we_windspeed-value">$current.windSpeed.formatted</span><span class="sup we_windunit">$unit.label.windSpeed</span></div></div><div class="col-sm-6 col-xs-5"><div class="whitebg current_winddir"><h4>Vent dir.</h4><span id="we_winddir-value" data-toggle="tooltip" title="$current.windDir.ordinal_compass"><span class="glyphicon glyphicon-arrow-down"></span></span></div></div></div><div class="row"><div class="col-xs-6"><div class="whitebg current_hum"><h4>Humidite</h4><span id="we_humidity-value">$current.outHumidity.formatted</span><span class="sup we_humunit">$unit.label.outHumidity</span></div></div><div class="col-xs-6"><div class="whitebg current_rain"><h4>Pluie</h4><span id="we_rain-value">$day.rain.sum.formatted</span><span class="sup we_rainunit">$unit.label.rain</span></div></div></div>
#if $current.PM25.has_data
<div class="row"><div class="col-xs-6"><div class="whitebg current_pm25"><h4>Poussiere 2,5μm</h4><span id="we_pm25-value">$current.PM25.format("%.1f")</span><span class="sup we_pmunit">µg/m³</span></div></div><div class="col-xs-6"><div class="whitebg current_pm10"><h4>Poussiere 10μm</h4><span id="we_pm10-value">$current.PM10.format("%.1f")</span><span class="sup we_pmunit">µg/m³</span></div></div></div>
#end if
</div>
#if $varExists('Extras.radar_img')
<div class="whitebg"><h3>Regenradar</h3><a href="$Extras.radar_url" target="_blank"><img alt="Regenradar" class="img-responsive" src="$Extras.radar_img"></a><br>
#if $varExists('Extras.radar_url')
<span>Source</span>: <a href="$Extras.radar_url" target="_blank">hr-online.de</a>
#end if
</div>
#end if
#if $varExists('Extras.lapses_url')
<div class="whitebg lapses"><h3>Timelapse 24h</h3><video class="img-responsive video" controls="controls" id="daily" poster="$Extras.lapses_url/lapse-$yesterday.dateTime.format('%y%m%d.png')" preload="none"><source id="dailymp4" src="$Extras.lapses_url/lapse-$yesterday.dateTime.format('%y%m%d.mp4')" type="video/mp4"></video><div class="date input-group day"><input type="text" class="form-control"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span></div></div><div class="whitebg lapses"><h3>Timelapse 365d</h3><video class="img-responsive video" controls="controls" id="yearly" poster="$Extras.lapses_url/lapse-$year($years_ago=1).dateTime.format('%Y.png')" preload="none"><source id="yearlymp4" src="$Extras.lapses_url/lapse-$year($years_ago=1).dateTime.format('%Y.mp4')" type="video/mp4"></video><div class="date input-group year"><input type="text" class="form-control"><span class="input-group-addon"><i class="glyphicon glyphicon-th"></i></span></div></div>
#end if
#if $varExists('almanac')
<div class="whitebg"><h3>Soleil</h3><div class="container-fluid dsdigi" id="we_sun"><div class="row"><div class="col-xs-6"><img alt="Sun" class="img-responsive" src="assets/img/sun.svg"></div><div class="col-xs-6"><p><span class="glyphicon glyphicon-chevron-up"></span> $almanac.sunrise</p><p><span class="glyphicon glyphicon-chevron-down"></span> $almanac.sunset</p></div></div></div></div><div class="whitebg"><h3>Lune</h3><div class="container-fluid dsdigi" id="we_moon"><div class="row"><div class="col-xs-6"><img alt="Moon" class="img-responsive" src="assets/img/moon.svg"></div><div class="col-xs-6"><p><span class="glyphicon glyphicon-chevron-up"></span> $almanac.moon.rise</p><p><span class="glyphicon glyphicon-chevron-down"></span> $almanac.moon.set</p></div></div><div class="row"><div class="col-md-3 center percent">$almanac.moon_fullness%</div><div class="center col-md-9 phase">$almanac.moon_phase</div></div></div></div>
#end if
</div></div><footer class="footer"><div class="container">&copy; $current.dateTime.format("%Y") <a href="$Extras.site_link" target="_blank">$Extras.site_owner</a> (<a href="contact.html">Imprint</a>)<br>Powered by <a href="http://weewx.com/" target="_blank">weeWX</a> using <a href="https://rabenwetter.de" target="_blank">Rabenwetter Template</a></div></footer><script type="text/javascript">var cam1url="$Extras.webcam1_img",cam2url="$Extras.webcam2_img",cam1interval=$Extras.webcam1_interval,cam2interval=$Extras.webcam2_interval,lapsesurl="$Extras.lapses_url";parseInt(cam1interval)<=0&&(cam1interval=60),parseInt(cam2interval)<=0&&(cam2interval=300)</script><script src="assets/js/complete.min.js"></script></body></html>
\ No newline at end of file
#import datetime
#encoding UTF-8
#for $d in $month.days
[
#for $h in $d.hours
{ "dateTime": "$h.dateTime.format("%H:%M")",
#if $h.inTemp.has_data
"inTemp": $h.inTemp.avg.formatted.replace(",", "."),
#else
"inTemp": null,
#end if
#if $h.outTemp.has_data
"outTemp": $h.outTemp.avg.formatted.replace(",", "."),
"outTempTL": $h.outTemp.min.formatted.replace(",", "."),
"outTempTH": $h.outTemp.max.formatted.replace(",", "."),
#else
"outTemp": null,
"outTempTL": null,
"outTempTH": null,
#end if
#if $h.dewpoint.has_data
"dewpoint": $h.dewpoint.avg.formatted.replace(",", "."),
"dewpointTL": $h.dewpoint.min.formatted.replace(",", "."),
"dewpointTH": $h.dewpoint.max.formatted.replace(",", "."),
#else
"dewpoint": null,
"dewpointTL": null,
"dewpointTH": null,
#end if
#if $h.windchill.has_data
"windChill": $h.windchill.avg.formatted.replace(",", "."),
"windChillTL": $h.windchill.min.formatted.replace(",", "."),
#else
"windChill": null,
"windChillTL": null,
#end if
#if $h.heatindex.has_data
"heatIndex": $h.heatindex.avg.formatted.replace(",", "."),
"heatIndexTH": $h.heatindex.max.formatted.replace(",", "."),
#else
"heatIndex": null,
"heatIndexTH": null,
#end if
#if $h.windSpeed.has_data
"windSpeed": $h.windSpeed.avg.formatted.replace(",", "."),
"windSpeedTH": $h.windSpeed.max.formatted.replace(",", "."),
#else
"windSpeed": null,
"windSpeedTH": null,
#end if
#if $h.windDir.has_data
"windDirection": $h.windDir.avg.formatted.replace(",", "."),
#else
"windDirection": null,
#end if
#if $h.barometer.has_data
"pressure": $h.barometer.avg.formatted.replace(",", "."),
"pressureTL": $h.barometer.min.formatted.replace(",", "."),
"pressureTH": $h.barometer.max.formatted.replace(",", "."),
#else
"pressure": null,
"pressureTL": null,
"pressureTH": null,
#end if
#if $h.rain.has_data
"rain": $h.rain.sum.formatted.replace(",", "."),
#else
"rain": null,
#end if
#if $h.rainRate.has_data
"rainrate": $h.rainRate.avg.formatted.replace(",", "."),
"rainrateTH": $h.rainRate.max.formatted.replace(",", "."),
#else
"rainrate": null,
"rainrateTH": null,
#end if
#if $h.outHumidity.has_data
"outHumidity": $h.outHumidity.avg.formatted.replace(",", "."),
"outHumidityTL": $h.outHumidity.min.formatted.replace(",", "."),
"outHumidityTH": $h.outHumidity.max.formatted.replace(",", "."),
#else
"outHumidity": null,
"outHumidityTL": null,
"outHumidityTH": null,
#end if
#if $h.inHumidity.has_data
"inHumidity": $h.inHumidity.avg.formatted.replace(",", "."),
"inHumidityTL": $h.inHumidity.min.formatted.replace(",", "."),
"inHumidityTH": $h.inHumidity.max.formatted.replace(",", "."),
#else
"inHumidity": null,
"inHumidityTL": null,
"inHumidityTH": null,
#end if
#if $h.PM10.has_data
"PM10": $h.PM10.avg.nolabel("%.2f").replace(",", "."),
"PM25": $h.PM25.avg.nolabel("%.2f").replace(",", ".") },
#else
"PM10": null,
"PM25": null },
#end if
#end for
{}
]
#end for
#import datetime
#encoding UTF-8
#for $m in $year.months
[
#for $d in $m.days
{ "dateTime": "$d.dateTime.format("%d.")",
#if $d.inTemp.avg.formatted != "0"
"inTemp": $d.inTemp.avg.formatted.replace(",", "."),
"outTemp": $d.outTemp.avg.formatted.replace(",", "."),
"outTempTL": $d.outTemp.min.formatted.replace(",", "."),
"outTempTH": $d.outTemp.max.formatted.replace(",", "."),
"dewpoint": $d.dewpoint.avg.formatted.replace(",", "."),
"dewpointTL": $d.dewpoint.min.formatted.replace(",", "."),
"dewpointTH": $d.dewpoint.max.formatted.replace(",", "."),
"windChill": $d.windchill.avg.formatted.replace(",", "."),
"windChillTL": $d.windchill.min.formatted.replace(",", "."),
"heatIndex": $d.heatindex.avg.formatted.replace(",", "."),
"heatIndexTH": $d.heatindex.max.formatted.replace(",", "."),
"windSpeed": $d.windSpeed.avg.formatted.replace(",", "."),
"windSpeedTH": $d.windSpeed.max.formatted.replace(",", "."),
"windDirection": $d.windDir.avg.formatted.replace(",", "."),
"pressure": $d.barometer.avg.formatted.replace(",", "."),
"pressureTL": $d.barometer.min.formatted.replace(",", "."),
"pressureTH": $d.barometer.max.formatted.replace(",", "."),
"rain": $d.rain.sum.formatted.replace(",", "."),
"rainrate": $d.rainRate.avg.formatted.replace(",", "."),
"rainrateTH": $d.rainRate.max.formatted.replace(",", "."),
"outHumidity": $d.outHumidity.avg.formatted.replace(",", "."),
"outHumidityTL": $d.outHumidity.min.formatted.replace(",", "."),
"outHumidityTH": $d.outHumidity.max.formatted.replace(",", "."),
"inHumidity": $d.inHumidity.avg.formatted.replace(",", "."),
"inHumidityTL": $d.inHumidity.min.formatted.replace(",", "."),
"inHumidityTH": $d.inHumidity.max.formatted.replace(",", "."),
"PM10": $d.PM10.avg.nolabel("%.2f").replace(",", "."),
"PM25": $d.PM25.avg.nolabel("%.2f").replace(",", ".") },
#else
"inTemp": null,
"outTemp": null,
"outTempTL": null,
"outTempTH": null,
"dewpoint": null,
"dewpointTL": null,
"dewpointTH": null,
"windChill": null,
"windChillTL": null,
"heatIndex": null,
"heatIndexTH": null,
"windSpeed": null,
"windSpeedTH": null,
"windDirection": null,
"pressure": null,
"pressureTL": null,
"pressureTH": null,
"rain": null,
"rainrate": null,
"rainrateTH": null,
"outHumidity": null,
"outHumidityTL": null,
"outHumidityTH": null,
"inHumidity": null,
"inHumidityTL": null,
"inHumidityTH": null,
"PM10": null,
"PM25": null },
#end if
#end for
{}
]
#end for
\ No newline at end of file
#import datetime
#encoding UTF-8
#for $w in $year.spans(interval=604800)
[
#for $d in $w.days
{ "dateTime": "$d.dateTime.format("%a")",
#if $d.inTemp.has_data
"inTemp": $d.inTemp.avg.formatted.replace(",", "."),
#else
"inTemp": null,
#end if
#if $d.outTemp.has_data
"outTemp": $d.outTemp.avg.formatted.replace(",", "."),
"outTempTL": $d.outTemp.min.formatted.replace(",", "."),
"outTempTH": $d.outTemp.max.formatted.replace(",", "."),
#else
"outTemp": null,
"outTempTL": null,
"outTempTH": null,
#end if
#if $d.dewpoint.has_data
"dewpoint": $d.dewpoint.avg.formatted.replace(",", "."),
"dewpointTL": $d.dewpoint.min.formatted.replace(",", "."),
"dewpointTH": $d.dewpoint.max.formatted.replace(",", "."),
#else
"dewpoint": null,
"dewpointTL": null,
"dewpointTH": null,
#end if
#if $d.windchill.has_data
"windChill": $d.windchill.avg.formatted.replace(",", "."),
"windChillTL": $d.windchill.min.formatted.replace(",", "."),
#else
"windChill": null,
"windChillTL": null,
#end if
#if $d.heatindex.has_data
"heatIndex": $d.heatindex.avg.formatted.replace(",", "."),
"heatIndexTH": $d.heatindex.max.formatted.replace(",", "."),
#else
"heatIndex": null,
"heatIndexTH": null,
#end if
#if $d.windSpeed.has_data
"windSpeed": $d.windSpeed.avg.formatted.replace(",", "."),
"windSpeedTH": $d.windSpeed.max.formatted.replace(",", "."),
#else
"windSpeed": null,
"windSpeedTH": null,
#end if
#if $d.windDir.has_data
"windDirection": $d.windDir.avg.formatted.replace(",", "."),
#else