Nutzer-Wunsch 21.08.2026: "überall wo Modis sind oder Scouts oder Manager, oder Creator, will ich dass ich die easy über meine Verwaltungsseite hinzufüge und die automatisch in der Website hinzugefügt werden ... auch mit Fotos und TikTok Link." Backend (server-internal, braucht Filipes manuellen Deploy): - Neue Tabelle team_members (Migration 0007) für alle vier Kategorien gemeinsam -- ergänzt, überschreibt NIE die von Hand gepflegten Einträge in data-modis.js/data-scouts.js/data-creator.js. - routes/team.js: öffentliches Lesen (nur aktive Mitglieder, optional nach Kategorie gefiltert), TEAM_MANAGE-geschütztes Anlegen/Bearbeiten/ Löschen, Foto-Upload (gleiches Muster wie "Event des Jahres"), automatische Übersetzung von Rolle/Bio/Zitat wie bei anderen admin-gepflegten Texten. Slug global eindeutig (mit automatischer Kollisionsauflösung), TikTok-Kurzname wird zu voller URL ergänzt. 27 Tests in isolierter Testumgebung geprüft (kein better-sqlite3 lokal kompilierbar). Frontend: - window.dogiTeamLaden() in main.js: holt admin-gepflegte Mitglieder einer (oder aller) Kategorien und bringt sie in exakt dieselbe Form wie die bestehenden data-*.js-Einträge. - team-scouts.html/team-modis.html/creator.html hängen das Ergebnis einfach an ihre bestehenden Arrays an und rendern erneut -- exakt derselbe Look wie die schon bestehenden Profile (Foto/Avatar-Initiale, Rolle, Zitat, TikTok-Button). creator.html hatte bisher ein "return" bei leerem CREATORS-Array, wodurch admin-Creator NIE geladen worden wären -- gefixt. team-modis.html berücksichtigt Rang/Rang-Bezeichnung für die Pyramide. - Neue Sektion "Weitere Manager" auf manager.html, komplett unsichtbar bis der erste Manager angelegt wird (data-manager.js neu, wie data-creator.js aktuell leer). - profil.html sucht jetzt kategorieübergreifend auch in admin-gepflegten Profilen, inkl. korrektem Theme/Zurück-Link auch für Manager. Verwaltung: neue Sektion "Team verwalten" (TEAM_MANAGE-Berechtigung) -- ein Formular für alle vier Kategorien mit Foto-Sofort-Upload, TikTok-Feld, Bio/Zitat, bedingten Rang-Feldern (nur Modi), Kategorie- Filterleiste und Bearbeiten/Löschen pro Eintrag. Beim Testen mit Playwright einen echten Syntaxfehler gefunden und gefixt (ASCII-Anführungszeichen statt schließendem „" in einem Statustext), der das GESAMTE Verwaltungs-Skript und damit die komplette Seite lahmgelegt hätte. Cache-Busting-Version auf 20260821j erhöht. Co-Authored-By: Claude Sonnet 5 <[email protected]>
91 lines
6.9 KiB
HTML
91 lines
6.9 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="de" data-theme="hasidog">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>Die Community — DOGFATHER UNIVERSE</title>
|
||
<meta name="description" content="Team Dogi ist Familie — die Community rund um DogFather und HasiDog." />
|
||
<link rel="icon" type="image/png" href="assets/img/favicon.png" />
|
||
<link rel="manifest" href="/manifest.json" />
|
||
<meta name="theme-color" content="#0b0d10" />
|
||
<meta property="og:type" content="website" />
|
||
<meta property="og:site_name" content="DOGFATHER UNIVERSE" />
|
||
<meta property="og:title" content="Die Community — DOGFATHER UNIVERSE" />
|
||
<meta property="og:description" content="Team Dogi ist Familie — die Community rund um DogFather und HasiDog." />
|
||
<meta property="og:image" content="https://dogfather-universe.com/assets/img/og-cover.jpg" />
|
||
<meta property="og:url" content="https://dogfather-universe.com/community.html" />
|
||
<meta name="twitter:card" content="summary_large_image" />
|
||
<meta name="twitter:title" content="Die Community — DOGFATHER UNIVERSE" />
|
||
<meta name="twitter:description" content="Team Dogi ist Familie — die Community rund um DogFather und HasiDog." />
|
||
<meta name="twitter:image" content="https://dogfather-universe.com/assets/img/og-cover.jpg" />
|
||
|
||
<link rel="stylesheet" href="assets/css/main.css?v=20260821j" />
|
||
<link rel="stylesheet" href="assets/css/theme-dogfather.css?v=20260821j" />
|
||
<link rel="stylesheet" href="assets/css/theme-hasidog.css?v=20260821j" />
|
||
<link rel="stylesheet" href="assets/css/theme-spicymedia.css?v=20260821j" />
|
||
</head>
|
||
<body class="mit-hintergrund" style="--page-bg:url('/assets/img/bg-community.jpg');--page-bg-mobile:url('/assets/img/bg-community-mobile.jpg');">
|
||
<div id="site-header"></div>
|
||
|
||
<main>
|
||
<section class="hero page-bg">
|
||
<div class="hero-banner"><img src="/assets/img/bg-community.jpg" alt="" loading="eager" /></div>
|
||
<div class="container">
|
||
<span class="eyebrow" data-i18n="com_eyebrow">Welt 2 — HasiDog</span>
|
||
<h1 data-i18n="com_h1">Die Community</h1>
|
||
<p class="lead worlds" data-i18n="com_lead">Team Dogi ist Familie 🩵</p>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="section-tight">
|
||
<div class="container grid grid-2" style="align-items:center;">
|
||
<div>
|
||
<h2 data-i18n="com_mehr_h2">Mehr als Follower</h2>
|
||
<p data-i18n="com_mehr_1">Team Dogi soll niemals nur „DogFather und Follower" sein, sondern eine echte Gemeinschaft. Jeder verdient Spotlight 🩵</p>
|
||
<p data-i18n="com_mehr_2">Discord ist das Community-Zentrum — hier trifft man sich, tauscht sich aus und ist Teil des Alltags von Team Dogi.</p>
|
||
<a class="btn btn-primary" href="links.html" data-i18n="com_discord_btn">Discord beitreten</a>
|
||
</div>
|
||
<div class="collage-photo" style="aspect-ratio:3/4;border-radius:var(--radius);">
|
||
<img src="assets/img/community-team-dogi.jpg" alt="Diene, Ghost, VanVan und Dogi bei einem gemeinsamen Treffen von Team Dogi" style="width:100%;height:100%;object-fit:cover;object-position:center 25%;" />
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="section-tight">
|
||
<div class="container" style="max-width:70ch;">
|
||
<h2 class="text-center" data-i18n="com_story_h2">Team Dogi – mehr als eine Community 🩵</h2>
|
||
<p data-i18n="com_1">Meine Community ist nicht einfach nur eine Gruppe von Menschen, die sich regelmäßig in einem Livestream trifft. <strong>Team Dogi ist Familie.</strong></p>
|
||
<p data-i18n="com_2">Hier kommen Menschen zusammen, die unterschiedlicher kaum sein könnten – und trotzdem verbindet uns etwas ganz Besonderes: Loyalität, Ehrlichkeit, Respekt, Zusammenhalt und das Herz am richtigen Fleck.</p>
|
||
<p data-i18n="com_3">Bei uns darf jeder so sein, wie er wirklich ist. Niemand muss sich verstellen, niemand muss perfekt sein und niemand wird allein gelassen. Wir lachen zusammen, machen Blödsinn, unterstützen uns gegenseitig und stehen füreinander ein, wenn das Leben einmal nicht so läuft, wie es sollte.</p>
|
||
<p data-i18n="com_4">Natürlich sind wir manchmal laut, verrückt, chaotisch und komplett verpeilt. Aber genau das macht uns aus. Hinter jedem Spaß, jedem Insider und jedem verrückten Moment steckt eine Gemeinschaft, die zusammenhält – nicht nur während eines Lives, sondern auch weit darüber hinaus.</p>
|
||
<p data-i18n="com_5">Neue Menschen werden bei uns nicht einfach nur begrüßt. Sie werden aufgenommen, respektiert und Schritt für Schritt ein Teil unserer Truppe. Denn bei Team Dogi zählt nicht, woher du kommst, wie du aussiehst oder was andere über dich denken. Es zählt, welchen Charakter du hast, wie du mit anderen Menschen umgehst und ob dein Herz am richtigen Fleck sitzt.</p>
|
||
<p data-i18n="com_6">Wir feiern gemeinsam Erfolge, tragen gemeinsam schwere Zeiten und erinnern uns gegenseitig daran, niemals aufzugeben. Wenn einer fällt, helfen die anderen ihm wieder aufzustehen. Wenn einer lacht, lachen alle mit. Und wenn jemand Schutz, Rückhalt oder Unterstützung braucht, steht die gesamte Community hinter ihm.</p>
|
||
<p data-i18n="com_7">Was als TikTok-Live begonnen hat, ist längst zu etwas viel Größerem geworden: zu echten Freundschaften, besonderen Verbindungen und einer Familie, die man sich selbst ausgesucht hat.</p>
|
||
<p data-i18n="com_8">Wir sind nicht immer einer Meinung. Wir sind nicht immer leise. Und wir sind ganz sicher nicht normal. Aber wir sind echt, wir sind loyal und wir gehören zusammen.</p>
|
||
<p class="quote" data-i18n="com_quote" style="margin-top:1.4rem;">Das ist Team Dogi.<br>Das ist unsere Community.<br>Das ist Familie. 🩵</p>
|
||
<p style="text-align:right;"><strong data-i18n="com_signatur">– DogFather, im Namen von Team Dogi 🩵</strong></p>
|
||
</div>
|
||
</section>
|
||
|
||
<section>
|
||
<div class="container">
|
||
<h2 class="text-center" data-i18n="com_werte_h2">Werte der Community</h2>
|
||
<div class="grid grid-3">
|
||
<div class="card text-center"><h3 data-i18n="com_wert1_h3">🩵 Familie</h3><p data-i18n="com_wert1_p">Team Dogi ist Familie — niemand fühlt sich allein.</p></div>
|
||
<div class="card text-center"><h3 data-i18n="com_wert2_h3">🎉 Community-Treffen</h3><p data-i18n="com_wert2_p">Reale Treffen mit der Community, z.B. rund um Dogis Geburtstag.</p></div>
|
||
<div class="card text-center"><h3 data-i18n="com_wert3_h3">💬 Offenes Ohr</h3><p data-i18n="com_wert3_p">Immer erreichbar, immer präsent.</p></div>
|
||
</div>
|
||
<div class="btn-row" style="justify-content:center;">
|
||
<a class="btn btn-outline" href="medien-dogfather.html#events" data-i18n="com_aktionen_btn">Community-Aktionen ansehen</a>
|
||
<a class="btn btn-outline" href="stimmen.html" data-i18n="com_stimmen_btn">Stimmen aus der Community</a>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</main>
|
||
|
||
<div id="site-footer"></div>
|
||
<script src="assets/js/i18n-community.js?v=20260821j"></script>
|
||
<script src="assets/js/main.js?v=20260821j"></script>
|
||
</body>
|
||
</html>
|