CHANGE: user login style
This commit is contained in:
@@ -43,14 +43,19 @@ func parseTimestamp(r *http.Request , get_key string, fallback string) (time.Tim
|
||||
|
||||
// Returns bookings from DB with similar card uid -> checks for card uid in http query params
|
||||
func getBookings(w http.ResponseWriter, r *http.Request) {
|
||||
// if(!Session.Exists(r.Context(), "user")){
|
||||
// log.Println("No user in session storage!")
|
||||
// http.Error(w, "Not logged in!", http.StatusForbidden)
|
||||
// return
|
||||
// }
|
||||
var user models.User
|
||||
var err error
|
||||
if(helper.GetEnv("GO_ENV", "production") == "debug"){
|
||||
user, err = (*models.User).GetByPersonalNummer(nil, 123)
|
||||
}else{
|
||||
if(!Session.Exists(r.Context(), "user")){
|
||||
log.Println("No user in session storage!")
|
||||
http.Error(w, "Not logged in!", http.StatusForbidden)
|
||||
return
|
||||
}
|
||||
|
||||
// user, err := (*models.User).GetByPersonalNummer(nil, Session.GetInt(r.Context(), "user"))
|
||||
user, err := (*models.User).GetByPersonalNummer(nil, 123)
|
||||
user, err = (*models.User).GetByPersonalNummer(nil, Session.GetInt(r.Context(), "user"))
|
||||
}
|
||||
if(err != nil){
|
||||
log.Println("No user found with the given personal number!")
|
||||
http.Error(w, "No user found", http.StatusNotFound)
|
||||
|
||||
@@ -21,18 +21,18 @@ func CreateSessionManager(lifetime time.Duration) *scs.SessionManager {
|
||||
|
||||
func LoginHandler(w http.ResponseWriter, r *http.Request){
|
||||
switch r.Method{
|
||||
case http.MethodGet: showForm(w, r)
|
||||
case http.MethodGet: showForm(w, r, false)
|
||||
break
|
||||
case http.MethodPost: loginUser(w, r)
|
||||
break
|
||||
default:
|
||||
showForm(w, r)
|
||||
showForm(w, r, false)
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
func showForm(w http.ResponseWriter, r *http.Request){
|
||||
templates.LoginForm().Render(r.Context(), w)
|
||||
func showForm(w http.ResponseWriter, r *http.Request, failed bool){
|
||||
templates.LoginForm(failed).Render(r.Context(), w)
|
||||
}
|
||||
|
||||
func loginUser(w http.ResponseWriter, r *http.Request){
|
||||
@@ -66,7 +66,9 @@ func loginUser(w http.ResponseWriter, r *http.Request){
|
||||
log.Printf("New succesfull user login from %s %s!\n", user.Vorname, user.Name)
|
||||
Session.Put(r.Context(), "user", user.PersonalNummer)
|
||||
http.Redirect(w, r, "/time", http.StatusSeeOther) //with this browser always uses GET
|
||||
}else{
|
||||
showForm(w, r, true)
|
||||
}
|
||||
|
||||
showForm(w, r)
|
||||
showForm(w, r, false)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user