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:
@@ -106,7 +106,41 @@ if ($registration['ok']) {
|
||||
settings_check_assert('self entry is enabled', $updated['self_entry_enabled'] === 1, $failures, $passes);
|
||||
settings_check_assert('pdf row height is updated', (int)$updated['pdf_row_height_px'] === 18, $failures, $passes);
|
||||
settings_check_assert('reminder interval is updated', (int)$updated['payment_reminder_interval_days'] === 14, $failures, $passes);
|
||||
// Das Formular oben schickt kein watermark_enabled - im kostenlosen
|
||||
// Tarif bleibt der Hinweis auf die Kaffeeliste trotzdem an.
|
||||
settings_check_assert('watermark stays on in the free plan', (int)$updated['watermark_enabled'] === 1, $failures, $passes);
|
||||
}
|
||||
|
||||
// Ab einem bezahlten Tarif entscheidet der Mandant selbst.
|
||||
$paidInput = [
|
||||
'tenant_name' => 'M3 Settings Flow Updated',
|
||||
'timezone' => 'Europe/Berlin',
|
||||
'locale' => 'de-DE',
|
||||
'currency_code' => 'EUR',
|
||||
'mark_price' => '0,35',
|
||||
'sheet_window_days' => '90',
|
||||
'negative_warning' => '12,50',
|
||||
'pdf_split_mode' => 'alphabetical',
|
||||
'pdf_row_height_px' => '18',
|
||||
'payment_reminder_interval_days' => '14',
|
||||
];
|
||||
billing_update($pdo, $tenantId, ['plan_code' => 'basic']);
|
||||
|
||||
$paidOff = saas_update_tenant_settings($pdo, $tenantId, $paidInput);
|
||||
settings_check_assert(
|
||||
'watermark can be switched off on a paid plan',
|
||||
$paidOff['ok'] === true && (int)$paidOff['settings']['watermark_enabled'] === 0,
|
||||
$failures,
|
||||
$passes
|
||||
);
|
||||
|
||||
$paidOn = saas_update_tenant_settings($pdo, $tenantId, $paidInput + ['watermark_enabled' => '1']);
|
||||
settings_check_assert(
|
||||
'watermark can be switched back on',
|
||||
$paidOn['ok'] === true && (int)$paidOn['settings']['watermark_enabled'] === 1,
|
||||
$failures,
|
||||
$passes
|
||||
);
|
||||
}
|
||||
|
||||
settings_check_cleanup($pdo, $slug, $emailNorm);
|
||||
|
||||
Reference in New Issue
Block a user