$today ) return null;
return (int) $birth->diff($today)->y;
}
public static function time_ago( $datetime ) {
$diff = time() - strtotime($datetime);
if ($diff < 60) return 'Gerade eben';
if ($diff < 3600) return floor($diff/60) . ' Min. ago';
if ($diff < 86400) return floor($diff/3600) . ' Std. ago';
if ($diff < 604800) return floor($diff/86400). ' Tage ago';
return date_i18n('d.m.Y', strtotime($datetime));
}
public static function avatar( $url, $name, $size = 40, $online = false ) {
$src = esc_url($url ?: 'https://www.gravatar.com/avatar/0?d=identicon&s='.$size);
$img = "";
if (!$online) return $img;
return "$img";
}
public static function role_badge( $role ) {
// Dynamisch aus WBF_Roles — deckt alle Rollen inkl. superadmin ab
return WBF_Roles::badge( $role );
}
public static function render_prefix( $thread ) {
if ( empty($thread->prefix_label) ) return '';
$label = esc_html($thread->prefix_label);
$color = esc_attr($thread->prefix_color ?? '#fff');
$bg = esc_attr($thread->prefix_bg ?? '#475569');
return "{$label}";
}
public static function render_tags( $tags, $small = false ) {
if ( empty($tags) ) return '';
$cls = $small ? 'wbf-tag wbf-tag--sm' : 'wbf-tag';
$out = '
description); ?>
Noch keine Threads. Starte die Diskussion!
Thread nicht gefunden.
'; // Kategorie-Zugang prüfen (Gäste + Min-Rolle) $cat6 = WBF_DB::get_category($thread->category_id); if ($cat6 && !self::can_see_category($cur6, $cat6)) { ob_start(); ?>Du hast noch keine Käufe getätigt.
| Datum | Anzahl | Gesamtpreis | |
|---|---|---|---|
| created_at)); ?> | quantity; ?> | price * $order->quantity); ?> |
Noch keine Lesezeichen.
Noch keine Beiträge.
content), 0, 130)); $more = mb_strlen(strip_tags($up->content)) > 130 ? '…' : ''; $is_thread = isset($up->entry_type) && $up->entry_type === 'thread'; $anchor = $is_thread ? '?forum_thread=' . (int)$up->thread_id : '?forum_thread=' . (int)$up->thread_id . '#post-' . (int)$up->id; ?>Lege fest bei welchen Ereignissen du eine E-Mail erhältst.
Du ignorierst niemanden.
Gemäß DSGVO Art. 17 (Recht auf Vergessenwerden) kannst du die vollständige Löschung deines Kontos und aller personenbezogenen Daten beantragen.
Deine Beiträge bleiben anonymisiert sichtbar. Direktnachrichten, Likes, Profilinformationen und alle persönlichen Daten werden dauerhaft gelöscht.
Aktuelle Adresse: email); ?>
Dein Account ist mit einem Authenticator gesichert. Zum Deaktivieren Passwort und aktuellen Code eingeben.
Schütze deinen Account zusätzlich mit einer Authenticator-App (Google Authenticator, Aegis, Bitwarden, Authy, 2FAS…).
Die Minecraft Bridge ist noch nicht eingerichtet. Ein Admin muss sie zuerst in den Forum-Einstellungen aktivieren.
Du erhältst Ingame-Benachrichtigungen bei Antworten, Erwähnungen und PNs.
Verknüpfe deinen Minecraft-Account für Ingame-Benachrichtigungen bei neuen Antworten, Erwähnungen und Privatnachrichten.
Schritt 1: Token generieren →
Schritt 2: /forumlink <token> ingame eingeben
Verknüpfe deinen Discord-Account mit deinem Profil. Ein Bestätigungs-Code wird dir per Discord-DM zugeschickt. (Bot noch nicht konfiguriert – wende dich an einen Admin.)
Discord-Bot noch nicht eingerichtet. Bitte Admin kontaktieren.
Du musst Mitglied unseres Discord-Servers sein und DMs erlauben.
Keine Threads mit diesem Tag.
Wähle eine Konversation aus oder starte eine neue Nachricht.
Keine Ergebnisse.
Ergebnis(se) gefunden.
Gib deine E-Mail ein — wir schicken dir einen Reset-Link.
Keine Mitglieder gefunden.
' . $para . '
'; } } return $out; } } WBF_Shortcodes::init();