Skip to content

Commit

Permalink
Updated sensor status page. Use current for batteries and stat tiles …
Browse files Browse the repository at this point in the history
…on today page. GH-140
  • Loading branch information
Daveiano committed Jul 2, 2023
1 parent f840771 commit b47995d
Show file tree
Hide file tree
Showing 6 changed files with 311 additions and 214 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@
"report": "NODE_ENV=production webpack --profile --json > stats.json; webpack-bundle-analyzer ./stats.json",
"dev": "NODE_ENV=development webpack --watch",
"build": "NODE_ENV=production webpack && mv skins/weewx-wdc/dist/service-worker.js skins/weewx-wdc/service-worker.js",
"deploy:local": "sudo rsync -vua ./skins/weewx-wdc/ /etc/weewx/skins/weewx-wdc/ && sudo cp -r ./bin/user/. /usr/share/weewx/user/ && sudo systemctl restart weewx && sudo /usr/share/weewx/wee_reports",
"deploy:local": "sudo rsync -vua ./skins/weewx-wdc/ /etc/weewx/skins/weewx-wdc/ && sudo cp -r ./bin/user/. /usr/share/weewx/user/ && sudo /usr/share/weewx/wee_reports",
"serve:local": "docker run -it --rm -d -p 8080:80 --name web -v /var/www/html/weewx:/usr/share/nginx/html nginx",
"deploy:pi": "yarn run build && sudo rsync -vua ./bin/ pi@weewx:/home/pi/bin && sudo rsync -vua --exclude 'weewx-wdc/dwd/*' --exclude 'weewx-wdc/skin.conf' ./skins/ pi@weewx:/home/pi/skins",
"test:e2e": "yarn playwright test --config playwright.config.ts",
Expand Down
8 changes: 7 additions & 1 deletion skins/weewx-wdc/includes/body-alternative.inc
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,13 @@ $render_gauges($DisplayOptions['Gauges'][$context])
## ValueError: start time (1654034700) is greater than stop time (1640991600)
#set $alltime_tag = $alltime($data_binding=$skin_obs_binding) if $context == 'alltime' else None

#if $getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), $alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $get_custom_data_binding_obs_key($skin_obs)).has_data
#if $context == 'day' and not $daily_archive
#set $stat_tile_check = $current
#else
#set $stat_tile_check = $get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), $alltime_tag, $yesterday($data_binding=$skin_obs_binding))
#end if

#if $getattr($stat_tile_check, $get_custom_data_binding_obs_key($skin_obs)).has_data
#set global $partial_obs = $skin_obs
#include "includes/stat-tile.inc"
#end if
Expand Down
85 changes: 55 additions & 30 deletions skins/weewx-wdc/includes/conditions-table.inc
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,16 @@
#set $skin_obs_binding = $get_data_binding($skin_obs)
#set $skin_obs_key = $get_custom_data_binding_obs_key($skin_obs)
#set $alltime_tag = None if $use_parameter_year or $use_parameter_month else $alltime($data_binding=$skin_obs_binding)
#if $getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).has_data and not $get_show_sum($skin_obs) and $skin_obs != 'windDir' and $skin_obs != 'windGustDir'

#set $context_binded = $get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), $alltime_tag, $yesterday($data_binding=$skin_obs_binding))

#if $context == 'day' and not $daily_archive
#set $context_binding = $current
#else
#set $context_binding = context_binded
#end if

#if $getattr($context_binding, $skin_obs_key).has_data and not $get_show_sum($skin_obs) and $skin_obs != 'windDir' and $skin_obs != 'windGustDir'
#set $show_wind_dir = 'windDir' in $stat_obs and $skin_obs == "windSpeed" and not $to_bool($DisplayOptions.get('stat_tile_winddir_ordinal', True))
#set $show_wind_dir_ordinal = 'windDir' in $stat_obs and $skin_obs == "windSpeed" and $to_bool($DisplayOptions.get('stat_tile_winddir_ordinal', True))
#set $show_gust_dir = 'windGustDir' in $stat_obs and $skin_obs == "windGust" and not $to_bool($DisplayOptions.get('stat_tile_winddir_ordinal', True))
Expand All @@ -73,8 +82,14 @@
<bx-structured-list-cell class="cell-label">$obs.label[$skin_obs]</bx-structured-list-cell>
<bx-structured-list-cell class="cell-value">
<!--prettier-ignore-->
#if $context == 'day'
<span>$getattr($latest($data_binding=$skin_obs_binding), $skin_obs_key).format("%." + $rounding + "f")</span>
#if $context == 'day' and not $daily_archive
<span>
#if $skin_obs_binding != 'wx_binding'
$getattr($latest($data_binding=$skin_obs_binding), $skin_obs_key).format("%." + $rounding + "f")
#else
$getattr($latest, $skin_obs_key).format("%." + $rounding + "f")
#end if
</span>

#if $show_wind_dir and $current.windDir.has_data
<span class="stat-wind-dir stat-detail">, $current.windDir</span>
Expand All @@ -90,11 +105,11 @@
#end if
#else
#if $get_show_sum($skin_obs)
$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).sum.format("%." + $rounding + "f")
$getattr($context_binding, $skin_obs_key).sum.format("%." + $rounding + "f")
#else if $get_show_max($skin_obs)
$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).max.format("%." + $rounding + "f")
$getattr($context_binding, $skin_obs_key).max.format("%." + $rounding + "f")
#else
$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).avg.format("%." + $rounding + "f")
$getattr($context_binding, $skin_obs_key).avg.format("%." + $rounding + "f")

