feat(fusion_clock): premium glass NFC kiosk + scope CSS to kiosk page
Visual rewrite of the NFC kiosk page: - Animated mesh gradient background (drifts on a 28s loop) - Glass-panel state cards with backdrop-filter blur - Animated SVG NFC icon (concentric waves emanate from a chip) - Company logo pulled from res.company.logo, displayed in header - Dominant-hue extraction from logo sets --nfc-h CSS var; entire palette interpolates from that one HSL hue - Success burst (green glow + scale), error shake, smooth state fades - Reduced-motion fallback respects prefers-reduced-motion - Glass numpad + employee picker in Enroll Mode CRITICAL FIX: scoped all kiosk styles under :has(#nfc_kiosk_root) so they no longer leak into other frontend pages. Previous version applied html/body overflow:hidden + display:none on header/footer globally, breaking website scrolling and chrome on every frontend page.
This commit is contained in:
@@ -12,7 +12,16 @@
|
||||
<div id="nfc_kiosk_root" class="nfc-kiosk"
|
||||
t-att-data-photo-required="'1' if photo_required else '0'"
|
||||
t-att-data-debug-enabled="'1' if debug_enabled else '0'"
|
||||
t-att-data-location-configured="'1' if location_configured else '0'">
|
||||
t-att-data-location-configured="'1' if location_configured else '0'"
|
||||
t-att-data-company-logo-url="company_logo_url or ''">
|
||||
|
||||
<!-- Company logo (also drives the dominant-hue palette via JS) -->
|
||||
<img t-if="company_logo_url"
|
||||
class="nfc-kiosk__logo"
|
||||
id="nfc_company_logo"
|
||||
t-att-src="company_logo_url"
|
||||
crossorigin="anonymous"
|
||||
alt="Company logo"/>
|
||||
|
||||
<!-- Static chrome (always visible) -->
|
||||
<div class="nfc-kiosk__company" t-esc="company_name"/>
|
||||
@@ -24,9 +33,9 @@
|
||||
</div>
|
||||
<button class="nfc-kiosk__settings" id="nfc_settings_btn" title="Enroll Mode">⚙</button>
|
||||
|
||||
<!-- Dynamic state container (JS swaps inner HTML) -->
|
||||
<!-- Dynamic state container (JS swaps inner HTML based on state) -->
|
||||
<div id="nfc_state_container">
|
||||
<!-- Initially: One-time setup wizard step 1 -->
|
||||
<!-- Initial: One-time setup wizard -->
|
||||
<div class="nfc-kiosk__setup">
|
||||
<h2>Welcome to Fusion Clock NFC Kiosk</h2>
|
||||
<p>Tap the button below to enable the NFC reader and camera. This is a one-time setup for this device.</p>
|
||||
@@ -34,7 +43,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Hidden video element for camera feed -->
|
||||
<!-- Hidden video + canvas for camera capture -->
|
||||
<video id="nfc_camera_feed" autoplay="autoplay" playsinline="playsinline" muted="muted"
|
||||
style="position:absolute; width:1px; height:1px; opacity:0; pointer-events:none;"/>
|
||||
<canvas id="nfc_camera_canvas" style="display:none;"/>
|
||||
|
||||
Reference in New Issue
Block a user