fathom/pkg/api/visitors.go

28 lines
833 B
Go
Raw Normal View History

package api
import (
2016-12-11 14:50:01 +01:00
"net/http"
2016-12-24 15:12:01 +02:00
"github.com/usefathom/fathom/pkg/count"
)
// URL: /api/visitors/count
var GetVisitorsCountHandler = HandlerFunc(func(w http.ResponseWriter, r *http.Request) error {
2016-12-11 14:50:01 +01:00
before, after := getRequestedPeriods(r)
result := count.Visitors(before, after)
return respond(w, envelope{Data: result})
})
// URL: /api/visitors/count/realtime
var GetVisitorsRealtimeCountHandler = HandlerFunc(func(w http.ResponseWriter, r *http.Request) error {
2016-12-24 15:12:01 +02:00
result := count.RealtimeVisitors()
return respond(w, envelope{Data: result})
})
// URL: /api/visitors/count/group/:period
var GetVisitorsPeriodCountHandler = HandlerFunc(func(w http.ResponseWriter, r *http.Request) error {
2016-12-11 14:50:01 +01:00
before, after := getRequestedPeriods(r)
results := count.VisitorsPerDay(before, after)
return respond(w, envelope{Data: results})
})