Implement proper page redirects for protected routes
- Update hooks.server.ts to preserve original URL when redirecting to login - Use callbackUrl parameter to maintain user's intended destination - Preserve both pathname and search parameters in redirect flow - Leverage OIDC standard callback URL support built into Auth.js - Users now land exactly where they intended after authentication - Works for /rezepte/add, /rezepte/edit/[name], and any future protected routes 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
		@@ -12,7 +12,9 @@ async function authorization({ event, resolve }) {
 | 
				
			|||||||
	if (event.url.pathname.startsWith('/rezepte/edit') || event.url.pathname.startsWith('/rezepte/add')) {
 | 
						if (event.url.pathname.startsWith('/rezepte/edit') || event.url.pathname.startsWith('/rezepte/add')) {
 | 
				
			||||||
   const session = await event.locals.auth();
 | 
					   const session = await event.locals.auth();
 | 
				
			||||||
		if (!session) {
 | 
							if (!session) {
 | 
				
			||||||
			redirect(303, '/auth/signin');
 | 
								// Preserve the original URL the user was trying to access
 | 
				
			||||||
 | 
								const callbackUrl = encodeURIComponent(event.url.pathname + event.url.search);
 | 
				
			||||||
 | 
								redirect(303, `/login?callbackUrl=${callbackUrl}`);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		else if (! session.user.groups.includes('rezepte_users')) {
 | 
							else if (! session.user.groups.includes('rezepte_users')) {
 | 
				
			||||||
			// strip last dir from url
 | 
								// strip last dir from url
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user