diff options
Diffstat (limited to 'handler.go')
| -rw-r--r-- | handler.go | 45 |
1 files changed, 45 insertions, 0 deletions
@@ -45,6 +45,44 @@ func RegisterHandler(w http.ResponseWriter, r *http.Request) { } } +func PrivacyHandler(w http.ResponseWriter, r *http.Request) { + session, err := store.Get(r, "_SID") + if err != nil { + log.Println("Info: ", err) + } + session.Values["page"] = "/privacy" + + flash := Flash{} + flash.Error = session.Flashes("error") + flash.Success = session.Flashes("success") + session.Save(r, w) + + err = ExecTemplate("privacy", w, r, flash) + if err != nil { + http.Error(w, err.Error(), http.StatusInternalServerError) + return + } +} + +func TosHandler(w http.ResponseWriter, r *http.Request) { + session, err := store.Get(r, "_SID") + if err != nil { + log.Println("Info: ", err) + } + session.Values["page"] = "/tos" + + flash := Flash{} + flash.Error = session.Flashes("error") + flash.Success = session.Flashes("success") + session.Save(r, w) + + err = ExecTemplate("tos", w, r, flash) + if err != nil { + http.Error(w, err.Error(), http.StatusInternalServerError) + return + } +} + func CreateNewEntryHandler(w http.ResponseWriter, r *http.Request) { err := r.ParseForm() if err != nil { @@ -66,6 +104,13 @@ func CreateNewEntryHandler(w http.ResponseWriter, r *http.Request) { log.Println("Info: ", err) } + if !req.Legal { + session.AddFlash("Please accept the Terms of Service and the Privacy Policy.", "error") + session.Save(r, w) + http.Redirect(w, r, "/register", 302) + return + } + if !CompareStrings(req.Email, req.ConfirmEmail) { session.AddFlash("E-Mail don't match.", "error") session.Save(r, w) |
