Beispiel #1
0
func addDashboardRoutes(router *pat.Router) {
	router.Get("/dashboard/progress", serve(
		dashboardAuth,
		getDashboardProgress,
		toJson,
	))

	router.Get("/dashboard/clues", serve(
		dashboardAuth,
		getDashboardClues,
		toJson,
	))

	router.Put("/dashboard/start_times", serve(
		parseRequest(new(setStartTimesReq)),
		dashboardAuth,
		setStartTimes,
		noResponse,
	))

	router.Put("/dashboard", serve(
		parseRequest(new(_DashboardAuthReq)),
		dashboardAuth,
	))

}
Beispiel #2
0
func addClueRoutes(router *pat.Router) {
	router.Get("/clue/{clue_id}/hint", serve(
		Authenticate(true),
		parseFromUrl(urlParams{
			"clue_id": parseParamToInt64,
			"lat":     parseParamToFloat64,
			"lng":     parseParamToFloat64,
		}),
		takeHint,
		toJson,
	))
	router.Get("/clue", serve(
		Authenticate(true),
		parseFromUrl(urlParams{"clue_id": parseParamToInt64}),
		currentClue,
		toJson,
	))
	router.Post("/clue/{clue_id}", serve(
		Authenticate(true),
		parseFromUrl(urlParams{
			"clue_id": parseParamToInt64,
		}),
		parseRequest(new(_SolveClueReq)),
		solveClue,
		toJson,
	))
	router.Put("/clue/{clue_id}", serve(
		dashboardAuth,
		parseRequest(new(record.Clue)),
		updateClue,
		toJson,
	))
}
Beispiel #3
0
func addTwilioRoutes(router *pat.Router) {
	router.Get("/twilio/call", serve(
		parseFromUrl(urlParams{"From": parseParamToString}),
		handleTwilio,
		toXml,
	))
}
Beispiel #4
0
func addTrackRoutes(router *pat.Router) {
	router.Get("/tracks", serve(
		dashboardAuth,
		allTracks,
		toJson,
	))
	router.Put("/track/{track_id}/toggle", serve(
		dashboardAuth,
		parseFromUrl(urlParams{
			"track_id": parseParamToInt64,
		}),
		toggleTrackActivation,
		noResponse,
	))

}
Beispiel #5
0
func normalPing(mux *pat.Router) {
	mux.Get("/ping", func(res http.ResponseWriter, req *http.Request) {
		res.Write([]byte("pong"))
	})
}
Beispiel #6
0
func addProgressRoutes(router *pat.Router) {
	router.Get("/progress", getProgress)
}