#if $show_wind_dir and $getattr($get_time_span_from_context($context, $day, $week, $month, $year, $alltime, $yesterday), "windDir").has_data
<span class="stat-wind-dir stat-detail">, $getattr($get_time_span_from_context($context, $day, $week, $month, $year, $alltime, $yesterday), "windDir").avg</span>
Expand All @@ -110,34 +125,42 @@
</bx-structured-list-cell>
<!--prettier-ignore-->
<bx-structured-list-cell class="cell-min">
<span>$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).min.format("%." + $rounding + "f")</span>
#if $getattr($context_binded, $skin_obs_key).has_data
<span>$getattr($context_binded, $skin_obs_key).min.format("%." + $rounding + "f")</span>

#if show_min_max_time
<span class="date">$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).mintime.format($min_max_time_format)</span>
#if show_min_max_time
<span class="date">$getattr($context_binded, $skin_obs_key).mintime.format($min_max_time_format)</span>
#end if
#else
<span>$gettext("N/A")</span>
#end if
</bx-structured-list-cell>
<!--prettier-ignore-->
<bx-structured-list-cell class="cell-max">
<span>$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).max.format("%." + $rounding + "f")</span>

#set $windDir_binded = $getattr($get_time_span_from_context($context, $day, $week, $month, $year, $alltime, $yesterday), "windDir")
#set $gustDir_binded = $getattr($get_time_span_from_context($context, $day, $week, $month, $year, $alltime, $yesterday), "windGustDir")

#if $show_wind_dir and $windDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $windDir_binded.max</span>
#else if $show_wind_dir_ordinal and $windDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $windDir_binded.max.ordinal_compass</span>
#else if $show_gust_dir and $gustDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $gustDir_binded.max</span>
#else if $show_gust_dir_ordinal and $gustDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $gustDir_binded.max.ordinal_compass</span>
<!--Empty block for usage in MQTT-->
#else if (($show_wind_dir or $show_wind_dir_ordinal) and not $windDir_binded.has_data) or (($show_gust_dir or $show_gust_dir_ordinal) and not $gustDir_binded.has_data)
<span class="stat-wind-dir stat-detail"></span>
#end if
#if $getattr($context_binded, $skin_obs_key).has_data
<span>$getattr($context_binded, $skin_obs_key).max.format("%." + $rounding + "f")</span>

#set $windDir_binded = $getattr($get_time_span_from_context($context, $day, $week, $month, $year, $alltime, $yesterday), "windDir")
#set $gustDir_binded = $getattr($get_time_span_from_context($context, $day, $week, $month, $year, $alltime, $yesterday), "windGustDir")

#if $show_min_max_time
<span class="date">$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).maxtime.format($min_max_time_format)</span>
#if $show_wind_dir and $windDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $windDir_binded.max</span>
#else if $show_wind_dir_ordinal and $windDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $windDir_binded.max.ordinal_compass</span>
#else if $show_gust_dir and $gustDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $gustDir_binded.max</span>
#else if $show_gust_dir_ordinal and $gustDir_binded.has_data
<span class="stat-wind-dir stat-detail">, $gustDir_binded.max.ordinal_compass</span>
<!--Empty block for usage in MQTT-->
#else if (($show_wind_dir or $show_wind_dir_ordinal) and not $windDir_binded.has_data) or (($show_gust_dir or $show_gust_dir_ordinal) and not $gustDir_binded.has_data)
<span class="stat-wind-dir stat-detail"></span>
#end if

#if $show_min_max_time
<span class="date">$getattr($context_binded, $skin_obs_key).maxtime.format($min_max_time_format)</span>
#end if
#else
<span>$gettext("N/A")</span>
#end if
</bx-structured-list-cell>
</bx-structured-list-row>
Expand Down Expand Up @@ -165,13 +188,15 @@
#set $skin_obs_binding = $get_data_binding($skin_obs)
#set $skin_obs_key = $get_custom_data_binding_obs_key($skin_obs)
#set $alltime_tag = None if $use_parameter_year or $use_parameter_month else $alltime($data_binding=$skin_obs_binding)
#if $getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), $alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).has_data and $get_show_sum($skin_obs)
#set $context_binding = $get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), $alltime_tag, $yesterday($data_binding=$skin_obs_binding))

#if $getattr($context_binding, $skin_obs_key).has_data and $get_show_sum($skin_obs)
#set $rounding = $str($get_rounding($skin_obs, $skin_obs_key))
<bx-structured-list-row data-aggregation="sum" data-test="$skin_obs" data-observation="$skin_obs_key" data-unit="$get_unit_label($get_unit_for_obs($skin_obs, $skin_obs_key, $context))" data-rounding="$get_rounding($skin_obs, $skin_obs_key)">
<bx-structured-list-cell class="keep-cell">$obs.label[$skin_obs]</bx-structured-list-cell>
<!--prettier-ignore-->
<bx-structured-list-cell class="cell-value">
$getattr($get_time_span_from_context($context, $day($data_binding=$skin_obs_binding), $week($data_binding=$skin_obs_binding), $month($data_binding=$skin_obs_binding), $year($data_binding=$skin_obs_binding), alltime_tag, $yesterday($data_binding=$skin_obs_binding)), $skin_obs_key).sum.format("%." + $rounding + "f")
$getattr($context_binding, $skin_obs_key).sum.format("%." + $rounding + "f")
</bx-structured-list-cell>
</bx-structured-list-row>
#end if
Expand Down
Loading

0 comments on commit b47995d

Please sign in to comment.