some improvements

This commit is contained in:
ston1th 2022-07-10 17:33:03 +02:00
commit 804842e7c5
4 changed files with 47 additions and 23 deletions

View file

@ -112,10 +112,7 @@ func sessionsHandler(ctx *Context) {
func loginHandler(ctx *Context) {
log := ctx.log.WithName("login")
var (
data loginData
err error
)
var data loginData
data.LoginChallenge = ctx.Query("login_challenge")
ctx.Template("loginHandler")
ctx.Data = webData{
@ -125,7 +122,12 @@ func loginHandler(ctx *Context) {
if ctx.LoggedOn() {
rdr := sessions
if data.LoginChallenge != "" {
rdr, err = ctx.ApproveLogin(ctx.User(), data.LoginChallenge)
u, err := ctx.Srv.DB.GetUserWithoutSecrets(ctx.User())
if err != nil {
ctx.Error(err)
return
}
rdr, err = ctx.ApproveLogin(u, data.LoginChallenge)
if err != nil {
ctx.Error(err)
return
@ -174,7 +176,7 @@ func loginHandler(ctx *Context) {
ctx.Login(u, remember)
rdr := sessions
if data.LoginChallenge != "" {
rdr, err = ctx.ApproveLogin(data.User, data.LoginChallenge)
rdr, err = ctx.ApproveLogin(u, data.LoginChallenge)
if err != nil {
ctx.Error(err)
return
@ -224,7 +226,7 @@ func loginTotpHandler(ctx *Context) {
ctx.Login(u, ctx.Remember())
rdr := sessions
if data.LoginChallenge != "" {
rdr, err = ctx.ApproveLogin(user, data.LoginChallenge)
rdr, err = ctx.ApproveLogin(u, data.LoginChallenge)
if err != nil {
ctx.Error(err)
ctx.log.Error(err, "error approving login")
@ -243,6 +245,11 @@ func consentHandler(ctx *Context) {
BodyTitle: "Authorize",
}
var data consentData
u, err := ctx.Srv.DB.GetUserWithoutSecrets(ctx.User())
if err != nil {
ctx.Error(err)
return
}
switch ctx.Method() {
case "GET":
data.ConsentChallenge = ctx.Query("consent_challenge")
@ -254,7 +261,7 @@ func consentHandler(ctx *Context) {
return
}
if cr.GetSkip() {
rdr, err := ctx.ApproveConsent(data.ConsentChallenge)
rdr, err := ctx.ApproveConsent(u, data.ConsentChallenge)
if err != nil {
ctx.log.Error(err, "error approving consent")
ctx.Error("error approving consent")
@ -276,7 +283,7 @@ func consentHandler(ctx *Context) {
var err error
rdr := root
if consent == "approve" {
rdr, err = ctx.ApproveConsent(data.ConsentChallenge)
rdr, err = ctx.ApproveConsent(u, data.ConsentChallenge)
if err != nil {
ctx.log.Error(err, "error approving consent")
ctx.Error("error approving consent")
@ -356,7 +363,7 @@ func userEditHandler(ctx *Context) {
Title: "Edit User",
BodyTitle: "Edit User",
}
u, err := ctx.Srv.DB.GetUserWithoutPassword(ctx.Var("user"))
u, err := ctx.Srv.DB.GetUserWithoutSecrets(ctx.Var("user"))
if err != nil {
ctx.Error(err)
return
@ -523,7 +530,7 @@ func userDelHandler(ctx *Context) {
}
switch ctx.Method() {
case "GET":
user, err := ctx.Srv.DB.GetUserWithoutPassword(ctx.Var("user"))
user, err := ctx.Srv.DB.GetUserWithoutSecrets(ctx.Var("user"))
if err != nil {
ctx.Error(err)
return