added table controls

This commit is contained in:
2025-12-12 10:10:30 +10:00
parent 2b4a36c1ff
commit c53abdb678
2 changed files with 215 additions and 30 deletions

188
src/pages/table.pug Normal file
View File

@@ -0,0 +1,188 @@
include ../components/mixins.pug
head
title table
body
+navbarMixin("Table")
.table-controls
details.filters
summary.filters__summary Filters
form.filters__form
fieldset.filters__fieldset
.filter-group
i.filter-group__label
b Location
br
.filter-group__items
input.filter-group__checkbox(type="checkbox" id="loc_kitchen" name="location" value="Kitchen")
| Kitchen
br
input.filter-group__checkbox(type="checkbox" id="loc_living" name="location" value="Living Room")
| Living Room
br
input.filter-group__checkbox(type="checkbox" id="loc_balcony" name="location" value="Balcony")
| Balcony
br
input.filter-group__checkbox(type="checkbox" id="loc_bedroom" name="location" value="Bedroom")
| Bedroom
br
.filter-group
i.filter-group__label
b Sensor Type
br
.filter-group__items
input.filter-group__checkbox(type="checkbox" id="type_xiaomi" name="sensor_type" value="Xiaomi")
| Xiaomi
br
input.filter-group__checkbox(type="checkbox" id="type_bmp220" name="sensor_type" value="Bmp220")
| Bmp220
br
input.filter-group__checkbox(type="checkbox" id="type_scd30" name="sensor_type" value="Scd30(Internal)")
| Scd30(Internal)
br
input.filter-group__checkbox(type="checkbox" id="type_bmp280" name="sensor_type" value="Bmp280")
| Bmp280
br
.filter-group
i.filter-group__label
b Numeric Values
br
.filter-group__range
| Temperature from:
input.filter-group__input(type="number" name="temp_min" placeholder="20")
| to:
input.filter-group__input(type="number" name="temp_max" placeholder="30")
br
| Humidity from:
input.filter-group__input(type="number" name="humidity_min" placeholder="40")
| to:
input.filter-group__input(type="number" name="humidity_max" placeholder="60")
br
.filter-group
i.filter-group__label
b Device Specific Filters
br
.filter-group__items
| Sensor Name:
input.filter-group__input(type="text" name="sensor_name")
br
| Days Since Calibration (max):
input.filter-group__input(type="number" name="calibration_days" placeholder="30")
br
.filter-group
i.filter-group__label
b Measurement Period
br
.filter-group__dates
| From:
input.filter-group__input(type="date" name="date_from")
br
| To:
input.filter-group__input(type="date" name="date_to")
br
.filter-group__buttons
input.filter-group__button.filter-group__button--submit(type="submit" value="Apply Filters")
input.filter-group__button.filter-group__button--reset(type="reset" value="Reset Filters")
details.sorting
summary.sorting__summary Sortings
form.sorting__form
fieldset.sorting__fieldset
.sort-level
i.sort-level__label
b Sort Level 1
br
label.sort-level__field-label(for="sort1") Field:
select.sort-level__select(id="sort1" name="sort1")
option(value="") -- None --
option(value="SensorID") SensorID
option(value="Timestamp") Time
option(value="BatteryLevel") BatteryLevel
option(value="Temperature") Temperature
option(value="Humidity") Humidity
label.sort-level__reverse-label(for="sort1_reverse")
input.sort-level__checkbox(type="checkbox" id="sort1_reverse" name="sort1_reverse")
| Reverse
br
br
.sort-level
i.sort-level__label
b Sort Level 2
br
label.sort-level__field-label(for="sort2") Field:
select.sort-level__select(id="sort2" name="sort2")
option(value="") -- None --
option(value="SensorID") SensorID
option(value="Timestamp") Time
option(value="BatteryLevel") BatteryLevel
option(value="Temperature") Temperature
option(value="Humidity") Humidity
label.sort-level__reverse-label(for="sort2_reverse")
input.sort-level__checkbox(type="checkbox" id="sort2_reverse" name="sort2_reverse")
| Reverse
br
br
.sort-level
i.sort-level__label
b Sort Level 3
br
label.sort-level__field-label(for="sort3") Field:
select.sort-level__select(id="sort3" name="sort3")
option(value="") -- None --
option(value="SensorID") SensorID
option(value="Timestamp") Time
option(value="BatteryLevel") BatteryLevel
option(value="Temperature") Temperature
option(value="Humidity") Humidity
label.sort-level__reverse-label(for="sort3_reverse")
input.sort-level__checkbox(type="checkbox" id="sort3_reverse" name="sort3_reverse")
| Reverse
br
input.sort-level__submit(type="submit" value="Sort")
details.graph
summary.graph__summary Graph
form.graph__form
fieldset.graph__fieldset
.axis-group
i.axis-group__label
b X axis
br
.axis-group__options
input.axis-group__radio(type="radio" id="x_time" name="x_axis" value="Time" checked)
label.axis-group__option-label(for="x_time") Time
br
input.axis-group__radio(type="radio" id="x_battery" name="x_axis" value="BatteryLevel")
label.axis-group__option-label(for="x_battery") BatteryLevel
br
input.axis-group__radio(type="radio" id="x_temperature" name="x_axis" value="Temperature")
label.axis-group__option-label(for="x_temperature") Temperature
br
input.axis-group__radio(type="radio" id="x_humidity" name="x_axis" value="Humidity")
label.axis-group__option-label(for="x_humidity") Humidity
br
.values-group
i.values-group__label
b Values
br
.values-group__options
input.values-group__checkbox(type="checkbox" id="val_temperature" name="values" value="AverageTemperature" checked)
label.values-group__option-label(for="val_temperature") Average Temperature
br
input.values-group__checkbox(type="checkbox" id="val_humidity" name="values" value="Humidity")
label.values-group__option-label(for="val_humidity") Average Humidity
br
input.values-group__checkbox(type="checkbox" id="val_battery" name="values" value="BatteryLevel")
label.values-group__option-label(for="val_battery") Average BatteryLevel
br
button.values-group__button(type="submit" id="build_graph" name="build_graph") Build