Skip to content
Snippets Groups Projects
Graph.razor 1.02 KiB
@page "/graph"
@using Public_API.Shared.Models
@inject HttpClient http

<h3>Graph</h3>

<!-- TODO : List of sensors here-->
<label for="sensor">Sensor: </label>
@if (sensors == null)
{
    <p><em>Loading...</em></p>
}
else
{

    <select name="sensor" @onchange="@OnSensorSelectChange">
        <option disabled>Select...</option>
        @foreach (Sensor s in sensors)
        {
            <option value="@s.sensorID">@s.friendlyName</option>
        }
    </select>
}


<!-- TODO : Show data for each sensor here -->
@if (targetSensor != null) {
    <h3>Sensor Selected: @targetSensor.friendlyName</h3>

    <!-- TODO Graphs here! -->


}

@code {
    private Sensor[] sensors;
    private Sensor targetSensor;

    protected override async Task OnInitializedAsync()
    {
        sensors = await http.GetFromJsonAsync<Sensor[]>("api/GetSensorList");
    }

    public async Task OnSensorSelectChange(ChangeEventArgs e)
    {
        targetSensor = await http.GetFromJsonAsync<Sensor>("api/GetSensorByID/" + e.Value.ToString());
    }
}