/* ============================================================
BAN YARO — Züchter-Bereich
Hub für Züchter: Profil-Status, Wurfverwaltung, Zuchtkartei.
(Läufigkeit bleibt bewusst als eigener Chip in der HUND-Welt.)
============================================================ */
window.Page_breeder_dashboard = (() => {
let _container = null;
async function init(container) {
_container = container;
_render();
await _load();
}
function refresh() { _load(); }
function onDogChange() {}
function _render() {
_container.innerHTML = `
${UI.icon('certificate')} Züchter-Bereich
Dein Zwinger, deine Würfe, deine Zuchthunde.
`;
}
async function _load() {
const el = _container.querySelector('#bd-content');
try {
const [status, litters, hunde] = await Promise.all([
API.breeder.status().catch(() => null),
API.litters.myList().catch(() => []),
API.zuchthunde.list().catch(() => []),
]);
el.innerHTML = _renderHub(status, litters || [], hunde || []);
_bindEvents(el);
} catch (e) {
el.innerHTML = `${UI.escape(e.message || 'Fehler beim Laden.')}
`;
}
}
function _renderHub(status, litters, hunde) {
const profile = status?.profile;
const isBreeder = status?.rolle === 'breeder' || status?.rolle === 'admin';
if (!isBreeder) {
return `
Der Züchter-Bereich ist für verifizierte Züchter.
Den Antrag findest du in den Einstellungen.
`;
}
return `
Mein Zwinger
${UI.escape(profile?.zwingername || 'Noch kein Profil angelegt')}
${profile?.rasse_text ? `
${UI.escape(profile.rasse_text)}
` : ''}
${UI.icon('check-circle')} Verifizierter Züchter
Wurfverwaltung
${litters.length} ${litters.length === 1 ? 'Wurf' : 'Würfe'} · Welpen, Gewichte, Kaufverträge
Zuchtkartei
${hunde.length} ${hunde.length === 1 ? 'Zuchthund' : 'Zuchthunde'} · Stammbaum, Genetik, Titel
Läufigkeit & Trächtigkeit
Zyklen, Progesterontests, Deckdaten, Meilensteine
`;
}
function _bindEvents(el) {
el.querySelectorAll('[data-bd-nav]').forEach(btn => {
btn.addEventListener('click', () => App.navigate(btn.dataset.bdNav));
});
}
return { init, refresh, onDogChange };
})();