Fix login page
This commit is contained in:
@@ -36,7 +36,7 @@ func RunKeycloakAuth(e *echo.Echo, environment KeycloakEnv, cookieStore *session
|
|||||||
// OpenID Connect is based on OpenID Connect Auto Discovery URL (https://openid.net/specs/openid-connect-discovery-1_0-17.html)
|
// OpenID Connect is based on OpenID Connect Auto Discovery URL (https://openid.net/specs/openid-connect-discovery-1_0-17.html)
|
||||||
// because the OpenID Connect provider initialize itself in the New(), it can return an error which should be handled or ignored
|
// because the OpenID Connect provider initialize itself in the New(), it can return an error which should be handled or ignored
|
||||||
// ignore the error for now
|
// ignore the error for now
|
||||||
openid, err := openidConnect.New(environment.Keycloak.CLientId, environment.Keycloak.ClientSecret, environment.BaseUrl+"/auth/openid-connect/callback", environment.Keycloak.DiscoveryUrl)
|
openid, err := openidConnect.New(environment.Keycloak.ClientId, environment.Keycloak.ClientSecret, environment.BaseUrl+"/auth/openid-connect/callback", environment.Keycloak.DiscoveryUrl)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
ersteller_lib.Error("Error while initializing OpenID Connect provider: ", err)
|
ersteller_lib.Error("Error while initializing OpenID Connect provider: ", err)
|
||||||
panic(err)
|
panic(err)
|
||||||
|
|||||||
@@ -1,34 +1,29 @@
|
|||||||
package authentication
|
package authentication
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"ersteller-lib"
|
||||||
"github.com/labstack/echo/v4"
|
"github.com/labstack/echo/v4"
|
||||||
"maragu.dev/gomponents"
|
"maragu.dev/gomponents"
|
||||||
. "maragu.dev/gomponents/html"
|
. "maragu.dev/gomponents/html"
|
||||||
"salezenify/google"
|
|
||||||
"salezenify/html_components/components"
|
|
||||||
"salezenify/html_components/route"
|
|
||||||
"salezenify/layout"
|
|
||||||
"salezenify/user"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const LoginPath = "/login"
|
const LoginPath = "/login"
|
||||||
|
|
||||||
type LoginPage struct {
|
type LoginPage struct {
|
||||||
createPage layout.CreatePageFunc
|
createPage ersteller_lib.CreatePageFunc
|
||||||
LoginRoute route.GetRoute
|
LoginRoute ersteller_lib.GetRoute
|
||||||
|
googleLoginUrl string
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewLoginPage(e *echo.Echo, createPage layout.CreatePageFunc) *LoginPage {
|
func NewLoginPage(e *echo.Echo, createPage ersteller_lib.CreatePageFunc, googleLoginUrl string) *LoginPage {
|
||||||
page := &LoginPage{createPage: createPage}
|
page := &LoginPage{createPage: createPage, googleLoginUrl: googleLoginUrl}
|
||||||
page.LoginRoute = route.NewGetRoute(LoginPath, page.Render).Add(e)
|
page.LoginRoute = ersteller_lib.NewGetRoute(LoginPath, page.Render).Add(e)
|
||||||
return page
|
return page
|
||||||
}
|
}
|
||||||
|
|
||||||
func (l *LoginPage) Render(c echo.Context) error {
|
func (l *LoginPage) Render(c echo.Context) error {
|
||||||
return l.createPage(c, layout.PageWebsiteMetaData{
|
return l.createPage(c, ersteller_lib.PageWebsiteMetaData{
|
||||||
WebsiteMetaData: components.WebsiteMetaData{
|
|
||||||
Title: "Login",
|
Title: "Login",
|
||||||
},
|
|
||||||
HideNavigation: true,
|
HideNavigation: true,
|
||||||
}, l.getLoginPage())
|
}, l.getLoginPage())
|
||||||
}
|
}
|
||||||
@@ -37,9 +32,8 @@ func (l *LoginPage) getLoginPage() gomponents.Group {
|
|||||||
return []gomponents.Node{
|
return []gomponents.Node{
|
||||||
P(
|
P(
|
||||||
A(
|
A(
|
||||||
Href(user.OpenIdConnectPath),
|
Href(OpenIdConnectPath),
|
||||||
Button(
|
Button(
|
||||||
Class(components.ButtonClass()),
|
|
||||||
Type("button"),
|
Type("button"),
|
||||||
gomponents.Text("Login"),
|
gomponents.Text("Login"),
|
||||||
),
|
),
|
||||||
@@ -47,9 +41,8 @@ func (l *LoginPage) getLoginPage() gomponents.Group {
|
|||||||
),
|
),
|
||||||
P(
|
P(
|
||||||
A(
|
A(
|
||||||
Href(google.GoogleLogin),
|
Href(l.googleLoginUrl),
|
||||||
Button(
|
Button(
|
||||||
Class(components.ButtonClass()),
|
|
||||||
Type("button"),
|
Type("button"),
|
||||||
gomponents.Text("Google Login"),
|
gomponents.Text("Google Login"),
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user