Fix Android calendar subscribe — download .ics instead of webcal://
Some checks are pending
NordaBiz Tests / Unit & Integration Tests (push) Waiting to run
NordaBiz Tests / E2E Tests (Playwright) (push) Blocked by required conditions
NordaBiz Tests / Smoke Tests (Production) (push) Blocked by required conditions
NordaBiz Tests / Send Failure Notification (push) Blocked by required conditions

Android PWA doesn't handle webcal:// protocol. Now detects platform:
- iOS/Mac: webcal:// link (opens Apple Calendar)
- Android/other: direct .ics download (opens system picker → Google Calendar)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Maciej Pienczyn 2026-03-25 16:27:53 +01:00
parent c404e78d51
commit b439bc50c2

View File

@ -574,10 +574,19 @@
Kliknij przycisk odpowiedni dla Twojego kalendarza. Wydarzenia Izby będą się automatycznie synchronizować.
</p>
<div style="display:flex; flex-direction:column; gap:10px; margin-bottom:16px;">
<a href="webcal://nordabiznes.pl/kalendarz/ical" style="display:flex; align-items:center; gap:10px; padding:12px 16px; background:#eff6ff; border:1px solid #bfdbfe; border-radius:var(--radius); text-decoration:none; color:#1e40af; font-size:15px; font-weight:600;">
<a href="webcal://nordabiznes.pl/kalendarz/ical" id="subscribeWebcal" style="display:none; align-items:center; gap:10px; padding:12px 16px; background:#eff6ff; border:1px solid #bfdbfe; border-radius:var(--radius); text-decoration:none; color:#1e40af; font-size:15px; font-weight:600;">
<span style="font-size:22px;">📅</span>
<span>Dodaj do kalendarza</span>
</a>
<a href="https://nordabiznes.pl/kalendarz/ical" download="norda-biznes.ics" id="subscribeDownload" style="display:none; align-items:center; gap:10px; padding:12px 16px; background:#eff6ff; border:1px solid #bfdbfe; border-radius:var(--radius); text-decoration:none; color:#1e40af; font-size:15px; font-weight:600;">
<span style="font-size:22px;">📅</span>
<span>Dodaj do kalendarza</span>
</a>
<script>
// iOS/Mac: webcal:// works natively. Android/other: download .ics file.
var isIOS = /iPad|iPhone|iPod|Mac/.test(navigator.userAgent);
document.getElementById(isIOS ? 'subscribeWebcal' : 'subscribeDownload').style.display = 'flex';
</script>
</div>
<div style="border-top:1px solid #e5e7eb; padding-top:12px;">
<p style="color:#94a3b8; font-size:12px; margin:0 0 6px 0;">Lub skopiuj link ręcznie:</p>