Commit Graph

117 Commits

Author SHA1 Message Date
aeb32da6c2 feat: Convert email date format from American to European (dd.mm.yyyy)
- Add formatDateGerman() helper function to convert yyyy-mm-dd to dd.mm.yyyy
- Update all email templates (HTML and text versions) to use European date format
- Apply formatting to booking pending, confirmed, and cancelled emails
- Ensure consistent date display across all customer communications
- Improve user experience with familiar German date format

Changes:
- email-templates.ts: Add date formatting to all HTML templates
- bookings.ts: Add date formatting to all text email versions
- Both files: Consistent European date format (dd.mm.yyyy) throughout
2025-09-30 11:42:41 +02:00
a1935aae02 feat: Add AGB PDF attachment to booking confirmation emails
- Extend email system to support file attachments
- Add sendEmailWithAGB() function that automatically attaches AGB.pdf
- Implement AGB PDF caching for better performance
- Update booking confirmation email template with AGB notice
- Add visual highlight box in HTML email with AGB information
- Update email subject to indicate AGB attachment
- Include AGB reference in both HTML and text versions
- Ensure legal compliance by automatically sending terms with confirmations

Changes:
- email.ts: Add attachment support and AGB PDF integration
- email-templates.ts: Add AGB notice to confirmation emails
- bookings.ts: Use sendEmailWithAGB for confirmed bookings
- German localization for admin treatments component
2025-09-30 11:18:23 +02:00
bb04e5a118 feat: Add AGB for nail studio
- Add comprehensive AGB in Markdown format (AGB.md)
- Include PDF version of AGB (AGB.pdf) for download/printing
- Cover all essential business terms including:
  * Booking and cancellation policies (48h notice, fees)
  * Payment terms (10€ booking fee, multiple payment options)
  * Quality guarantee (7-day warranty with proper care)
  * Health and safety guidelines (allergies, illness policy)
  * Appointment rules (punctuality, no companions)
  * Age restriction (16+ years)
  * Data protection and privacy
- Professional formatting with emojis and clear structure
- Include social media reference (@stargirlnailskiel)
2025-09-30 11:13:53 +02:00
af0502baa6 fix: Load admin credentials from .env file
- Add dotenv dependency and load .env configuration in auth.ts
- Admin credentials now read from environment variables:
  - ADMIN_USERNAME (default: owner)
  - ADMIN_PASSWORD_HASH (default: admin123 hash)
  - ADMIN_EMAIL (default: owner@stargirlnails.de)
- Remove hardcoded admin credentials
- Add fallback values for backward compatibility
- Clear existing user storage to force recreation with new credentials
2025-09-30 11:03:28 +02:00
072c7985c7 feat: Add admin calendar and improve availability management
- Add admin calendar component with booking overview and status management
- Implement treatment-specific availability slots with automatic duration
- Enhance availability management with better UI and error handling
- Move admin credentials to .env configuration
- Add .env.example with all required environment variables
- Update README.md with comprehensive setup guide including PowerShell password hash generation
- Improve slot deletion with proper error handling and user feedback
- Add toast notifications for better UX
2025-09-30 10:58:33 +02:00
2e5bfdd879 Fix Tailscale Funnel host blocking issue
- Add specific allowedHosts configuration for Tailscale domains
- Configure both Vite server and Hono dev server to accept .ts.net hosts
- Add global middleware to Hono app for host acceptance
- Allow master11.warbler-bearded.ts.net and all .ts.net subdomains
2025-09-29 20:03:23 +02:00
ab96114295 Add Stargil Nails logo and favicon
- Replace emoji icons with Stargil Nails logo in header and loading spinner
- Add favicon.png to public directory
- Copy logo to public/assets for browser access
- Update vite.config.ts to serve public directory
- Add favicon link to HTML head section
2025-09-29 19:50:10 +02:00
b33036300f Initial commit: Kalender, Buchungen mit Slot-Reservierung, Resend-E-Mails, Admin-UI, Startscript 2025-09-29 19:10:42 +02:00
Quests Agent
a3d032af9f unverändert:
"Blocked request. This host ("master11.warbler-bearded.ts.net") is not allowed.
To allow this host, add "master11.warbler-bearded.ts.net" to `server.allowedHosts` in vite.config.js."
2025-09-29 18:27:22 +02:00
Quests Agent
0f4b8feb50 Fehler:
Blocked request. This host ("master11.warbler-bearded.ts.net") is not allowed.
To allow this host, add "master11.warbler-bearded.ts.net" to `server.allowedHosts` in vite.config.js.
2025-09-29 18:23:41 +02:00
Quests Agent
80eaa7d9cd pnpm dev soll auf 127.0.0.1 statt localhost laufen. 2025-09-29 18:21:10 +02:00
Quests Agent
82a4087d59 fehler:
❯ pnpm dev

> quests-template-basic@0.0.0 dev C:\Users\mbusc\AppData\Roaming\Quests\workspace\projects\silver-bright-fork-23
> vite

  VITE v7.1.3  ready in 780 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose
  ➜  press h + enter to show help
18:15:12 [vite] (ssr) Error when evaluating SSR module ./src/server/index.ts: OPENAI_BASE_URL is not set
      at eval (C:/Users/mbusc/AppData/Roaming/Quests/workspace/projects/silver-bright-fork-23/src/server/rpc/demo/ai.ts:13:9)
      at async ESModulesEvaluator.runInlinedModule (file:///C:/Users/mbusc/AppData/Roaming/Quests/workspace/projects/silver-bright-fork-23/node_modules/.pnpm/vite@7.1.3_@types+node@22.1_7fc9e9804073d39b787b9384e0ee4b8c/node_modules/vite/dist/node/module-runner.js:910:3)
2025-09-29 18:18:17 +02:00
Quests Agent
afb24220c7 Nutze informelles Deutsch, also "Du" statt "Sie". 2025-09-29 18:13:22 +02:00
Quests Agent
11d17213c1 Füge eine Benutzerverwaltung hinzu, damit "Manage Treatments" und "Manage Bookings" nur für den Shop Inhaber zugänglich ist. 2025-09-29 18:11:20 +02:00
Quests Agent
e999180732 Ersetze "Bella Nails Studio" gegen "Stargirlnails Kiel" 2025-09-29 18:06:18 +02:00
Quests Agent
63a402b3ad I´d like to create a booking platform for a beauty shop (nail design). the customer shall be able to book a treatment. an admin backend is needed to manage articles and their durations. 2025-09-29 18:01:00 +02:00
Quests Agent
a4ecf845bf Project created from basic template 2025-09-29 17:56:30 +02:00