mirror of
https://github.com/Team254/cheesy-arena-lite.git
synced 2026-03-09 21:56:50 -04:00
Added configuration of TBA publishing.
This commit is contained in:
@@ -6,7 +6,11 @@ CREATE TABLE event_settings (
|
||||
displaybackgroundcolor VARCHAR(16),
|
||||
numelimalliances int,
|
||||
selectionround2order VARCHAR(1),
|
||||
selectionround3order VARCHAR(1)
|
||||
selectionround3order VARCHAR(1),
|
||||
tbapublishingenabled bool,
|
||||
tbaeventcode VARCHAR(16),
|
||||
tbasecretid VARCHAR(255),
|
||||
tbasecret VARCHAR(255)
|
||||
);
|
||||
|
||||
-- +goose Down
|
||||
|
||||
@@ -13,6 +13,10 @@ type EventSettings struct {
|
||||
NumElimAlliances int
|
||||
SelectionRound2Order string
|
||||
SelectionRound3Order string
|
||||
TbaPublishingEnabled bool
|
||||
TbaEventCode string
|
||||
TbaSecretId string
|
||||
TbaSecret string
|
||||
}
|
||||
|
||||
const eventSettingsId = 0
|
||||
|
||||
@@ -17,7 +17,8 @@ func TestEventSettingsReadWrite(t *testing.T) {
|
||||
|
||||
eventSettings, err := db.GetEventSettings()
|
||||
assert.Nil(t, err)
|
||||
assert.Equal(t, EventSettings{0, "Untitled Event", "UE", "#00ff00", 8, "L", ""}, *eventSettings)
|
||||
assert.Equal(t, EventSettings{Id: 0, Name: "Untitled Event", Code: "UE", DisplayBackgroundColor: "#00ff00",
|
||||
NumElimAlliances: 8, SelectionRound2Order: "L", SelectionRound3Order: ""}, *eventSettings)
|
||||
|
||||
eventSettings.Name = "Chezy Champs"
|
||||
eventSettings.Code = "cc"
|
||||
|
||||
@@ -41,6 +41,10 @@ func SettingsPostHandler(w http.ResponseWriter, r *http.Request) {
|
||||
eventSettings.NumElimAlliances = numAlliances
|
||||
eventSettings.SelectionRound2Order = r.PostFormValue("selectionRound2Order")
|
||||
eventSettings.SelectionRound3Order = r.PostFormValue("selectionRound3Order")
|
||||
eventSettings.TbaPublishingEnabled = r.PostFormValue("tbaPublishingEnabled") == "on"
|
||||
eventSettings.TbaEventCode = r.PostFormValue("tbaEventCode")
|
||||
eventSettings.TbaSecretId = r.PostFormValue("tbaSecretId")
|
||||
eventSettings.TbaSecret = r.PostFormValue("tbaSecret")
|
||||
err := db.SaveEventSettings(eventSettings)
|
||||
if err != nil {
|
||||
handleWebErr(w, err)
|
||||
|
||||
@@ -29,16 +29,21 @@ func TestSetupSettings(t *testing.T) {
|
||||
assert.Contains(t, recorder.Body.String(), "UE")
|
||||
assert.Contains(t, recorder.Body.String(), "#00ff00")
|
||||
assert.Contains(t, recorder.Body.String(), "8")
|
||||
assert.NotContains(t, recorder.Body.String(), "tbaPublishingEnabled\" checked")
|
||||
|
||||
// Change the settings and check the response.
|
||||
recorder = postHttpResponse("/setup/settings", "name=Chezy Champs&code=CC&displayBackgroundColor=#ff00ff&"+
|
||||
"numElimAlliances=16")
|
||||
"numElimAlliances=16&tbaPublishingEnabled=on&tbaEventCode=2014cc&tbaSecretId=secretId&tbaSecret=tbasec")
|
||||
assert.Equal(t, 302, recorder.Code)
|
||||
recorder = getHttpResponse("/setup/settings")
|
||||
assert.Contains(t, recorder.Body.String(), "Chezy Champs")
|
||||
assert.Contains(t, recorder.Body.String(), "CC")
|
||||
assert.Contains(t, recorder.Body.String(), "#ff00ff")
|
||||
assert.Contains(t, recorder.Body.String(), "16")
|
||||
assert.Contains(t, recorder.Body.String(), "tbaPublishingEnabled\" checked")
|
||||
assert.Contains(t, recorder.Body.String(), "2014cc")
|
||||
assert.Contains(t, recorder.Body.String(), "secretId")
|
||||
assert.Contains(t, recorder.Body.String(), "tbasec")
|
||||
}
|
||||
|
||||
func TestSetupSettingsInvalidValues(t *testing.T) {
|
||||
|
||||
@@ -85,12 +85,39 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend>Publishing</legend>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-7 col-lg-offset-5">
|
||||
<button type="submit" class="btn btn-info">Save</button>
|
||||
<label class="col-lg-7 control-label">Enable The Blue Alliance publishing</label>
|
||||
<div class="col-lg-1 checkbox">
|
||||
<input type="checkbox" name="tbaPublishingEnabled"{{if .TbaPublishingEnabled}} checked{{end}}>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-5 control-label">TBA Event Code</label>
|
||||
<div class="col-lg-7">
|
||||
<input type="text" class="form-control" name="tbaEventCode" value="{{.TbaEventCode}}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-5 control-label">TBA Secret ID</label>
|
||||
<div class="col-lg-7">
|
||||
<input type="text" class="form-control" name="tbaSecretId" value="{{.TbaSecretId}}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-lg-5 control-label">TBA Secret</label>
|
||||
<div class="col-lg-7">
|
||||
<input type="text" class="form-control" name="tbaSecret" value="{{.TbaSecret}}">
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-7 col-lg-offset-5">
|
||||
<button type="submit" class="btn btn-info">Save</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user