+
+
Register
+
+
Registrations are manually approved to prevent spam and keep this little cafe a cool place to hang out.
+
You should receive a confirmation within a few hours at the email you have provided. Make sure to enter a valid address!
+
-
-
Password
-
+
+ {{ if .form.Error }}
+
{{ .form.Error }}
+ {{ end }}
+
-
- Confirm password
-
-
-
-
-
+
{{ end }}
\ No newline at end of file
diff --git a/web/handler/login_check.go b/web/handler/login_check.go
index 81f9167..9019ccd 100644
--- a/web/handler/login_check.go
+++ b/web/handler/login_check.go
@@ -13,7 +13,7 @@ func (h *Handler) checkLogin(w http.ResponseWriter, r *http.Request) {
Password: f.Password,
})
if err != nil {
- f.Error = "incorrect password"
+ f.Error = err.Error()
h.renderLayout(w, "login", map[string]interface{}{
"form": f,
}, "")
diff --git a/web/handler/register.go b/web/handler/register.go
index 09d718a..d5ed583 100644
--- a/web/handler/register.go
+++ b/web/handler/register.go
@@ -93,8 +93,13 @@ func (h *Handler) register(w http.ResponseWriter, r *http.Request) {
return
}
user := model.User{
- Name: f.Username,
- Password: f.Password,
+ Name: f.Username,
+ Password: f.Password,
+ SignupEmail: f.Email,
+ SignupMsg: f.Answer,
+ }
+ if f.ShowEmail {
+ user.Email = f.Email
}
if err := user.Validate(); err != nil {
showError(err)
@@ -108,10 +113,9 @@ func (h *Handler) register(w http.ResponseWriter, r *http.Request) {
showError(err)
return
}
- if err := h.sess.Save(r, w, r.FormValue("name")); err != nil {
- serverError(w, err)
- return
- }
- http.Redirect(w, r, "/", http.StatusFound)
+ h.renderLayout(w, "register-success", map[string]interface{}{
+ "name": user.Name,
+ "email": user.SignupEmail,
+ }, "")
}
}
diff --git a/web/handler/user_show.go b/web/handler/user_show.go
index a0a465d..f87fc94 100644
--- a/web/handler/user_show.go
+++ b/web/handler/user_show.go
@@ -82,7 +82,6 @@ func (h *Handler) showUserView(w http.ResponseWriter, r *http.Request) {
"about": template.HTML(user.About),
"picture": user.Picture,
"email": user.Email,
- "style": template.CSS(user.Style),
"showMore": showMore,
"page": page,
"next_page": page + 1,
diff --git a/web/session/session.go b/web/session/session.go
index 579e661..dbf92d0 100644
--- a/web/session/session.go
+++ b/web/session/session.go
@@ -52,8 +52,12 @@ func (s *Session) Get(r *http.Request) (string, error) {
if name == "" || !ok {
return "", errors.New("error extracting session")
}
- if ok := s.Storage.UserExists(name); !ok {
- return "", errors.New("user doesn't exit")
+ u, err := s.Storage.UserByName(name)
+ if err != nil {
+ return "", errors.New("error getting user")
+ }
+ if !u.Active {
+ return "", errors.New("user not active")
}
return name, nil
}