| @@ -100,17 +100,17 @@ | ||
| 100 | 100 | $response_code = $backoff['response_code']; |
| 101 | 101 | $endpoint_hash = $backoff['endpoint_hash']; |
| 102 | 102 | |
| 103 | 103 | $notice_class = 'notice notice-warning is-dismissible metasync-backoff-notice'; |
| 104 | - $notice_id = 'metasync-backoff-' . esc_attr($endpoint_hash); | |
| 104 | + $notice_id = 'metasync-backoff-' . $endpoint_hash; | |
| 105 | 105 | |
| 106 | 106 | $status_label = $response_code === 429 ? 'Rate Limited' : 'Service Unavailable'; |
| 107 | 107 | $status_icon = '⏸️'; |
| 108 | 108 | |
| 109 | 109 | ?> |
| 110 | - <div id="<?php echo $notice_id; ?>" class="<?php echo esc_attr($notice_class); ?>" data-endpoint-hash="<?php echo esc_attr($endpoint_hash); ?>"> | |
| 110 | + <div id="<?php echo esc_attr($notice_id); ?>" class="<?php echo esc_attr($notice_class); ?>" data-endpoint-hash="<?php echo esc_attr($endpoint_hash); ?>"> | |
| 111 | 111 | <div style="display: flex; align-items: flex-start; gap: 12px; padding: 4px 0;"> |
| 112 | - <div style="font-size: 24px; line-height: 1;"><?php echo $status_icon; ?></div> | |
| 112 | + <div style="font-size: 24px; line-height: 1;"><?php echo esc_html($status_icon); ?></div> | |
| 113 | 113 | <div style="flex: 1;"> |
| 114 | 114 | <p style="margin: 0 0 8px 0; font-weight: 600; font-size: 14px;"> |
| 115 | 115 | <strong>API Backoff Active:</strong> <?php echo esc_html($endpoint); ?> |
| 116 | 116 | </p> |
| @@ -153,9 +153,9 @@ | ||
| 153 | 153 | } |
| 154 | 154 | |
| 155 | 155 | // Check if on MetaSync settings page or any page with metasync in the ID |
| 156 | 156 | return strpos($screen->id, 'metasync') !== false || |
| 157 | - (isset($_GET['page']) && strpos($_GET['page'], 'metasync') !== false); | |
| 157 | + (isset($_GET['page']) && strpos($_GET['page'], 'metasync') !== false); // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- read-only page check to scope notice scripts | |
| 158 | 158 | } |
| 159 | 159 | |
| 160 | 160 | /** |
| 161 | 161 | * Enqueue admin scripts for notice handling |
| @@ -217,15 +217,8 @@ | ||
| 217 | 217 | |
| 218 | 218 | if (empty($endpoint_hash)) { |
| 219 | 219 | wp_send_json_error(['message' => 'Invalid endpoint hash']); |
| 220 | 220 | } |
| 221 | - | |
| 222 | - // Log the dismissal (notice will reappear on page refresh if still active) | |
| 223 | - error_log(sprintf( | |
| 224 | - '[MetaSync API_BACKOFF_NOTICE_DISMISSED] User %d dismissed notice for endpoint: %s', | |
| 225 | - get_current_user_id(), | |
| 226 | - $endpoint_hash | |
| 227 | - )); | |
| 228 | 221 | |
| 229 | 222 | wp_send_json_success(['message' => 'Notice dismissed']); |
| 230 | 223 | } |
| 231 | 224 | |