From c516ce206080960cf8d621eeff774dc38ec043e8 Mon Sep 17 00:00:00 2001 From: Paul Stern Date: Fri, 21 Mar 2025 09:29:33 +0300 Subject: [PATCH 1/5] hotfix login --- src/user_routes.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/user_routes.v b/src/user_routes.v index 3bffdd6b..4c5e825d 100644 --- a/src/user_routes.v +++ b/src/user_routes.v @@ -11,7 +11,7 @@ pub fn (mut app App) login(mut ctx Context) veb.Result { csrf := rand.string(30) ctx.set_cookie(name: 'csrf', value: csrf) - if app.is_logged_in(mut ctx) { + if !app.is_logged_in(mut ctx) { return ctx.not_found() } From 6818b7fb25d6ad333e8ce95241503975c658a043 Mon Sep 17 00:00:00 2001 From: Paul Stern Date: Fri, 21 Mar 2025 11:51:07 +0300 Subject: [PATCH 2/5] main: Add veb.Middleware to App;make use of app.before_request --- src/gitly.v | 1 + src/main.v | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/gitly.v b/src/gitly.v index ece88086..214d97c3 100644 --- a/src/gitly.v +++ b/src/gitly.v @@ -23,6 +23,7 @@ const namechange_period = time.hour * 24 @[heap] pub struct App { veb.StaticHandler + veb.Middleware[Context] started_at i64 pub mut: db sqlite.DB diff --git a/src/main.v b/src/main.v index f38b405c..5af48d6e 100644 --- a/src/main.v +++ b/src/main.v @@ -12,6 +12,8 @@ fn main() { return } mut app := new_app()! + + app.use(handler: app.before_request) // vweb.run_at(new_app()!, http_port) veb.run_at[App, Context](mut app, port: http_port, family: .ip, timeout_in_seconds: 2) or { From bd260777c59e01a7c9495d4e20ef73000c3d9220 Mon Sep 17 00:00:00 2001 From: Paul Stern Date: Fri, 21 Mar 2025 14:11:39 +0300 Subject: [PATCH 3/5] login: get logic back --- src/user_routes.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/user_routes.v b/src/user_routes.v index 4c5e825d..3bffdd6b 100644 --- a/src/user_routes.v +++ b/src/user_routes.v @@ -11,7 +11,7 @@ pub fn (mut app App) login(mut ctx Context) veb.Result { csrf := rand.string(30) ctx.set_cookie(name: 'csrf', value: csrf) - if !app.is_logged_in(mut ctx) { + if app.is_logged_in(mut ctx) { return ctx.not_found() } From 8a0bbf4b941114a7f9fde0bca9ac614f417407bc Mon Sep 17 00:00:00 2001 From: Paul Stern Date: Fri, 21 Mar 2025 16:46:59 +0300 Subject: [PATCH 4/5] app: hotfix request timeout, add url var and dump it (don't ask me) --- src/gitly.v | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gitly.v b/src/gitly.v index 214d97c3..02391037 100644 --- a/src/gitly.v +++ b/src/gitly.v @@ -132,6 +132,7 @@ pub fn (mut app App) init_server() { } pub fn (mut app App) before_request(mut ctx Context) { + url := ctx.req.url ctx.logged_in = app.is_logged_in(mut ctx) app.load_settings() @@ -142,6 +143,7 @@ pub fn (mut app App) before_request(mut ctx Context) { User{} } } + dump(url) } @['/'] From 1d4f83197b0a3d3372f2ba594461159660e701e5 Mon Sep 17 00:00:00 2001 From: Paul Stern Date: Fri, 21 Mar 2025 17:25:41 +0300 Subject: [PATCH 5/5] fix logic if logged in --- src/user_routes.v | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/user_routes.v b/src/user_routes.v index 3bffdd6b..61179a50 100644 --- a/src/user_routes.v +++ b/src/user_routes.v @@ -12,7 +12,7 @@ pub fn (mut app App) login(mut ctx Context) veb.Result { ctx.set_cookie(name: 'csrf', value: csrf) if app.is_logged_in(mut ctx) { - return ctx.not_found() + return ctx.redirect("/" + ctx.user.username) } return $veb.html()