Split up display configuration and LED/PLC testing into separate setup pages.

This commit is contained in:
Patrick Fairbank
2018-09-03 15:24:37 -07:00
parent 03f357451a
commit 03208eaa7a
11 changed files with 232 additions and 177 deletions

View File

@@ -38,12 +38,13 @@
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Setup</a>
<ul class="dropdown-menu">
<li><a href="/setup/settings">Settings</a></li>
<li><a href="/setup/field">Field Configuration</a></li>
<li><a href="/setup/teams">Team List</a></li>
<li><a href="/setup/schedule">Match Scheduling</a></li>
<li><a href="/setup/alliance_selection">Alliance Selection</a></li>
<li><a href="/setup/lower_thirds">Lower Thirds</a></li>
<li><a href="/setup/sponsor_slides">Sponsor Slides</a></li>
<li><a href="/setup/displays">Display Configuration</a></li>
<li><a href="/setup/led_plc">LED and PLC Testing</a></li>
</ul>
</li>
<li class="dropdown">

View File

@@ -0,0 +1,41 @@
{{/*
Copyright 2018 Team 254. All Rights Reserved.
Author: pat@patfairbank.com (Patrick Fairbank)
UI for configuring the field displays.
*/}}
{{define "title"}}Display Configuration{{end}}
{{define "body"}}
<div class="row">
<div class="col-lg-3">
<div class="well">
<legend>Alliance Station Displays</legend>
{{range $displayId, $station := .AllianceStationDisplays}}
<form class="form-horizontal" action="" method="POST">
<div class="form-group">
<label class="col-lg-5 control-label">Display {{$displayId}}</label>
<div class="col-lg-7">
<input type="hidden" name="displayId" value="{{$displayId}}" />
<select class="form-control" name="allianceStation" onchange="this.form.submit();">
<option value=""></option>
<option value="R1"{{if eq $station "R1"}} selected{{end}}>Red 1</option>
<option value="R2"{{if eq $station "R2"}} selected{{end}}>Red 2</option>
<option value="R3"{{if eq $station "R3"}} selected{{end}}>Red 3</option>
<option value="B1"{{if eq $station "B1"}} selected{{end}}>Blue 1</option>
<option value="B2"{{if eq $station "B2"}} selected{{end}}>Blue 2</option>
<option value="B3"{{if eq $station "B3"}} selected{{end}}>Blue 3</option>
</select>
</div>
</div>
</form>
{{end}}
<legend>Reload All Displays</legend>
<div class="form-group">
<a href="/setup/displays/reload" class="btn btn-primary">Force Reload of All Displays</a>
</div>
</div>
</div>
</div>
{{end}}
{{define "script"}}
{{end}}

View File

