mirror of
https://github.com/Team254/cheesy-arena-lite.git
synced 2026-03-10 14:16:47 -04:00
Rename 'pit' display to 'rankings'.
This commit is contained in:
@@ -31,8 +31,8 @@ const (
|
||||
AnnouncerDisplay
|
||||
AudienceDisplay
|
||||
FieldMonitorDisplay
|
||||
PitDisplay
|
||||
QueueingDisplay
|
||||
RankingsDisplay
|
||||
TwitchStreamDisplay
|
||||
)
|
||||
|
||||
@@ -42,8 +42,8 @@ var DisplayTypeNames = map[DisplayType]string{
|
||||
AnnouncerDisplay: "Announcer",
|
||||
AudienceDisplay: "Audience",
|
||||
FieldMonitorDisplay: "Field Monitor",
|
||||
PitDisplay: "Pit",
|
||||
QueueingDisplay: "Queueing",
|
||||
RankingsDisplay: "Rankings",
|
||||
TwitchStreamDisplay: "Twitch Stream",
|
||||
}
|
||||
|
||||
@@ -53,8 +53,8 @@ var displayTypePaths = map[DisplayType]string{
|
||||
AnnouncerDisplay: "/displays/announcer",
|
||||
AudienceDisplay: "/displays/audience",
|
||||
FieldMonitorDisplay: "/displays/field_monitor",
|
||||
PitDisplay: "/displays/pit",
|
||||
QueueingDisplay: "/displays/queueing",
|
||||
RankingsDisplay: "/displays/rankings",
|
||||
TwitchStreamDisplay: "/displays/twitch",
|
||||
}
|
||||
|
||||
|
||||
@@ -34,8 +34,8 @@ func TestDisplayFromUrl(t *testing.T) {
|
||||
assert.Equal(t, AudienceDisplay, display.Type)
|
||||
display, _ = DisplayFromUrl("/displays/field_monitor/websocket", query)
|
||||
assert.Equal(t, FieldMonitorDisplay, display.Type)
|
||||
display, _ = DisplayFromUrl("/displays/pit/websocket", query)
|
||||
assert.Equal(t, PitDisplay, display.Type)
|
||||
display, _ = DisplayFromUrl("/displays/rankings/websocket", query)
|
||||
assert.Equal(t, RankingsDisplay, display.Type)
|
||||
|
||||
// Test the nickname and arbitrary parameters.
|
||||
query["nickname"] = []string{"Test Nickname"}
|
||||
@@ -53,8 +53,8 @@ func TestDisplayFromUrl(t *testing.T) {
|
||||
|
||||
func TestDisplayToUrl(t *testing.T) {
|
||||
display := &Display{DisplayConfiguration: DisplayConfiguration{Id: "254", Nickname: "Test Nickname",
|
||||
Type: PitDisplay, Configuration: map[string]string{"f": "1", "z": "#fff", "a": "3", "c": "4"}}}
|
||||
assert.Equal(t, "/displays/pit?displayId=254&nickname=Test+Nickname&a=3&c=4&f=1&z=%23fff", display.ToUrl())
|
||||
Type: RankingsDisplay, Configuration: map[string]string{"f": "1", "z": "#fff", "a": "3", "c": "4"}}}
|
||||
assert.Equal(t, "/displays/rankings?displayId=254&nickname=Test+Nickname&a=3&c=4&f=1&z=%23fff", display.ToUrl())
|
||||
}
|
||||
|
||||
func TestNextDisplayId(t *testing.T) {
|
||||
@@ -82,12 +82,12 @@ func TestDisplayRegisterUnregister(t *testing.T) {
|
||||
notifier := arena.Displays["254"].Notifier
|
||||
|
||||
// Register a second instance of the same display.
|
||||
displayConfig2 := &DisplayConfiguration{Id: "254", Nickname: "Pit", Type: PitDisplay,
|
||||
displayConfig2 := &DisplayConfiguration{Id: "254", Nickname: "Rankings", Type: RankingsDisplay,
|
||||
Configuration: map[string]string{}}
|
||||
arena.RegisterDisplay(displayConfig2, "2.3.4.5")
|
||||
if assert.Contains(t, arena.Displays, "254") {
|
||||
assert.Equal(t, "Pit", arena.Displays["254"].DisplayConfiguration.Nickname)
|
||||
assert.Equal(t, PitDisplay, arena.Displays["254"].DisplayConfiguration.Type)
|
||||
assert.Equal(t, "Rankings", arena.Displays["254"].DisplayConfiguration.Nickname)
|
||||
assert.Equal(t, RankingsDisplay, arena.Displays["254"].DisplayConfiguration.Type)
|
||||
assert.Equal(t, 2, arena.Displays["254"].ConnectionCount)
|
||||
assert.Equal(t, "2.3.4.5", arena.Displays["254"].IpAddress)
|
||||
assert.Same(t, notifier, arena.Displays["254"].Notifier)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
// Author: nick@team254.com (Nick Eyre)
|
||||
// Author: pat@patfairbank.com (Patrick Fairbank)
|
||||
//
|
||||
// Client-side methods for the pit display.
|
||||
// Client-side methods for the rankings display.
|
||||
|
||||
var websocket;
|
||||
var initialDwellMs = 3000; // How long the display waits upon initial load before scrolling.
|
||||
@@ -90,7 +90,7 @@ $(function() {
|
||||
scrollMsPerRow = urlParams.get("scrollMsPerRow");
|
||||
|
||||
// Set up the websocket back to the server. Used only for remote forcing of reloads.
|
||||
websocket = new CheesyWebsocket("/displays/pit/websocket", {
|
||||
websocket = new CheesyWebsocket("/displays/rankings/websocket", {
|
||||
eventStatus: function(event) { handleEventStatus(event.data); },
|
||||
});
|
||||
|
||||
@@ -80,8 +80,8 @@
|
||||
<li><a href="/displays/audience">Audience</a></li>
|
||||
<li><a href="/displays/field_monitor">Field Monitor</a></li>
|
||||
<li><a href="/displays/field_monitor?fta=true">Field Monitor (FTA)</a></li>
|
||||
<li><a href="/displays/pit">Pit</a></li>
|
||||
<li><a href="/displays/queueing">Queueing</a></li>
|
||||
<li><a href="/displays/rankings">Rankings</a></li>
|
||||
<li class="divider"></li>
|
||||
<li class="dropdown-header">Alliance Station</li>
|
||||
<li><a href="/displays/alliance_station?station=R1">Red 1</a></li>
|
||||
|
||||
@@ -8,11 +8,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Pit Display - {{.EventSettings.Name}} - Cheesy Arena </title>
|
||||
<title>Rankings Display - {{.EventSettings.Name}} - Cheesy Arena </title>
|
||||
<link rel="shortcut icon" href="/static/img/favicon.ico">
|
||||
<link rel="stylesheet" href="/static/css/lib/bootstrap.min.css" />
|
||||
<link rel="stylesheet" href="/static/css/cheesy-arena.css" />
|
||||
<link rel="stylesheet" href="/static/css/pit_display.css" />
|
||||
<link rel="stylesheet" href="/static/css/rankings_display.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="column">
|
||||
@@ -72,6 +72,6 @@
|
||||
<script src="/static/js/lib/jquery.websocket-0.0.1.js"></script>
|
||||
<script src="/static/js/lib/jquery.transit.min.js"></script>
|
||||
<script src="/static/js/cheesy-websocket.js"></script>
|
||||
<script src="/static/js/pit_display.js"></script>
|
||||
<script src="/static/js/rankings_display.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -113,7 +113,7 @@ func (web *Web) sponsorSlidesApiHandler(w http.ResponseWriter, r *http.Request)
|
||||
}
|
||||
}
|
||||
|
||||
// Generates a JSON dump of the qualification rankings, primarily for use by the pit display.
|
||||
// Generates a JSON dump of the qualification rankings, primarily for use by the rankings display.
|
||||
func (web *Web) rankingsApiHandler(w http.ResponseWriter, r *http.Request) {
|
||||
rankings, err := web.arena.Database.GetAllRankings()
|
||||
if err != nil {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Copyright 2014 Team 254. All Rights Reserved.
|
||||
// Author: pat@patfairbank.com (Patrick Fairbank)
|
||||
//
|
||||
// Web handlers for the pit rankings display.
|
||||
// Web handlers for the rankings display.
|
||||
|
||||
package web
|
||||
|
||||
@@ -11,13 +11,13 @@ import (
|
||||
"net/http"
|
||||
)
|
||||
|
||||
// Renders the pit display which shows scrolling rankings.
|
||||
func (web *Web) pitDisplayHandler(w http.ResponseWriter, r *http.Request) {
|
||||
// Renders the display which shows scrolling rankings.
|
||||
func (web *Web) rankingsDisplayHandler(w http.ResponseWriter, r *http.Request) {
|
||||
if !web.enforceDisplayConfiguration(w, r, map[string]string{"scrollMsPerRow": "1000"}) {
|
||||
return
|
||||
}
|
||||
|
||||
template, err := web.parseFiles("templates/pit_display.html")
|
||||
template, err := web.parseFiles("templates/rankings_display.html")
|
||||
if err != nil {
|
||||
handleWebErr(w, err)
|
||||
return
|
||||
@@ -25,15 +25,15 @@ func (web *Web) pitDisplayHandler(w http.ResponseWriter, r *http.Request) {
|
||||
data := struct {
|
||||
*model.EventSettings
|
||||
}{web.arena.EventSettings}
|
||||
err = template.ExecuteTemplate(w, "pit_display.html", data)
|
||||
err = template.ExecuteTemplate(w, "rankings_display.html", data)
|
||||
if err != nil {
|
||||
handleWebErr(w, err)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// The websocket endpoint for the pit display, used only to force reloads remotely.
|
||||
func (web *Web) pitDisplayWebsocketHandler(w http.ResponseWriter, r *http.Request) {
|
||||
// The websocket endpoint for the rankings display, used only to force reloads remotely.
|
||||
func (web *Web) rankingsDisplayWebsocketHandler(w http.ResponseWriter, r *http.Request) {
|
||||
display, err := web.registerDisplay(r)
|
||||
if err != nil {
|
||||
handleWebErr(w, err)
|
||||
@@ -10,20 +10,20 @@ import (
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestPitDisplay(t *testing.T) {
|
||||
func TestRankingsDisplay(t *testing.T) {
|
||||
web := setupTestWeb(t)
|
||||
|
||||
recorder := web.getHttpResponse("/displays/pit?displayId=1&scrollMsPerRow=700")
|
||||
recorder := web.getHttpResponse("/displays/rankings?displayId=1&scrollMsPerRow=700")
|
||||
assert.Equal(t, 200, recorder.Code)
|
||||
assert.Contains(t, recorder.Body.String(), "Pit Display - Untitled Event - Cheesy Arena")
|
||||
assert.Contains(t, recorder.Body.String(), "Rankings Display - Untitled Event - Cheesy Arena")
|
||||
}
|
||||
|
||||
func TestPitDisplayWebsocket(t *testing.T) {
|
||||
func TestRankingsDisplayWebsocket(t *testing.T) {
|
||||
web := setupTestWeb(t)
|
||||
|
||||
server, wsUrl := web.startTestServer()
|
||||
defer server.Close()
|
||||
conn, _, err := gorillawebsocket.DefaultDialer.Dial(wsUrl+"/displays/pit/websocket?displayId=1", nil)
|
||||
conn, _, err := gorillawebsocket.DefaultDialer.Dial(wsUrl+"/displays/rankings/websocket?displayId=1", nil)
|
||||
assert.Nil(t, err)
|
||||
defer conn.Close()
|
||||
ws := websocket.NewTestWebsocket(conn)
|
||||
@@ -132,10 +132,10 @@ func (web *Web) newHandler() http.Handler {
|
||||
router.HandleFunc("/displays/audience/websocket", web.audienceDisplayWebsocketHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/field_monitor", web.fieldMonitorDisplayHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/field_monitor/websocket", web.fieldMonitorDisplayWebsocketHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/pit", web.pitDisplayHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/pit/websocket", web.pitDisplayWebsocketHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/queueing", web.queueingDisplayHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/queueing/websocket", web.queueingDisplayWebsocketHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/rankings", web.rankingsDisplayHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/rankings/websocket", web.rankingsDisplayWebsocketHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/twitch", web.twitchDisplayHandler).Methods("GET")
|
||||
router.HandleFunc("/displays/twitch/websocket", web.twitchDisplayWebsocketHandler).Methods("GET")
|
||||
router.HandleFunc("/login", web.loginHandler).Methods("GET")
|
||||
|
||||
Reference in New Issue
Block a user