'array', 'sanitize_callback' => 'a11ybridge_sanitize_option_array')); register_setting('a11ybridge_ai_settings_group', 'a11ybridge_simplification_settings', [ 'sanitize_callback' => 'a11ybridge_sanitize_simplification_settings', ]); } if (!function_exists('a11ybridge_sanitize_simplification_settings')) { /** * Canonicalize stored admin simplification defaults to Catalog values. */ function a11ybridge_sanitize_simplification_settings($input) { $in = is_array($input) ? $input : []; $out = []; $out['enable_text_simplification'] = !empty($in['enable_text_simplification']) ? 1 : 0; $out['show_toolbar_button'] = !empty($in['show_toolbar_button']) ? 1 : 0; $out['consent_required'] = !empty($in['consent_required']) ? 1 : 0; $out['consent_ttl_hours'] = isset($in['consent_ttl_hours']) ? max(0, intval($in['consent_ttl_hours'])) : 24; $out['default_level'] = a11ybridge_catalog_canonical( 'textSimplification.level', (string)($in['default_level'] ?? ''), 'basic' ); $out['target_language'] = a11ybridge_catalog_canonical( 'textSimplification.targetLanguage', (string)($in['target_language'] ?? ''), 'original' ); return $out; } } // Render directly (avoid raw superglobals in file scope; keeps PHPCS happy) if (is_admin()) { $a11ybridge_page_raw = filter_input(INPUT_GET, 'page', FILTER_UNSAFE_RAW); $a11ybridge_page = is_string($a11ybridge_page_raw) ? sanitize_key(wp_unslash($a11ybridge_page_raw)) : ''; if ($a11ybridge_page === 'a11ybridge-settings') { a11ybridge_show_ai_settings(); } } function a11ybridge_show_ai_settings() { $ai_settings = get_option('a11ybridge_ai_settings', [ 'enable_ai_image_description' => false, 'description_level' => 'detailed', 'target_language' => 'german', 'auto_describe_on_upload' => true, 'daily_cron_check' => true ]); // While AI Alt-Text is not implemented yet, hard-disable its controls. // This avoids an UI that appears interactive but doesn't do anything. if (function_exists('a11ybridge_feature_state')) { $a11ybridge_alt_state = a11ybridge_feature_state('ai_alt_text'); if ($a11ybridge_alt_state === 'coming_soon' || $a11ybridge_alt_state === 'experimental') { $ai_settings['enable_ai_image_description'] = false; $ai_settings['auto_describe_on_upload'] = false; $ai_settings['daily_cron_check'] = false; } } $simplification_settings = get_option('a11ybridge_simplification_settings', [ 'enable_text_simplification' => false, 'default_level' => 'basic', 'target_language' => 'original', 'show_toolbar_button' => true, 'consent_required' => true, 'consent_ttl_hours' => 24 ]); // Canonicalize legacy stored values so UI + resolver + requests stay in sync. // (e.g. german/english, a2_level/b1_level, bullet_form/step_by_step, etc.) $simplification_settings['default_level'] = a11ybridge_catalog_alias( 'simplificationLevels', (string)($simplification_settings['default_level'] ?? 'basic') ); $simplification_settings['target_language'] = a11ybridge_catalog_alias( 'languages', (string)($simplification_settings['target_language'] ?? 'original') ); ?>

🤖

/> i '; ?>
/> i '; ?>
i '; ?>
i '; ?>
/> i '; ?>

📝

/> i '; ?>
i '; ?>
i '; ?>

đź’ľ

'a11y-button']); ?>

🚀