Files
SkinsPins/app/templates/partials/crop_modal.html
T
Rolf 3a1da1482c Add full SkinsPins application
- FastAPI + SQLite + Alpine.js + HTMX PWA for Bingo Bango Bongo golf scoring
- Passwordless magic link auth with email (aiosmtplib) and admin invite system
- Real-time score entry via WebSocket with drag-and-drop player ordering
- Course management with per-hole par and stroke index
- Scorecard with golf score markers (birdie, eagle, bogey, etc.)
- Two-step new game form with tee selection per player
- Dashboard with stats, live games social stream, and recent game history
- Game summary view (read-only scorecard with leaderboard)
- User profile pages with win stats
- PWA install support with generated PNG icons
- Admin panel for users, courses, games, and invitations

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 10:16:46 +01:00

18 lines
831 B
HTML

{# Crop modal — requires avatarUpload() Alpine component on a parent element #}
<div x-show="showModal" x-cloak class="crop-overlay" @click.self="cancelCrop()">
<div class="crop-modal">
<div class="crop-modal-header">
<span>Position your photo</span>
<button type="button" class="icon-btn" @click="cancelCrop()"></button>
</div>
<div class="crop-container">
<img x-ref="cropImg" :src="previewUrl" style="max-width:100%;">
</div>
<p class="crop-hint">Pinch or scroll to zoom · drag to reposition</p>
<div class="crop-modal-actions">
<button type="button" class="btn btn-ghost" style="width:auto;" @click="cancelCrop()">Cancel</button>
<button type="button" class="btn btn-primary" style="width:auto;" @click="confirmCrop()">Use photo</button>
</div>
</div>
</div>