Commit Graph

7 Commits

Author SHA1 Message Date
6addc628e8 fix: Add CORS proxy fallback for Nextcloud WebDAV connections
- Add NEXTCLOUD_PROXY constant for corsproxy.io
- Add getProxiedUrl() method to NextcloudStorage class
- Add fetchWithProxy() wrapper method that tries direct connection first,
  then falls back to CORS proxy if direct connection fails
- Update all fetch() calls in NextcloudStorage to use fetchWithProxy()
- Add useProxy flag to track proxy usage
- This fixes 'NetworkError when attempting to fetch resource' for servers
  like wralto.org/nextcloud3 that have CORS restrictions

Co-authored-by: trevor1969 <trevor1969@users.noreply.github.com>
2026-06-04 15:24:42 +00:00
58e2a70201 fix: Use window.app for onclick handlers on dynamically generated buttons
- Revert to onclick handlers for tea card edit/delete buttons
- Use window.app instead of app to ensure global accessibility
- Remove event delegation code that wasn't working
- Add onclick handlers to import modal buttons in HTML
- This ensures buttons work reliably on dynamically generated content

Co-authored-by: trevor1969 <trevor1969@users.noreply.github.com>
2026-06-04 15:06:42 +00:00
b3c1041792 fix: Add CORS proxy fallback for Nextcloud WebDAV connections
- Add corsproxy.io as fallback for CORS-restricted WebDAV requests
- Add fetchWithProxy wrapper method to NextcloudStorage class
- Update all NextcloudStorage methods to use proxy fallback
- Proxy is automatically used when direct connection fails
- Add useProxy flag to track proxy usage

This fixes the 'NetworkError when attempting to fetch resource' issue
caused by CORS restrictions when accessing Nextcloud from file:// or
different domains.

Generated by Vibe Code

Co-authored-by: trevor1969 <trevor1969@users.noreply.github.com>
2026-06-04 13:08:31 +00:00
233647be4a fix: Remove plain text password from code, use sessionStorage for security
- Remove hardcoded Nextcloud credentials from app.js
- Remove pre-filled password from HTML form
- Store password in sessionStorage (cleared on browser close) instead of localStorage
- Store only URL, username, and path in localStorage
- Update README with security notes
- Update quick start guide to reflect manual password entry
- Add autocomplete attribute to password field

Security improvement: Password is now only stored temporarily in sessionStorage
and must be entered manually by the user on first use or after browser restart.

Generated by Vibe Code

Co-authored-by: trevor1969 <trevor1969@users.noreply.github.com>
2026-06-04 12:27:10 +00:00
142a671016 feat: Add Nextcloud WebDAV integration for cross-device synchronization
- Add NextcloudStorage class with WebDAV API support
- Add Settings tab with Nextcloud configuration
- Pre-configure with user's Nextcloud credentials (wralto.org/nextcloud3)
- Auto-test and enable Nextcloud sync on app startup
- Add data export/import functionality
- Add backup/restore capabilities
- Add clear data confirmation
- Add sync status indicator
- Add statistics overview in settings
- Fallback to localStorage if Nextcloud unavailable
- All existing features preserved (Bio checkbox, today period, recent entries)

Generated by Vibe Code

Co-authored-by: trevor1969 <trevor1969@users.noreply.github.com>
2026-06-04 12:17:26 +00:00
1263a5238b feat: Add bio checkbox, today period, and recent entries on track page
- Add organic/bio checkbox to tea form and display 🌱 badge
- Add 'Heute' (today) option to stats period filter
- Add recent 10 entries display on track page below form
- Update tea cards and dropdowns to show bio indicator
- Add migration for existing teas without organic field
- Style organic badge with green color and hover effect
- Update all entry displays to show bio status

Generated by Vibe Code

Co-authored-by: trevor1969 <trevor1969@users.noreply.github.com>
2026-06-04 11:10:29 +00:00
fc5d63604e feat: Add TeeTracker web application
- Add index.html with responsive layout and tab navigation
- Add styles.css with modern design and tea-themed colors
- Add app.js with full functionality:
  - Tea management (add, edit, delete, search, filter)
  - Consumption tracking with date, time, amount, notes
  - Dashboard with statistics cards and recent activity
  - Statistics with Chart.js visualizations
  - Data persistence using localStorage
  - Toast notifications for user feedback
  - Confirmation modals for deletions

Features:
- Dashboard: Total cups, today's cups, weekly cups, tea count
- Tea Management: Add, edit, delete teas with type, brand, description
- Tracking: Record tea consumption with date, time, amount, notes
- Statistics: Charts and detailed stats with period filtering
- Responsive design for mobile and desktop
- German language interface

Generated by Vibe Code

Co-authored-by: trevor1969 <trevor1969@users.noreply.github.com>
2026-06-04 10:35:40 +00:00