Fix: Ausweis öffnet neuen Tab (kein iframe), Mein Tierarzt im Praxen-Tab integriert, SW by-v599

This commit is contained in:
rene 2026-05-02 09:57:12 +02:00
parent 5a412c425c
commit 2677cff882
4 changed files with 16 additions and 11 deletions

View file

@ -3,7 +3,7 @@
Router, State-Management, Navigation, Initialisierung. Router, State-Management, Navigation, Initialisierung.
============================================================ */ ============================================================ */
const APP_VER = '598'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen const APP_VER = '599'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen
const APP_VERSION = '1.2.1'; // ← semantische Version, wird bei make release gesetzt const APP_VERSION = '1.2.1'; // ← semantische Version, wird bei make release gesetzt
const IS_STAGING = location.hostname === 'staging.banyaro.app'; const IS_STAGING = location.hostname === 'staging.banyaro.app';

View file

@ -753,13 +753,7 @@ window.Page_dog_profile = (() => {
// AUSWEIS // AUSWEIS
// ---------------------------------------------------------- // ----------------------------------------------------------
function _showAusweisModal(dogId) { function _showAusweisModal(dogId) {
UI.modal.open({ window.open(`/ausweis/${dogId}`, '_blank', 'noopener');
title: 'Heimtierausweis',
body: `<iframe src="/ausweis/${dogId}" class="ausweis-frame" title="Heimtierausweis"></iframe>`,
footer: `<button class="btn btn-secondary" onclick="UI.modal.close()">Schließen</button>
<a href="/ausweis/${dogId}" target="_blank" class="btn btn-ghost">${UI.icon('printer')} Drucken</a>`,
size: 'fullscreen',
});
} }
// ---------------------------------------------------------- // ----------------------------------------------------------

View file

@ -157,7 +157,6 @@ window.Page_health = (() => {
</button> </button>
</div> </div>
${transponderHtml} ${transponderHtml}
<div id="health-mein-tierarzt"></div>
<div id="health-ki-berichte"></div> <div id="health-ki-berichte"></div>
<div id="health-terminvorschlaege"></div> <div id="health-terminvorschlaege"></div>
<div id="health-reminders"></div> <div id="health-reminders"></div>
@ -1690,12 +1689,24 @@ window.Page_health = (() => {
`}; `};
const favCard = _favoritVet ? `
<div style="margin-bottom:var(--space-4)">
<div style="font-size:var(--text-xs);font-weight:600;color:var(--c-primary);
text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)">
${UI.icon('heart')} Mein Tierarzt
</div>
${renderCard(_favoritVet)}
</div>` : '';
const ohneGesetzt = aktive.filter(p => p.id !== _favoritVet?.id);
return ` return `
<div style="display:flex;justify-content:flex-end;margin-bottom:var(--space-3)"> <div style="display:flex;justify-content:flex-end;margin-bottom:var(--space-3)">
${addBtn} ${addBtn}
</div> </div>
${favCard}
<div class="health-list"> <div class="health-list">
${aktive.map(renderCard).join('')} ${ohneGesetzt.map(renderCard).join('')}
${inaktive.length ? ` ${inaktive.length ? `
<div style="margin-top:var(--space-4);padding-top:var(--space-3); <div style="margin-top:var(--space-4);padding-top:var(--space-3);
border-top:1px solid var(--c-border)"> border-top:1px solid var(--c-border)">

View file

@ -3,7 +3,7 @@
Offline-Cache + Push Notifications + Tile-Cache Offline-Cache + Push Notifications + Tile-Cache
============================================================ */ ============================================================ */
const CACHE_VERSION = 'by-v598'; const CACHE_VERSION = 'by-v599';
const CACHE_STATIC = `${CACHE_VERSION}-static`; const CACHE_STATIC = `${CACHE_VERSION}-static`;
const CACHE_TILES = 'ban-yaro-tiles-v1'; // bleibt über SW-Updates erhalten const CACHE_TILES = 'ban-yaro-tiles-v1'; // bleibt über SW-Updates erhalten
const CACHE_API = 'ban-yaro-api-v1'; // API-Response-Cache const CACHE_API = 'ban-yaro-api-v1'; // API-Response-Cache