x/auth/middleware.go

20 lines
420 B
Go
Raw Normal View History

package auth
import "net/http"
func IsAuthenticated(w http.ResponseWriter, r *http.Request, next http.HandlerFunc) {
session, err := Store.Get(r, "auth-session")
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
}
if _, ok := session.Values["profile"]; !ok {
//TODO allow customization of redirect
http.Redirect(w, r, "/", http.StatusSeeOther)
} else {
next(w, r)
}
}