// Miss-Scully — DOCTR PetCare Shop (Partnerseite, Adcell)
// Lädt nach homepage-sections.jsx + subpages-content.jsx + doctr-data.jsx.
function DoctrTilt({ children, max }) {
const ref = React.useRef(null);
const reduced = window.useReducedMotion ? window.useReducedMotion() : false;
const m = max || 8;
const onMove = (e) => {
if (reduced) return;
const el = ref.current;if (!el) return;
const r = el.getBoundingClientRect();
const px = (e.clientX - r.left) / r.width - 0.5, py = (e.clientY - r.top) / r.height - 0.5;
el.style.transform = 'perspective(900px) rotateY(' + (px * m).toFixed(2) + 'deg) rotateX(' + (-py * m).toFixed(2) + 'deg) translateY(-6px)';
el.style.setProperty('--glare-x', ((px + 0.5) * 100).toFixed(1) + '%');
el.style.setProperty('--glare-y', ((py + 0.5) * 100).toFixed(1) + '%');
};
const onLeave = () => {if (ref.current) ref.current.style.transform = '';};
return (
{children}
);
}
const CHF_RATE = 0.95;
const chf = (eur) => 'CHF ' + (eur * CHF_RATE).toFixed(2);
function DoctrShot({ file, alt }) {
const [bad, setBad] = React.useState(false);
if (bad) return DOCTR ;
return setBad(true)}>;
}
/* ---------- Hero ---------- */
function DoctrHero({ pet, setPet }) {
return (
DOCTR care — Partnershop
Tierpflege auf Wirkstoffniveau
Hypoallergen, duftstofffrei und pH-adaptiv: DOCTR care pflegt Haut und Fell von Hund
und Katze – von der schnellen Reinigung bis zur Akutversorgung.
{DOCTR_PETS.map((p) =>
setPet(p.k)}>
{p.label}
)}
Versand 2–3 Werktage
Auf Lager
Ohne DEET & Duftstoffe
);
}
/* ---------- Produkt-Karte + Detail ---------- */
function DoctrCard({ p }) {
return (
{p.old ? Aktion : null}
Details
{p.name}
{p.sub}
{p.size}
{p.bullets.slice(0, 2).map((b) => {b} )}
{chf(p.price)}
{p.old ? {chf(p.old)} : null}
);
}
/* ---------- Sortiment mit Filter ---------- */
function DoctrSortiment({ pet }) {
const [use, setUse] = React.useState('all');
const list = DOCTR_PRODUCTS.filter((p) => p.pet === pet && (use === 'all' || p.use === use));
const uses = DOCTR_USES.filter((u) => u.k === 'all' || DOCTR_PRODUCTS.some((p) => p.pet === pet && p.use === u.k));
React.useEffect(() => {
if (use !== 'all' && !uses.some((u) => u.k === use)) setUse('all');
}, [pet]);
return (
Sortiment
Pflege für jede Situation
{uses.map((u) =>
setUse(u.k)}>
{u.label}
{u.k === 'all' ?
DOCTR_PRODUCTS.filter((p) => p.pet === pet).length :
DOCTR_PRODUCTS.filter((p) => p.pet === pet && p.use === u.k).length}
)}
);
}
/* ---------- Pflege-Berater ---------- */
const BERATER_Q = [
{ id: 'need', q: 'Worum geht es gerade?', a: [
{ label: 'Schnell sauber machen', v: 'clean' },
{ label: 'Fell glänzend & kämmbar', v: 'coat' },
{ label: 'Haut, Wunde oder Juckreiz', v: 'wound' },
{ label: 'Pfoten schützen', v: 'paw' },
{ label: 'Zecken & Insekten', v: 'protect' },
{ label: 'Gerüche neutralisieren', v: 'odor' }] }];
function DoctrBerater({ pet }) {
const [need, setNeed] = React.useState(null);
const hits = need ? DOCTR_PRODUCTS.filter((p) => p.pet === pet && p.use === need) : [];
const petLabel = pet === 'dog' ? 'Hund' : pet === 'cat' ? 'Katze' : 'Pferd';
return (
Pflege-Berater
Welches Produkt passt zu Ihrem {petLabel}?
{BERATER_Q[0].q}
{BERATER_Q[0].a.map((o) =>
setNeed(need === o.v ? null : o.v)}>
{o.label}
)}
{need ?
{hits.length ?
Unsere Empfehlung für {petLabel}e:
:
Für {petLabel}e gibt es hier kein passendes Produkt – wechseln Sie oben die Tierart oder fragen Sie uns direkt.
}
:
null}
);
}
/* ---------- Sets ---------- */
function DoctrSets({ pet }) {
const sets = DOCTR_SETS.filter((s) => s.pet === pet);
if (!sets.length) return null;
return (
Sets
Kombiniert günstiger
Fertig zusammengestellte Pflege-Sets – mit Preisvorteil gegenüber den Einzelprodukten.
);
}
/* ---------- Wirkprinzip ---------- */
function DoctrPrinzip() {
const items = [
{ t: 'pH-adaptiv', d: 'Die Formulierungen passen sich dem Haut-pH an, statt ihn zu verschieben.' },
{ t: 'Hypoallergen', d: 'Ohne Duftstoffe, ohne DEET, ohne Picaridin oder IR3535.' },
{ t: 'Lotuseffekt', d: 'Schmutz und Feuchtigkeit perlen ab – die Pflege hält länger.' },
{ t: 'Biomimetisch', d: 'Promikrobiomielle Basis: Die Haut wird unterstützt, nicht sterilisiert.' }];
return (
Warum DOCTR
Vier Prinzipien statt Parfum
{items.map((i, n) =>
{'0' + (n + 1)}
{i.t}
{i.d}
)}
);
}
/* ---------- Aktionsleiste + Tierarten-Kacheln (Aufbau wie DOCTRs pet care) ---------- */
function DoctrTicker() {
return (
);
}
const DOCTR_TILES = [
{ pet: 'dog', slot: 'doctr-tile-dog', src: '/assets/hund-toben.jpg', title: 'dog care', text: 'pH-adaptive Hundepflege für jedes Individuum.' },
{ pet: 'cat', slot: 'doctr-tile-cat', src: '/assets/katzenbaby.jpg', title: 'cat care', text: 'pH-adaptive Pflege für jede Katze.' }];
function DoctrTiles({ setPet }) {
return (
Sortiment
Für wen suchen Sie Pflege?
);
}
/* ---------- Gutscheine ---------- */
const DOCTR_DEALS = [
{ promo: 663956, title: '5 % Willkommensgutschein',
text: 'Für die Anmeldung im Newsletter von DOCTR care.' }];
function DoctrDeals() {
const [copied, setCopied] = React.useState(null);
const copy = (code) => {
navigator.clipboard && navigator.clipboard.writeText(code);
setCopied(code);
setTimeout(() => setCopied(null), 1800);
};
return (
Aktuelle Vorteile
Gutscheine von DOCTR care
{DOCTR_DEALS.map((d) =>
{d.title}
{d.text}
{d.code ?
copy(d.code)}>
{d.code}
{copied === d.code ? 'Kopiert' : 'Code kopieren'}
:
null}
Gutschein einlösen
)}
);
}
/* ---------- Adcell Werbemittel ---------- */
function DoctrBanner({ promo, w, h, label }) {
return (
);
}
/* ---------- Seite ---------- */
function DoctrPage() {
const [pet, setPet] = React.useState('dog');
return (
);
}
Object.assign(window, { DoctrPage, DoctrTilt, DoctrShot, DoctrCard, chf });