Schalter fuer den Hinweis auf die Kaffeeliste
Der Hinweis unten rechts laesst sich ab einem bezahlten Tarif in den Mandant-Einstellungen abschalten (neue Spalte tenant_settings. watermark_enabled, Standard an). Im kostenlosen Tarif bleibt er fest eingeschaltet: das Kaestchen ist angehakt und disabled, daneben steht der Grund. Zusaetzlich erzwingt saas_update_tenant_settings() den Wert dort noch einmal, damit ein nachgebauter POST ihn nicht abschalten kann. Der Titel des Wasserzeichens spricht nicht mehr vom kostenlosen Tarif - zahlende Mandanten koennen es jetzt freiwillig zeigen. Der Smoke-Test prueft die Einstellungsseite jetzt auch angemeldet. Sein Muster fuer PHP-Meldungen verlangt dafuer einen Doppelpunkt, sonst haette das Feld "negative_warning" als Warnung gezaehlt. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+18
-4
@@ -44,7 +44,10 @@ function plan_watermark_plan_code(PDO $pdo, int $tenantId): string
|
||||
}
|
||||
|
||||
/**
|
||||
* Zeigt dieser Mandant das Wasserzeichen? Nur der kostenlose Tarif tut das.
|
||||
* Zeigt dieser Mandant das Wasserzeichen? Im kostenlosen Tarif immer - es ist
|
||||
* der Gegenwert fuer die kostenlose Nutzung und deshalb nicht abschaltbar.
|
||||
* Alle anderen entscheiden ueber die Mandant-Einstellung
|
||||
* `watermark_enabled` (Standard: an).
|
||||
*/
|
||||
function plan_watermark_visible(PDO $pdo, int $tenantId): bool
|
||||
{
|
||||
@@ -52,7 +55,18 @@ function plan_watermark_visible(PDO $pdo, int $tenantId): bool
|
||||
return false;
|
||||
}
|
||||
|
||||
return plan_watermark_plan_code($pdo, $tenantId) === 'free';
|
||||
$planCode = plan_watermark_plan_code($pdo, $tenantId);
|
||||
if ($planCode === 'free') {
|
||||
return true;
|
||||
}
|
||||
|
||||
if ($planCode === 'unknown') {
|
||||
return false;
|
||||
}
|
||||
|
||||
require_once __DIR__ . '/features.php';
|
||||
|
||||
return app_tenant_switch_enabled($pdo, $tenantId, 'watermark_enabled');
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -84,10 +98,10 @@ function plan_watermark_html(): string
|
||||
. '<span class="plan-watermark-text">' . htmlspecialchars($label, ENT_QUOTES, 'UTF-8') . '</span>';
|
||||
|
||||
if ($url === '') {
|
||||
return '<div class="plan-watermark" title="Kostenloser Tarif der Kaffeeliste">' . $inner . '</div>';
|
||||
return '<div class="plan-watermark" title="Kaffeeliste – die digitale Kaffeekasse">' . $inner . '</div>';
|
||||
}
|
||||
|
||||
return '<a class="plan-watermark" href="' . htmlspecialchars($url, ENT_QUOTES, 'UTF-8') . '"'
|
||||
. ' target="_blank" rel="noopener noreferrer"'
|
||||
. ' title="Diese Kaffeeliste läuft im kostenlosen Tarif">' . $inner . '</a>';
|
||||
. ' title="Kaffeeliste – die digitale Kaffeekasse">' . $inner . '</a>';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user