mirror of
https://github.com/Team254/cheesy-arena-lite.git
synced 2026-03-10 14:16:47 -04:00
247 lines
9.5 KiB
HTML
247 lines
9.5 KiB
HTML
{{/*
|
||
Copyright 2014 Team 254. All Rights Reserved.
|
||
Author: pat@patfairbank.com (Patrick Fairbank)
|
||
|
||
UI for manually editing the result for a match.
|
||
*/}}
|
||
{{define "title"}}Edit Match Results{{end}}
|
||
{{define "body"}}
|
||
<div class="row">
|
||
<div class="well">
|
||
<form class="form-horizontal" method="POST">
|
||
<fieldset>
|
||
<legend>Edit Match {{.Match.DisplayName}} Results</legend>
|
||
<div class="col-lg-6" id="redScore"></div>
|
||
<div class="col-lg-6" id="blueScore"></div>
|
||
<div class="row form-group">
|
||
<div class="text-center col-lg-12">
|
||
<a href="/match_review"><button type="button" class="btn btn-default">Cancel</button></a>
|
||
<button type="submit" class="btn btn-info">Save</button>
|
||
</div>
|
||
</div>
|
||
</fieldset>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
<div id="scoreTemplate" style="display: none;">
|
||
<div class="well well-{{"{{alliance}}"}}">
|
||
<fieldset>
|
||
<legend>Pre-Match</legend>
|
||
<b>Robot Starting Levels</b>
|
||
<div class="form-group">
|
||
{{range $i := seq 3}}
|
||
<div class="row">
|
||
<label class="col-lg-4 control-label">Team {{"{{team"}}{{$i}}{{"}}"}}</label>
|
||
<div class="radio col-lg-2">
|
||
<input type="radio" name="{{"{{alliance}}"}}RobotStartLevel{{$i}}" value="1">Level 1
|
||
</div>
|
||
<div class="radio col-lg-2">
|
||
<input type="radio" name="{{"{{alliance}}"}}RobotStartLevel{{$i}}" value="2">Level 2
|
||
</div>
|
||
<div class="radio col-lg-4">
|
||
<input type="radio" name="{{"{{alliance}}"}}RobotStartLevel{{$i}}" value="3">No-Show
|
||
</div>
|
||
</div>
|
||
{{end}}
|
||
</div>
|
||
<b>Cargo Ship Prepopulation</b>
|
||
<p>Counting starts nearest center field on scoring table side and wraps around</p>
|
||
<div class="form-group">
|
||
{{range $i, $unused := seq 2}}
|
||
<div class="row">
|
||
{{range $j := seq 4}}
|
||
{{$bayNumber := add $j (multiply $i 4)}}
|
||
<div class="col-lg-3">
|
||
{{$bayNumber}}:
|
||
<select name="{{"{{alliance}}"}}CargoBayPreMatch{{$bayNumber}}">
|
||
<option value="0">Empty</option>
|
||
<option value="1">Null Hatch</option>
|
||
<option value="3">Cargo</option>
|
||
</select>
|
||
</div>
|
||
{{end}}
|
||
</div>
|
||
{{end}}
|
||
</div>
|
||
</fieldset>
|
||
<fieldset>
|
||
<legend>In-Match</legend>
|
||
<b>Sandstorm Bonus</b>
|
||
<div class="form-group">
|
||
<div class="row">
|
||
{{range $i := seq 3}}
|
||
<div class="col-lg-4">
|
||
<label class="col-lg-8 control-label">Team {{"{{team"}}{{$i}}{{"}}"}}</label>
|
||
<input type="checkbox" class="input-sm" name="{{"{{alliance}}"}}SandstormBonus{{$i}}">
|
||
</div>
|
||
{{end}}
|
||
</div>
|
||
</div>
|
||
<b>Cargo Ship</b>
|
||
<p>Counting starts nearest center field on scoring table side and wraps around</p>
|
||
<div class="form-group">
|
||
{{range $i, $unused := seq 2}}
|
||
<div class="row">
|
||
{{range $j := seq 4}}
|
||
{{$bayNumber := add $j (multiply $i 4)}}
|
||
<div class="col-lg-3">
|
||
{{$bayNumber}}:
|
||
<select name="{{"{{alliance}}"}}CargoBay{{$bayNumber}}">
|
||
<option value="0">Empty</option>
|
||
<option value="1">Hatch Only</option>
|
||
<option value="2">H+Cargo</option>
|
||
</select>
|
||
</div>
|
||
{{end}}
|
||
</div>
|
||
{{end}}
|
||
</div>
|
||
<b>Rockets</b>
|
||
<div class="form-group">
|
||
<div class="row text-center">
|
||
{{template "rocketHalf" dict "rocketName" "Near Left" "rocketId" "NearLeft"}}
|
||
{{template "rocketHalf" dict "rocketName" "Near Right" "rocketId" "NearRight"}}
|
||
{{template "rocketHalf" dict "rocketName" "Far Left" "rocketId" "FarLeft"}}
|
||
{{template "rocketHalf" dict "rocketName" "Far Right" "rocketId" "FarRight"}}
|
||
</div>
|
||
</div>
|
||
<b>Robot Ending Levels</b>
|
||
<div class="form-group">
|
||
{{range $i := seq 3}}
|
||
<div class="row">
|
||
<label class="col-lg-2 control-label">Team {{"{{team"}}{{$i}}{{"}}"}}</label>
|
||
<div class="radio col-lg-3">
|
||
<input type="radio" name="{{"{{alliance}}"}}RobotEndLevel{{$i}}" value="0">Not On Hab
|
||
</div>
|
||
<div class="radio col-lg-2">
|
||
<input type="radio" name="{{"{{alliance}}"}}RobotEndLevel{{$i}}" value="1">Level 1
|
||
</div>
|
||
<div class="radio col-lg-2">
|
||
<input type="radio" name="{{"{{alliance}}"}}RobotEndLevel{{$i}}" value="2">Level 2
|
||
</div>
|
||
<div class="radio col-lg-2">
|
||
<input type="radio" name="{{"{{alliance}}"}}RobotEndLevel{{$i}}" value="3">Level 3
|
||
</div>
|
||
</div>
|
||
{{end}}
|
||
</div>
|
||
</fieldset>
|
||
<fieldset>
|
||
<legend>Fouls</legend>
|
||
{{"{{#each score.Fouls}}"}}
|
||
<div class="well well-sm well-dark{{"{{../alliance}}"}}">
|
||
<button type="button" class="close" onclick="deleteFoul('{{"{{../alliance}}"}}', {{"{{@index}}"}});">
|
||
×
|
||
</button>
|
||
<br />
|
||
<div class="form-group">
|
||
<label class="col-lg-4 control-label">Team</label>
|
||
<div class="col-lg-8">
|
||
<div class="radio col-lg-3">
|
||
<label>
|
||
<input type="radio" name="{{"{{../alliance}}"}}Foul{{"{{@index}}"}}Team" value="{{"{{../team1}}"}}">
|
||
{{"{{../team1}}"}}
|
||
</label>
|
||
</div>
|
||
<div class="radio col-lg-3">
|
||
<label>
|
||
<input type="radio" name="{{"{{../alliance}}"}}Foul{{"{{@index}}"}}Team" value="{{"{{../team2}}"}}">
|
||
{{"{{../team2}}"}}
|
||
</label>
|
||
</div>
|
||
<div class="radio col-lg-3">
|
||
<label>
|
||
<input type="radio" name="{{"{{../alliance}}"}}Foul{{"{{@index}}"}}Team" value="{{"{{../team3}}"}}">
|
||
{{"{{../team3}}"}}
|
||
</label>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<label class="col-lg-4 control-label">Rule</label>
|
||
<div class="col-lg-7">
|
||
<select class="form-control" name="{{"{{../alliance}}"}}Foul{{"{{@index}}"}}RuleId">
|
||
{{range $rule := .Rules}}
|
||
<option value="{{$rule.Id}}">{{$rule.RuleNumber}}
|
||
[{{if $rule.IsTechnical}}Tech {{end}}Foul{{if $rule.IsRankingPoint}}+RP{{end}}]:
|
||
{{$rule.Description}}
|
||
</option>
|
||
{{end}}
|
||
</select>
|
||
</div>
|
||
</div>
|
||
<div class="form-group">
|
||
<label class="col-lg-4 control-label">Seconds Into Match</label>
|
||
<div class="col-lg-3">
|
||
<input type="text" class="form-control input-sm" name="{{"{{../alliance}}"}}Foul{{"{{@index}}"}}Time">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{{"{{/each}}"}}
|
||
<button type="button" class="btn btn-default btn-sm" onclick="addFoul('{{"{{alliance}}"}}');">
|
||
Add Foul
|
||
</button>
|
||
<br /><br />
|
||
</fieldset>
|
||
<fieldset>
|
||
<legend>Cards</legend>
|
||
{{range $i := seq 3}}
|
||
<div class="form-group">
|
||
<label class="col-lg-4 control-label">Team {{"{{team"}}{{$i}}{{"}}"}}</label>
|
||
<div class="col-lg-8">
|
||
<div class="radio col-lg-3">
|
||
<label>
|
||
<input type="radio" name="{{"{{alliance}}"}}Team{{"{{team"}}{{$i}}{{"}}"}}Card" value="" checked>
|
||
None
|
||
</label>
|
||
</div>
|
||
<div class="radio col-lg-3">
|
||
<label>
|
||
<input type="radio" name="{{"{{alliance}}"}}Team{{"{{team"}}{{$i}}{{"}}"}}Card" value="yellow">
|
||
Yellow
|
||
</label>
|
||
</div>
|
||
<div class="radio col-lg-6">
|
||
<label>
|
||
<input type="radio" name="{{"{{alliance}}"}}Team{{"{{team"}}{{$i}}{{"}}"}}Card" value="red">
|
||
Red
|
||
</label>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{{end}}
|
||
</fieldset>
|
||
</div>
|
||
</div>
|
||
{{end}}
|
||
{{define "script"}}
|
||
<script src="/static/js/match_review.js"></script>
|
||
<script>
|
||
var matchId = {{.Match.Id}};
|
||
var allianceResults = {};
|
||
allianceResults["red"] = {alliance: "red", team1: {{.Match.Red1}}, team2: {{.Match.Red2}},
|
||
team3: {{.Match.Red3}}, score: jQuery.parseJSON('{{.MatchResultJson.RedScoreJson}}'),
|
||
cards: jQuery.parseJSON('{{.MatchResultJson.RedCardsJson}}')};
|
||
allianceResults["blue"] = {alliance: "blue", team1: {{.Match.Blue1}}, team2: {{.Match.Blue2}},
|
||
team3: {{.Match.Blue3}}, score: jQuery.parseJSON('{{.MatchResultJson.BlueScoreJson}}'),
|
||
cards: jQuery.parseJSON('{{.MatchResultJson.BlueCardsJson}}')};
|
||
renderResults("red");
|
||
renderResults("blue");
|
||
</script>
|
||
{{end}}
|
||
{{define "rocketHalf"}}
|
||
<div class="col-lg-3">
|
||
<div class="row">{{.rocketName}}</div>
|
||
<div class="row">H: {{template "rocketBay" dict "rocketId" .rocketId "level" "3"}}</div>
|
||
<div class="row">M: {{template "rocketBay" dict "rocketId" .rocketId "level" "2"}}</div>
|
||
<div class="row">L: {{template "rocketBay" dict "rocketId" .rocketId "level" "1"}}</div>
|
||
</div>
|
||
{{end}}
|
||
{{define "rocketBay"}}
|
||
<select name="{{"{{alliance}}"}}Rocket{{.rocketId}}Bay{{.level}}">
|
||
<option value="0">Empty</option>
|
||
<option value="1">Hatch Only</option>
|
||
<option value="2">H+Cargo</option>
|
||
</select>
|
||
{{end}}
|