busdepartures/main.go

43 lines
936 B
Go

package main
import (
"fmt"
"net/http"
"net/url"
)
type Route struct {
RouteShortName string `json:"route_short_name"`
RouteLongName string `json:"route_long_name"`
}
type Quay struct {
ID string `json:"quayid"`
Name string `json:"name"`
Town string `json:"town"`
RoutesOfInterest []Route
}
func (q Quay) IsInterestingDeparture(d Departure) bool {
for _, route := range q.RoutesOfInterest {
if (route.RouteShortName == d.RouteShortName) && (route.RouteLongName == d.StopHeadsign) {
return true
}
}
return false
}
func (q Quay) GetBrengUrl() string {
param := fmt.Sprintf("{\"quayid\":\"%s\",\"name\":\"%s\",\"town\":\"%s\"}", q.ID, q.Name, q.Town)
return fmt.Sprint("https://www.breng.nl/nl/resultaten/halte-informatie/?stop=%s", url.QueryEscape(param))
}
var BusClient *http.Client
var Quays []Quay = []Quay{}
func main() {
BusClient = &http.Client{}
serveHttp()
}