// NewHandler creates a new Handler instance. func NewHandler(db *db.DB) (*Handler, error) { secret, err := db.Secret() if err != nil { return nil, err } // Setup the handler. h := &Handler{ Router: mux.NewRouter(), db: db, store: sessions.NewCookieStore(secret), } h.Handle("/track.png", http.HandlerFunc(h.track)).Methods("GET") NewRootHandler(h) NewAccountHandler(h) NewFunnelHandler(h) return h, nil }