Skip to content
Snippets Groups Projects
Commit 113d9abb authored by Yege1893's avatar Yege1893
Browse files

register and login

parent a88fde3b
No related branches found
No related tags found
1 merge request!4Master
......@@ -3,6 +3,7 @@ package handler
import (
"context"
"fmt"
"io"
"net/http"
log "github.com/sirupsen/logrus"
......@@ -32,10 +33,17 @@ func HandleCallbackRegister(w http.ResponseWriter, r *http.Request) {
http.Error(w, "Fehler beim Authentifizieren", http.StatusInternalServerError)
return
}
service.Register(token.AccessToken)
err = service.Register(token.AccessToken)
if err != nil {
fmt.Println(err)
io.WriteString(w, `user besteht bereits`)
} else {
sendJson(w, "user erfolgreich angelegt")
}
}
func HandleCallback(w http.ResponseWriter, r *http.Request) {
func HandleCallbackLogin(w http.ResponseWriter, r *http.Request) {
oauthConfig := config.GetOAuthConfigLogin()
code := r.URL.Query().Get("code")
token, err := oauthConfig.Exchange(context.Background(), code)
......@@ -44,6 +52,18 @@ func HandleCallback(w http.ResponseWriter, r *http.Request) {
http.Error(w, "Fehler beim Authentifizieren", http.StatusInternalServerError)
return
}
// den teil in eine routine packen
user, err := service.GetUserInfo(token.AccessToken)
if err != nil {
sendJson(w, err)
return
}
_, errUser := service.GetUserByEmail(user.Email)
if errUser != nil {
sendJson(w, err)
sendJson(w, "user nicht registriert")
return
}
sendJson(w, token.AccessToken)
}
......@@ -80,6 +100,6 @@ func checkAdmin(token string) error {
if user.IsAdmin {
return nil
} else {
return fmt.Errorf("User has not Adminrights")
return fmt.Errorf("User has not adminrights")
}
}
......@@ -4,7 +4,6 @@ import (
"fmt"
"net/http"
"os"
"strconv"
"github.com/gorilla/mux"
"github.com/joho/godotenv"
......@@ -45,17 +44,17 @@ func main() {
log.Fatal("Error establishing connection to NATS:", err)
}
fmt.Println("Connected to NATS at:", natsServer.Nc.ConnectedUrl())
var nr = strconv.Itoa(1)
e := model.EmialContent{Name: "aa", AwayMatch: true, Location: "ss", Date: "aaa", Emailadress: "yannick.ege@web.de", OrderID: nr}
natsServer.ConfirmOrder(&e)
//fmt.Println("Connected to NATS at:", natsServer.Nc.ConnectedUrl())
//var nr = strconv.Itoa(1)
//e := model.EmialContent{Name: "aa", AwayMatch: true, Location: "ss", Date: "aaa", Emailadress: "yannick.ege@web.de", OrderID: nr}
//natsServer.ConfirmOrder(&e)
log.Println("Starting Highlander Ticketing server")
router := mux.NewRouter()
router.HandleFunc("/register", handler.HandleRegister).Methods("GET")
router.HandleFunc("/callback/register", handler.HandleCallback).Methods("GET")
router.HandleFunc("/callback/register", handler.HandleCallbackRegister).Methods("GET")
router.HandleFunc("/login", handler.HandleLogin).Methods("GET")
router.HandleFunc("/callback/login", handler.HandleCallback).Methods("GET")
router.HandleFunc("/callback/login", handler.HandleCallbackLogin).Methods("GET")
router.HandleFunc("/health", handler.Health).Methods("GET")
router.HandleFunc("/match", handler.CreateMatch).Methods("POST")
router.HandleFunc("/matches", handler.GetAllMatches).Methods("GET")
......
package service
import (
"fmt"
"gitlab.reutlingen-university.de/ege/highlander-ticketing-go-ss2023/src/highlanderticketing/model"
)
func Register(accessToken string) error {
user, err := GetUserInfo(accessToken)
if err != nil {
......@@ -9,5 +15,8 @@ func Register(accessToken string) error {
if err1 != nil {
return err1
}
var userArray []model.User
userArray, _ = GetAllUsers()
fmt.Println(userArray)
return nil
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment