6c9959c00d
CI / test (push) Has been cancelled
iOS Safari's Add-to-Home-Screen flow probes /apple-touch-icon.png at the site root in addition to the <link rel> on the page. Those root paths currently 302 through Symfony's auth firewall to /login, so iOS gets HTML where it expects a PNG and falls back to whatever it cached from earlier installs (the 1 KB placeholder icon). Dropping the real PNG (and the -precomposed alias) directly in public/ makes nginx serve them as static files, ahead of the firewall. Also adds favicon.svg and a multi-size favicon.ico at the root for browsers/bots that probe / paths instead of reading <link>, and adds sizes="180x180" to every apple-touch-icon link so iOS doesn't have to guess. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
30 lines
1.3 KiB
Twig
30 lines
1.3 KiB
Twig
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<link rel="icon" type="image/svg+xml" href="/build/favicon.svg">
|
|
<link rel="icon" type="image/png" sizes="32x32" href="/build/icons/favicon-32.png">
|
|
<link rel="icon" type="image/png" sizes="16x16" href="/build/icons/favicon-16.png">
|
|
<link rel="apple-touch-icon" sizes="180x180" href="/build/icons/apple-touch-icon.png">
|
|
<title>Photo added — WeVisto</title>
|
|
<style>
|
|
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
|
|
body{font-family:system-ui,sans-serif;min-height:100dvh;background:#fdf6ee;color:#3a2e22;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}
|
|
.card{width:100%;max-width:420px;text-align:center}
|
|
.icon{font-size:3rem;margin-bottom:1rem}
|
|
h1{font-size:1.4rem;font-weight:700;margin-bottom:.5rem}
|
|
p{color:#8a7060;font-size:.875rem;margin-bottom:1.5rem}
|
|
a{display:inline-block;padding:.75rem 1.5rem;background:#c97c3a;color:#fff;border-radius:10px;text-decoration:none;font-weight:700}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div class="card">
|
|
<div class="icon">✓</div>
|
|
<h1>Photo added to your frame</h1>
|
|
<p>It'll appear in your rotation once it's been processed.</p>
|
|
<a href="/">Go to your frames</a>
|
|
</div>
|
|
</body>
|
|
</html>
|