403)); } // Handle form submission if (isset($_POST['dwarpal_firewall_settings']) && isset($_POST['_wpnonce']) && wp_verify_nonce(sanitize_text_field(wp_unslash($_POST['_wpnonce'])), 'dwarpal_firewall_settings')) { $dwarpal_old_value = get_option('dwarpal_firewall_enabled', true); $dwarpal_new_value = isset($_POST['dwarpal_firewall_enabled']) ? 1 : 0; $dwarpal_result = update_option('dwarpal_firewall_enabled', $dwarpal_new_value); // Log the change if (class_exists('Dwarpal_Security')) { $dwarpal_security = new Dwarpal_Security(); $dwarpal_status = $dwarpal_new_value ? 'enabled' : 'disabled'; $dwarpal_security->log_event('settings_changed', sprintf('Firewall %s by user: %s', $dwarpal_status, wp_get_current_user()->user_login)); } if ($dwarpal_result !== false) { echo '

' . esc_html__('Settings saved. Firewall is now ', 'dwarpal') . ($dwarpal_new_value ? esc_html__('enabled', 'dwarpal') : esc_html__('disabled', 'dwarpal')) . '.

'; } else { echo '

' . esc_html__('Error: Settings could not be saved.', 'dwarpal') . '

'; } } elseif (isset($_POST['dwarpal_firewall_settings'])) { echo '

' . esc_html__('Security check failed. Please try again.', 'dwarpal') . '

'; } $dwarpal_firewall_enabled = get_option('dwarpal_firewall_enabled', true); ?>

>