Commit Graph

257 Commits

Author SHA1 Message Date
fe46ab194e Implement user favorites feature for recipes
- Add UserFavorites MongoDB model with ObjectId references
- Create authenticated API endpoints for favorites management
- Add Heart icon and FavoriteButton components with toggle functionality
- Display favorite button below recipe tags for logged-in users
- Add Favoriten navigation link (visible only when authenticated)
- Create favorites page with grid layout and search functionality
- Store favorites by MongoDB ObjectId for data integrity

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-01 20:18:57 +02:00
1d78b5439e trust host for reverse proxy in prod, general cleanup
Some checks failed
CI / update (push) Failing after 1m27s
2025-08-31 22:42:52 +02:00
d2a0cf9a24 Fix blank white pages by adding Nord theme styling to auth endpoints
Some checks failed
CI / update (push) Has been cancelled
- Add Nord theme CSS variables to login and logout pages
- Use --nord1 background and --nord4 text colors to match site theme
- Eliminates jarring white flash during authentication flow
- Maintains professional appearance and brand consistency
- Endpoints now blend seamlessly with site's dark theme

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 22:06:37 +02:00
44bfb09245 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>
2025-08-31 22:04:27 +02:00
6ad4512bbc Remove ugly spinner pages from auth flow
- Replace loading spinners and styling with minimal HTML pages
- Auth flow now happens almost instantly without visible intermediary screens
- Reduced bundle size for login/logout endpoints (0.59kB and 0.58kB)
- Maintains seamless user experience while preserving Auth.js integration
- Users stay on current page context during auth transitions

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 22:02:19 +02:00
605a2e0509 Implement better auth flow with direct Authentik redirects
- Create custom /login and /logout endpoints that bypass Auth.js default pages
- Use auto-submitting forms to POST to Auth.js with proper form data
- Update UserHeader links to use new custom endpoints (/login, /logout)
- Remove old login/logout page server files that are no longer needed
- Login flow: /login → auto-submit form → /auth/signin/authentik → Authentik
- Logout flow: /logout → auto-submit form → /auth/signout → Authentik logout
- Provides seamless user experience with loading spinners during redirects
- Maintains all Auth.js security features and session management
- Eliminates intermediate Auth.js pages for cleaner auth flow

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 21:58:55 +02:00
9c1c9f40c2 Revert to clean Authentik provider configuration
- Use official Authentik provider instead of generic OIDC
- Issue was resolved by fixing callback URL in Authentik configuration
- Cleaner and more maintainable auth setup

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 21:46:19 +02:00
74dd2b1f4b Update @auth/sveltekit to latest stable version 1.10.0
- Upgraded @auth/sveltekit from 0.14.0 to 1.10.0
- Updated session API from event.locals.getSession() to event.locals.auth()
- Fixed TypeScript definitions for new auth API in app.d.ts
- Updated layout server load functions to use LayoutServerLoad type
- Fixed session callbacks with proper token type casting
- Switched to generic OIDC provider config to resolve issuer validation issues
- All auth functionality now working with latest Auth.js version

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 21:45:14 +02:00
36bdb0d65c Card.svelte: fix top-right icon offset 2025-08-31 21:09:34 +02:00
22ddee4942 Fix Card.svelte icon positioning and styling
- Restored icon to top-right position with absolute positioning
- Added proper circular background with nord0 color
- Set correct dimensions (50px × 50px) and border-radius for circular shape
- Added shadow and hover effects to match original design
- Fixed z-index to ensure icon appears above other elements
- Maintained shake animation on card hover for visual feedback

The icon now appears correctly in the top-right corner with a round
background instead of being positioned at bottom center with transparent
background.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 21:07:10 +02:00
c43bf2d441 Add missing Payment model and database connection utilities
- Created Payment model with mongoose schema for cospend functionality
- Added database connection utilities with proper connection caching
- Fixed build errors related to missing imports
- Build now succeeds and dev server starts correctly

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 21:03:15 +02:00
c8d879d4f9 Upgrade SvelteKit 4 to SvelteKit 5 with latest dependencies
Major changes:
- Upgraded Svelte from v4 to v5.38.6 (latest stable)
- Upgraded SvelteKit from v2.0.0 to v2.37.0 (latest)
- Upgraded Vite from v5 to v7.1.3 for better performance
- Updated all related packages to latest compatible versions
- Added pnpm as package manager with packageManager field
- Fixed Card.svelte nested anchor tags issue by converting inner links to buttons
- Updated component styling to maintain visual consistency
- Removed incompatible svelte-preprocess-import-assets package

