feat: central Divi release lock for the Divi tools

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-30 01:54:36 +02:00
co-authored by Claude Opus 5.5
parent cf3c5dfe76
commit adfe0adfc2
8 changed files with 334 additions and 18 deletions
+3 -2
View File
@@ -126,8 +126,8 @@ final class LogListTable extends \WP_List_Table
}
/**
* Marks rows whose write did not complete (result "partial": failed after an
* irreversible step, spec §2 principle 7/8.2) so admins notice them while scrolling.
* Marks rows whose write did not complete (result "partial": failed after an irreversible step,
* spec §2 principle 7/8.2) or was refused (Divi release lock) so admins notice them while scrolling.
*
* @param array<string, mixed> $item
*/
@@ -150,6 +150,7 @@ final class LogListTable extends \WP_List_Table
return match ($result) {
'ok' => null,
'partial' => ['warning', __('teilweise', 'wp-lit-mcp')],
'refused' => ['warning', __('abgelehnt', 'wp-lit-mcp')],
'failed', 'error' => ['error', __('fehlgeschlagen', 'wp-lit-mcp')],
default => ['error', __('unbekannt', 'wp-lit-mcp')],
};
+6 -2
View File
@@ -22,7 +22,7 @@ final class LogTab implements AdminTab
/** Screen option "Einträge pro Seite" (user option; WordPress needs the "_per_page" end). */
public const PER_PAGE_OPTION = 'lit_mcp_log_per_page';
public const PER_PAGE_DEFAULT = 20;
private const RESULTS = ['ok', 'partial'];
private const RESULTS = ['ok', 'partial', 'refused'];
private AdminPostAction $action;
@@ -233,7 +233,11 @@ final class LogTab implements AdminTab
self::filterLabel('result', __('Nach Ergebnis filtern', 'wp-lit-mcp'));
echo '<select name="result" id="lit-mcp-filter-result">';
printf('<option value="">%s</option>', esc_html__('Alle Ergebnisse', 'wp-lit-mcp'));
$labels = ['ok' => __('erfolgreich', 'wp-lit-mcp'), 'partial' => __('teilweise', 'wp-lit-mcp')];
$labels = [
'ok' => __('erfolgreich', 'wp-lit-mcp'),
'partial' => __('teilweise', 'wp-lit-mcp'),
'refused' => __('abgelehnt', 'wp-lit-mcp'),
];
foreach (self::RESULTS as $result) {
printf(
'<option value="%s"%s>%s</option>',