Commit Graph

125 Commits

Author SHA1 Message Date
muken ee68dc2897 feat: add WebP migration UI and API endpoint
- Add /api/admin/migrate-images endpoint to convert JPEG/PNG to WebP
- Add WebPMigration component in admin gallery showing stats
- Upload endpoint already converts new images to WebP
- Migration saves ~30-50% storage space per image
2026-07-01 21:47:16 -05:00
muken d0be23551a fix: use Union Jack (UK flag) instead of England flag for English language 2026-07-01 21:21:02 -05:00
muken 223b6e4670 fix: apply navy color to amenity SVG icons via stroke attribute 2026-07-01 21:19:04 -05:00
muken b71f66a177 fix: improve amenity icon styling - larger icons, better spacing 2026-07-01 21:18:02 -05:00
muken f7bb5ed752 feat: food ordering on coffee page
- Add 'Place Order' button to coffee page
- Order modal with menu item selection by category
- Order type options: pickup, dine in, room delivery (+10%)
- Room delivery requires login (disabled for guests)
- Calculate subtotal, service fee, and total
- Special instructions field
- Admin receives new orders in database
- Create orders and order_items tables
2026-07-01 00:12:34 -05:00
muken d9049d2294 feat: guest reservations and messages with proper table names
- Remove Reserve button from rooms page
- Calendar modal now supports direct reservation for guests
- Message modal works for guests (asks for name, contact method, contact)
- Create room_reservations table (separate from restaurant reservations)
- Create messages table for room inquiries
- LEFT JOIN users in queries to include guest reservations/messages
- Auto-fill form for logged-in users, show input fields for guests
2026-07-01 00:09:25 -05:00
muken ae6ea0ea46 feat: guest reservations and messages
- Remove Reserve button from rooms page
- Calendar modal now supports direct reservation for guests
- Message modal works for guests (asks for name, contact method, contact)
- Add guest_name, guest_contact_method, guest_contact to reservations and messages tables
- LEFT JOIN users in reservations GET to include guest reservations
- Auto-fill form for logged-in users, show input fields for guests
2026-07-01 00:05:39 -05:00
muken 72b507e434 fix: handle base64 images and fix amenity icon rendering
- Main images: check for base64 data URLs and render directly
- Thumbnails: same base64 handling for thumbnail strip
- Amenity icons: add null check and use global regex for SVG attrs
- All SVGs now properly sized at 14x14 with navy color
2026-06-30 23:58:06 -05:00
muken a8df420f36 fix: consolidate hearts to single like button with count
- Remove duplicate LikeButton component from room info section
- Remove separate like count badge from bottom-right
- Single unified like button (top-left) shows heart + count
- Cleaner UI: one heart, one tap, clear feedback
2026-06-30 23:41:37 -05:00
muken 4fb97e1f10 fix: enhance image loading animation with cream-colored shimmer
- Match shimmer colors to site's cream/warm palette (#f5f0e8, #e8e4dc)
- Add ease-in-out timing for smoother animation
- Proper z-index layering (shimmer below image)
- Longer fade-in transition (0.4s) for polished feel
2026-06-30 23:38:51 -05:00
muken c98824c8d7 fix: improve amenity icon display on room cards
- Icons now render with proper size (14px) inside pill badges
- Show amenity name next to icon for clarity
- Use regex for robust width/height replacement
- Compact layout with smaller gaps and font sizes
- Better text wrapping with whiteSpace: nowrap
2026-06-30 23:36:30 -05:00
muken 81c12ace7b feat: image optimization with multiple sizes and lazy loading
- Generate thumbnail (150px), medium (800px), full size on upload
- OptimizedImage component with Intersection Observer lazy loading
- Blur placeholder while loading
- Fetches appropriate size based on props (thumbnail/medium/full)
- Async image loading reduces initial page load time
- Added medium and thumbnail columns to images table
2026-06-30 23:34:23 -05:00
muken 73be5d2f22 fix: navbar refreshes auth state on navigation
Login button now correctly changes to Logout after login
2026-06-30 23:28:47 -05:00
muken 2353198924 feat: add room likes feature
- Users can like/unlike rooms
- Like count displayed on room cards
- LikeButton component with heart icon
- room_likes table with unique constraint
2026-06-30 21:57:28 -05:00
muken 7eae73eefb feat: room booking system with 4 action buttons
- Display amenity icons on room cards
- Reserve button: date picker, availability check, booking
- Message button: contact admins via platform
- Calendar button: view room availability
- Comment button: submit reviews for admin approval
- Admin comment queue for approve/reject/edit
- Reservations, availability, and messages tables
2026-06-30 21:54:46 -05:00
muken c829e27bf6 feat: mobile-responsive coffee menu with fluid typography 2026-06-30 20:57:25 -05:00
muken c42b1c3cc8 perf: add sharp for image optimization, lazy loading on menu
- Added sharp for server-side image resizing
- Lazy loading and async decoding on menu images
- Added thumbnail column to images table
- Images API now generates 400x300 thumbnails on upload
2026-06-30 20:54:43 -05:00
muken 2288c8563d feat: show food photos in coffee menu 2026-06-30 00:34:01 -05:00
muken 04d5f8c727 fix: 'Ver Menú' button now links to /coffee page 2026-06-30 00:23:36 -05:00
muken e299c07912 feat: show menu item photo thumbnail in admin list 2026-06-30 00:22:07 -05:00
muken 3bdaee333b fix: contact page now fetches brand info from config
- Created contact API endpoint to store messages
- Added contact_messages table
- Contact page now displays phone, email, WhatsApp, and address from site config
2026-06-30 00:20:00 -05:00
muken ef2bfa5f05 fix: properly track featured_photo state in menu editor 2026-06-30 00:13:30 -05:00
muken 271457dfa5 fix: replace England flag with UK flag for English language 2026-06-30 00:09:25 -05:00
muken dcc996c64a fix: update location to Ecuadorian highlands 2026-06-30 00:06:53 -05:00
muken 9424e260c2 fix: remove vineyard references - property has no vineyard 2026-06-30 00:05:01 -05:00
muken b46d490be2 feat: add photo support to food menu items
- Add photos and featured_photo columns to menu_items table
- Update MenuEditor with photo upload functionality
- Add click-to-set-featured-photo interaction
- Update menu API endpoints to handle photos
2026-06-30 00:04:04 -05:00
muken f9c8d48631 fix: use Ecuador timezone (GMT-5) for all date displays across the app 2026-06-29 23:53:58 -05:00
muken 7b72994d4a fix: use Ecuador timezone (GMT-5) for all dates 2026-06-29 23:52:08 -05:00
muken d6ca208fc6 feat: compact homepage with CTA buttons, new contact page, remove large text section 2026-06-29 23:48:56 -05:00
muken 3c5f911f8f feat: show both Celsius and Fahrenheit in weather widget 2026-06-29 23:37:07 -05:00
muken d67759485a fix: menu reorder - use items state after drag, add logging 2026-06-29 21:46:48 -05:00
muken d753a3713f fix: menu drag-and-drop reorder using sorted array and correct sort_order 2026-06-29 21:41:12 -05:00
muken 2dc949553e fix: slide image upload - clear image_url when image_id set, fix slides.image_url column type to TEXT, add bed amenities (Queen, 2 Queen) 2026-06-29 21:38:27 -05:00
muken 91fce014fd feat: room amenities selection in room editor 2026-06-29 20:49:51 -05:00
muken 262cd4745c feat: room amenities with editable SVG icons 2026-06-29 20:45:56 -05:00
muken 0c00bfe23a feat: calendar strip smooth pause and fade edges 2026-06-29 20:39:59 -05:00
muken 8cc1d4bb96 fix: calendar strip NaN days and 3-day weather forecast 2026-06-29 20:38:14 -05:00
muken e0a82b945f moved icons 2026-06-29 20:28:33 -05:00
muken a2a0335b7d moved icos 2026-06-29 20:21:28 -05:00
muken 657af63e73 move widget 2026-06-29 20:07:08 -05:00
muken 6b7720d2d8 feat: users can change their own password via user portal 2026-06-29 18:09:54 -05:00
muken 765465348e feat: allow admins to change user passwords 2026-06-29 18:07:24 -05:00
muken 11d8f4a456 feat: add shimmer loading animation to rooms page 2026-06-28 23:45:40 -05:00
muken 25428e1246 style: reduce weather widget height and move lower 2026-06-28 23:43:11 -05:00
muken 59698686d5 feat: add weather widget to user portal below navbar 2026-06-28 23:36:29 -05:00
muken 291df16f1f feat: user portal with trips, wifi, welcome message, chat; admin trips & messages mgmt 2026-06-28 23:33:39 -05:00
muken 658a3f00a7 fix: remove wifi_password from public site-assets API - only show in logged-in user portal 2026-06-28 23:28:02 -05:00
muken 9f418d6b19 fix: slide editor upload button now works with useRef instead of nested label 2026-06-28 23:26:21 -05:00
muken a892e9e132 feat: enable weather widget for Otavalo using Open-Meteo API (free, no key required) 2026-06-28 23:23:50 -05:00
muken a1d88af78b feat: add footer configuration (address, phone, email, social URLs, tagline) to admin panel 2026-06-28 23:21:41 -05:00