Dependencies updated:
- @sveltejs/kit: ^2.0.0 → ^2.37.0
- @sveltejs/vite-plugin-svelte: ^3.0.0 → ^6.1.3
- svelte: ^4.0.0 → ^5.38.6
- vite: ^5.0.0 → ^7.1.3
- @sveltejs/adapter-auto: ^3.0.0 → ^6.1.0
- @sveltejs/adapter-node: ^2.0.0 → ^5.0.0
- svelte-check: ^3.4.6 → ^4.0.0
- mongoose: ^7.4.0 → ^8.0.0
- sharp: ^0.32.3 → ^0.33.0

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-31 21:01:19 +02:00
d6dce464f7 switch from "Unterwegs" to "Snack" 2025-03-31 17:57:40 +02:00
ecf09b80af fix copilot autocomplete svg messup 2025-02-02 13:09:15 +01:00
81357020f6 fix docs autolink 2025-02-02 13:07:42 +01:00
5b4eb2f282 fix docs autolink 2025-02-02 12:58:34 +01:00
7719b39679 fix for svelte 4 2025-02-02 12:55:33 +01:00
e804bbb93e remove unused health.bocken.org and papers.bocken.org 2025-02-02 12:44:21 +01:00
6ec68d2028 added tips-and-tricks route 2024-10-28 17:00:43 +01:00
f69310dfec render HTML in Recipe Card description 2024-10-22 17:29:29 +02:00
5747a1548e fix typo 2024-10-22 17:28:44 +02:00
ba52273816 fix trim() 2024-08-27 18:13:52 +02:00
60c69f4c7b add https://audio.bocken.org 2024-08-27 18:10:31 +02:00
ef12c59c51 trim spaces from short_name, otherwise recipes become unnavigatable if ending on spaces 2024-08-18 21:20:03 +02:00
02304f1d89 jellyfin: markers correct color 2024-08-17 13:16:51 +02:00
8147d26025 add forgotten link title for health.bocken.org 2024-08-11 18:38:46 +02:00
d6196404cf add link to health.bocken.org 2024-08-11 18:35:38 +02:00
d2fa3fef44 bump packages 2024-07-30 14:50:52 +02:00
255a8a9d7d no crawling of /static/ 2024-07-30 14:08:41 +02:00
cbd4c0d286 disallow GPTBot/Openai from crawling website 2024-07-30 14:03:32 +02:00
a101179022 worker: change to new service name 2024-06-22 09:27:28 +02:00
c40b570223 jellyinf: correct theming for progress ticks 2024-06-22 09:23:57 +02:00
0e47a2804d fix for not logged in 2024-03-27 22:09:15 +01:00
65ba541e17 conditional redirect for Dokumente 2024-03-27 22:07:49 +01:00
398ec68a9b add action to build on push 2024-03-22 14:54:58 +01:00
ab49f20d47 add papers 2024-03-22 13:20:49 +01:00
f6bd25fb13 update jellyfin css to current state 2024-03-19 10:49:37 +01:00
82aadf478b add paperless to links grid 2024-03-18 17:40:47 +01:00
5ef504f943 bump @auth/sveltekit to 0.14.0 2024-03-09 13:52:11 +01:00
af2763e64f Render html also in edit panels 2024-03-02 12:38:03 +01:00
d355f2fc09 emoji font for icon 2024-02-26 12:00:38 +01:00
e725a0430a eager image loading for top recipes on page 2024-02-25 12:54:30 +01:00
0f0321a42d specify emoji font for icons 2024-02-25 11:15:06 +01:00
913e76ab9c update multiplier on navgation 2024-02-21 13:47:30 +01:00
0275ddb596 apply ingredient amount to multiplier 2024-02-21 13:26:27 +01:00
03a25458e3 attempt to fix rand_array() 2024-02-21 10:29:17 +01:00
afdfd4f651 invalidate image cache on /edit properly 2024-02-21 09:38:55 +01:00
683967932b "fix" symbol in header on mobile 2024-02-20 20:27:33 +01:00
c86844afac finally buildable without jwt 2024-02-19 23:38:08 +01:00
c23d742398 remove user admin routes 2024-02-19 23:24:28 +01:00