CreaCaptcha

settings-manager.php

Shared settings-management service.

Export, import, reset and "load defaults" — used by both the backend "Werkzeuge" page and the WP-CLI commands.

Table of Contents

Constants

CREATIONELL_CAPTCHA_EXPORT_SCHEMA  = 1
Schema version of the settings-export format.

Functions

creationell_captcha_list_setting_keys()  : array<int, string>
Setting keys whose value is a list (every `textarea` field).
creationell_captcha_export_settings()  : array<string, mixed>
Builds the settings-export payload.
creationell_captcha_import_settings()  : array<string, mixed>|WP_Error
Validates and applies a settings-export payload.
creationell_captcha_reset_settings()  : void
Full factory reset: writes the complete default settings array, which also empties every list and drops stored keys outside the current field specification. Secrets, analytics counters and the event log are left untouched.
creationell_captcha_load_default_settings()  : void
Resets every non-list setting to its default while preserving the current list values (IP block/allow, UA block, interceptor paths).

Constants

CREATIONELL_CAPTCHA_EXPORT_SCHEMA

Schema version of the settings-export format.

public mixed CREATIONELL_CAPTCHA_EXPORT_SCHEMA = 1

Functions

creationell_captcha_list_setting_keys()

Setting keys whose value is a list (every `textarea` field).

creationell_captcha_list_setting_keys() : array<int, string>

Derived from the field specification so the list never drifts. "Load defaults" preserves these keys; "reset" clears them.

Return values
array<int, string>

creationell_captcha_export_settings()

Builds the settings-export payload.

creationell_captcha_export_settings() : array<string, mixed>

The HMAC secrets are deliberately excluded — they must never leave the site.

Return values
array<string, mixed>

creationell_captcha_import_settings()

Validates and applies a settings-export payload.

creationell_captcha_import_settings(array<string, mixed> $payload) : array<string, mixed>|WP_Error

The settings array is run through creationell_captcha_sanitize_settings(), so the same guarantees as the settings form apply: whitelisted selects, clamped numbers, bounded lists, unknown keys dropped, missing keys defaulted.

Parameters
$payload : array<string, mixed>

Decoded export payload.

Return values
array<string, mixed>|WP_Error —

On success: { imported, version_notice, source_notice }.

creationell_captcha_reset_settings()

Full factory reset: writes the complete default settings array, which also empties every list and drops stored keys outside the current field specification. Secrets, analytics counters and the event log are left untouched.

creationell_captcha_reset_settings() : void

creationell_captcha_load_default_settings()

Resets every non-list setting to its default while preserving the current list values (IP block/allow, UA block, interceptor paths).

creationell_captcha_load_default_settings() : void

Die übernommenen Listen laufen dabei durch dieselbe Eingabeprüfung wie ein regulärer Speichervorgang (E3a): ein Eintrag, der an den Plugin-Schreibwegen vorbei in die Option kam (wp option update, DB-Restore), überlebte „Standardwerte laden" bisher ungeprüft — auch dann, wenn die Prüfung ihn heute ablehnt.


        
On this page

Search results