@@ -1,113 +0,0 @@
{{/*
Copyright 2014 Team 254. All Rights Reserved.
Author: pat@patfairbank.com (Patrick Fairbank)
UI for controlling ephemeral aspects of the playing field.
*/}}
{{define "title"}}Field Configuration{{end}}
{{define "body"}}
<div class="row">
<div class="col-lg-3">
<div class="well">
<legend>Alliance Station Displays</legend>
{{range $displayId, $station := .AllianceStationDisplays}}
<form class="form-horizontal" action="/setup/field" method="POST">
<div class="form-group">
<label class="col-lg-5 control-label">Display {{$displayId}}</label>
<div class="col-lg-7">
<input type="hidden" name="displayId" value="{{$displayId}}" />
<select class="form-control" name="allianceStation" onchange="this.form.submit();">
<option value=""></option>
<option value="R1"{{if eq $station "R1"}} selected{{end}}>Red 1</option>
<option value="R2"{{if eq $station "R2"}} selected{{end}}>Red 2</option>
<option value="R3"{{if eq $station "R3"}} selected{{end}}>Red 3</option>
<option value="B1"{{if eq $station "B1"}} selected{{end}}>Blue 1</option>
<option value="B2"{{if eq $station "B2"}} selected{{end}}>Blue 2</option>
<option value="B3"{{if eq $station "B3"}} selected{{end}}>Blue 3</option>
</select>
</div>
</div>
</form>
{{end}}
<legend>Reload All Displays</legend>
<div class="form-group">
<a href="/setup/field/reload_displays" class="btn btn-primary">Force Reload of All Displays</a>
</div>
</div>
</div>
<div class="col-lg-7">
<div class="well">
<legend>PLC</legend>
<div class="row">
<div class="col-lg-4">
<table class="table">
<tr>
<th colspan="2">Inputs</th>
</tr>
{{range $i, $name := .InputNames}}
<tr>
<td>{{$name}}</td>
<td id="input{{$i}}"></td>
</tr>
{{end}}
</table>
</div>
<div class="col-lg-4">
<table class="table">
<tr>
<th colspan="2">Registers</th>
</tr>
{{range $i, $name := .RegisterNames}}
<tr>
<td>{{$name}}</td>
<td id="register{{$i}}"></td>
</tr>
{{end}}
</table>
</div>
<div class="col-lg-4">
<table class="table">
<tr>
<th colspan="2">Coils</th>
</tr>
{{range $i, $name := .CoilNames}}
<tr>
<td>{{$name}}</td>
<td id="coil{{$i}}"></td>
</tr>
{{end}}
</table>
</div>
</div>
</div>
</div>
<div class="col-lg-2">
<div class="well">
<legend>LEDs</legend>
<div class="form-group">
<label>Switch/Scale</label>
{{range $i, $name := .LedModeNames}}
<div class="radio">
<label>
<input type="radio" name="ledMode" value="{{$i}}" onclick="setLedMode();">{{$name}}
</label>
</div>
{{end}}
</div>
<div class="form-group">
<label>Vault</label>
{{range $i, $name := .VaultLedModeNames}}
<div class="radio">
<label>
<input type="radio" name="vaultLedMode" value="{{$i}}" onclick="setLedMode();">{{$name}}
</label>
</div>
{{end}}
</div>
</div>
</div>
</div>
{{end}}
{{define "script"}}
<script src="/static/js/setup_field.js"></script>
{{end}}

View File

@@ -0,0 +1,84 @@
{{/*
Copyright 2018 Team 254. All Rights Reserved.
Author: pat@patfairbank.com (Patrick Fairbank)
UI for testing the LEDs and PLC connected to the field.
*/}}
{{define "title"}}LED and PLC Testing{{end}}
{{define "body"}}
<div class="row">
<div class="col-lg-7">
<div class="well">
<legend>PLC</legend>
<div class="row">
<div class="col-lg-4">
<table class="table">
<tr>
<th colspan="2">Inputs</th>
</tr>
{{range $i, $name := .InputNames}}
<tr>
<td>{{$name}}</td>
<td id="input{{$i}}"></td>
</tr>
{{end}}
</table>
</div>
<div class="col-lg-4">
<table class="table">
<tr>
<th colspan="2">Registers</th>
</tr>
{{range $i, $name := .RegisterNames}}
<tr>
<td>{{$name}}</td>
<td id="register{{$i}}"></td>
</tr>
{{end}}
</table>
</div>
<div class="col-lg-4">
<table class="table">
<tr>
<th colspan="2">Coils</th>
</tr>
{{range $i, $name := .CoilNames}}
<tr>
<td>{{$name}}</td>
<td id="coil{{$i}}"></td>
</tr>
{{end}}
</table>
</div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="well">
<legend>Switch/Scale LEDs</legend>
{{range $i, $name := .LedModeNames}}
<div class="radio">
<label>
<input type="radio" name="ledMode" value="{{$i}}" onclick="setLedMode();">{{$name}}
</label>
</div>
{{end}}
</div>
</div>
<div class="col-lg-2">
<div class="well">
<legend>Vault LEDs</legend>
{{range $i, $name := .VaultLedModeNames}}
<div class="radio">
<label>
<input type="radio" name="vaultLedMode" value="{{$i}}" onclick="setLedMode();">{{$name}}
</label>
</div>
{{end}}
</div>
</div>
</div>
{{end}}
{{define "script"}}
<script src="/static/js/setup_led_plc.js"></script>
{{end}}