/* ============================================================ BAN YARO — Hunde-Persönlichkeitstest 10 Fragen, 4 Typen: Abenteurer / Entdecker / Kuschler / Denker ============================================================ */ window.Page_personality = (() => { let _container = null; let _appState = null; let _current = 0; // Aktuelle Frage (0-basiert) let _scores = { A:0, B:0, C:0, D:0 }; let _answers = []; // Gewählte Typen je Frage const LS_KEY = 'banyaro_personality_result'; // ---------------------------------------------------------- // FRAGEN // ---------------------------------------------------------- const FRAGEN = [ { frage: "Wie reagiert dein Hund auf neue Orte?", antworten: [ { text: "Stürmt sofort los — alles erkunden!", typ: 'A' }, { text: "Schaut erst vorsichtig, dann neugierig", typ: 'B' }, { text: "Bleibt lieber bei mir in der Nähe", typ: 'C' }, { text: "Analysiert die Lage gründlich", typ: 'D' }, ]}, { frage: "Was macht dein Hund am liebsten?", antworten: [ { text: "Rennen, Ball, endlos spielen", typ: 'A' }, { text: "Schnüffeln und die Welt erkunden", typ: 'B' }, { text: "Kuscheln auf dem Sofa", typ: 'C' }, { text: "Tricks lernen und Aufgaben lösen", typ: 'D' }, ]}, { frage: "Wie verhält er sich mit anderen Hunden?", antworten: [ { text: "Spielt sofort und wild mit", typ: 'A' }, { text: "Friendly, aber wählerisch", typ: 'B' }, { text: "Lieber zu zweit als in der Gruppe", typ: 'C' }, { text: "Beobachtet erstmal genau", typ: 'D' }, ]}, { frage: "Wie reagiert er auf Kommandos?", antworten: [ { text: "Macht alles — wenn er Lust hat 😅", typ: 'A' }, { text: "Gut, aber manchmal abgelenkt", typ: 'B' }, { text: "Sehr zuverlässig, will gefallen", typ: 'C' }, { text: "Präzise und fokussiert", typ: 'D' }, ]}, { frage: "Was passiert wenn du heimkommst?", antworten: [ { text: "Explosiver Freudentanz!", typ: 'A' }, { text: "Wedelt freudig, bleibt aber cool", typ: 'B' }, { text: "Kuschelt sich sofort an dich", typ: 'C' }, { text: "Bringt dir sein Lieblingsspielzeug", typ: 'D' }, ]}, { frage: "Wie ist er bei Geräuschen/Gewitter?", antworten: [ { text: "Interessiert sich dafür oder ignoriert es", typ: 'A' }, { text: "Schaut kurz, dann weiter", typ: 'B' }, { text: "Sucht Schutz bei dir", typ: 'C' }, { text: "Analysiert die Situation", typ: 'D' }, ]}, { frage: "Sein Verhältnis zu Kindern?", antworten: [ { text: "Liebt das wilde Spielen!", typ: 'A' }, { text: "Gut, aber auf seine Art", typ: 'B' }, { text: "Sanft und geduldig", typ: 'C' }, { text: "Vorsichtig, aber freundlich", typ: 'D' }, ]}, { frage: "Was macht er alleine zu Hause?", antworten: [ { text: "Schläft oder spielt mit Spielzeug", typ: 'A' }, { text: "Schaut aus dem Fenster", typ: 'B' }, { text: "Wartet sehnsüchtig auf dich", typ: 'C' }, { text: "Sucht sich Beschäftigung", typ: 'D' }, ]}, { frage: "Beim Gassigehen:", antworten: [ { text: "Zieht an der Leine — immer vorwärts!", typ: 'A' }, { text: "Läuft locker aber entdeckungsfreudig", typ: 'B' }, { text: "Bleibt gerne neben dir", typ: 'C' }, { text: "Systematisches Schnüffeln", typ: 'D' }, ]}, { frage: "Was sagt er über dich aus?", antworten: [ { text: "Mein Mensch hält mit mir mit!", typ: 'A' }, { text: "Gibt mir Freiheit und Abenteuer", typ: 'B' }, { text: "Mein bester Freund", typ: 'C' }, { text: "Versteht mich wirklich", typ: 'D' }, ]}, ]; // ---------------------------------------------------------- // TYPEN // ---------------------------------------------------------- const TYPEN = { A: { key: 'A', emoji: '🏔️', name: 'Der Abenteurer', desc: 'Immer vorwärts, immer mehr! Dein Hund lebt im Augenblick und liebt das Unbekannte.', staerken: ['Energiegeladen', 'Mutig', 'Lebensfroh'], aktivitaeten: [ { label: 'Routen', page: 'routes' }, { label: 'Karte', page: 'map' }, { label: 'Training', page: 'uebungen' }, ], aktivitaetLabels: ['Agility', 'Canicross', 'Lange Wanderungen', 'Nasenarbeit'], rassen: ['Husky', 'Malinois', 'Border Collie'], color: '#f97316', bg: 'linear-gradient(135deg, #f97316, #ea580c)', }, B: { key: 'B', emoji: '🌍', name: 'Der Entdecker', desc: 'Neugierig auf alles, aber mit Köpfchen. Dein Hund ist der perfekte Begleiter für jede Situation.', staerken: ['Anpassungsfähig', 'Sozial', 'Ausgeglichen'], aktivitaeten: [ { label: 'Karte', page: 'map' }, { label: 'Events', page: 'events' }, { label: 'Routen', page: 'routes' }, ], aktivitaetLabels: ['Mantrailing', 'Dummy-Training', 'Gassi-Treffen'], rassen: ['Labrador', 'Golden Retriever', 'Beagle'], color: '#0ea5e9', bg: 'linear-gradient(135deg, #0ea5e9, #0284c7)', }, C: { key: 'C', emoji: '🥰', name: 'Der Kuschler', desc: 'Verbundenheit über alles. Dein Hund liebt Menschen mehr als alles andere.', staerken: ['Loyal', 'Einfühlsam', 'Zuverlässig'], aktivitaeten: [ { label: 'Tagebuch', page: 'diary' }, { label: 'Training', page: 'uebungen' }, { label: 'Gesundheit', page: 'health' }, ], aktivitaetLabels: ['Trick-Training', 'Therapy-Dog-Ausbildung', 'Ruhige Spaziergänge'], rassen: ['Cavalier KCS', 'Bichon Frisé', 'Mops'], color: '#ec4899', bg: 'linear-gradient(135deg, #ec4899, #db2777)', }, D: { key: 'D', emoji: '🧠', name: 'Der Denker', desc: 'Stratege mit Seele. Dein Hund denkt bevor er handelt — und ist dabei brillant.', staerken: ['Intelligent', 'Fokussiert', 'Lernbegeistert'], aktivitaeten: [ { label: 'Übungen', page: 'uebungen' }, { label: 'Training', page: 'trainingsplaene' }, { label: 'Wiki', page: 'wiki' }, ], aktivitaetLabels: ['Zieltraining', 'Geruchsarbeit', 'Rally Obedience', 'Intelligenzspielzeug'], rassen: ['Poodle', 'Schäferhund', 'Rottweiler'], color: '#8b5cf6', bg: 'linear-gradient(135deg, #8b5cf6, #7c3aed)', }, }; // ---------------------------------------------------------- // LIFECYCLE // ---------------------------------------------------------- function init(container, appState) { _container = container; _appState = appState; _renderPage(); } function refresh() {} function onDogChange() {} // ---------------------------------------------------------- // RENDER EINSTIEG // ---------------------------------------------------------- function _renderPage() { // Gespeichertes Ergebnis aus localStorage? const saved = _loadResult(); if (saved) { _renderResult(TYPEN[saved.typ], saved.scores, true); } else { _renderIntro(); } } // ---------------------------------------------------------- // INTRO // ---------------------------------------------------------- function _renderIntro() { _container.innerHTML = `
10 Fragen — finde heraus welcher der 4 Persönlichkeitstypen deinen Hund am besten beschreibt!
${typ.desc}