[ 'label' => esc_html__('Dashboard', 'king-addons'), 'icon' => 'dashicons-chart-line', ], 'mode' => [ 'label' => esc_html__('Mode Settings', 'king-addons'), 'icon' => 'dashicons-admin-generic', ], 'page-builder' => [ 'label' => esc_html__('Page Builder', 'king-addons'), 'icon' => 'dashicons-welcome-widgets-menus', ], 'rules' => [ 'label' => esc_html__('Rules', 'king-addons'), 'icon' => 'dashicons-filter', ], 'schedule' => [ 'label' => esc_html__('Schedule', 'king-addons'), 'icon' => 'dashicons-clock', ], 'analytics' => [ 'label' => esc_html__('Analytics', 'king-addons'), 'icon' => 'dashicons-chart-area', ], 'import-export' => [ 'label' => esc_html__('Import Export', 'king-addons'), 'icon' => 'dashicons-upload', ], ]; $base_url = admin_url('admin.php?page=king-addons-maintenance-mode'); $current_view = array_key_exists($view, $tabs) ? $view : 'dashboard'; $message_code = isset($_GET['message']) ? sanitize_key($_GET['message']) : ''; $messages = [ 'saved' => esc_html__('Settings saved.', 'king-addons'), 'imported' => esc_html__('Settings imported.', 'king-addons'), 'analytics_reset' => esc_html__('Analytics reset.', 'king-addons'), 'token_generated' => esc_html__('Access token generated.', 'king-addons'), 'token_revoked' => esc_html__('Access token revoked.', 'king-addons'), 'password_revoked' => esc_html__('Password protection revoked.', 'king-addons'), 'error_import' => esc_html__('Import failed. Please check the JSON file.', 'king-addons'), ]; $has_message = $message_code !== '' && isset($messages[$message_code]); $is_token_message = in_array($message_code, ['token_generated', 'token_revoked'], true); $is_error_message = strpos($message_code, 'error_') === 0; // Token/password actions are displayed inline in the Mode view (Private Access card). if ($current_view === 'mode' && ($is_token_message || $message_code === 'password_revoked')) { $has_message = false; } $enabled = !empty($settings['enabled']); $mode = $settings['mode'] ?? 'coming_soon'; ?>