<?php if ( !defined( 'ABSPATH' ) ) exit;//PHPの宣言と直接アクセスの拒否

function haumenu_sanitize_content_add_patterns($value){
	$value = (array) $value;
	$original_value = get_option('hautility-option-01-addcontent'); // 元の値を保持

	/*** タブ切り替えパターンを使う ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['pattern-tab-switch'] ) && $value['pattern-tab-switch'] === '1' ) {
		$value['pattern-tab-switch'] = '1'; // 明示的に '1' を設定
	} else {
		$value['pattern-tab-switch'] = ''; // チェックされていない場合は空文字を設定
	}

	/*** タブの文字色 ***/
	/* テキストフィールド（HEX色） */
	if ( isset( $value['tab-switch-text-color'] ) && is_string( $value['tab-switch-text-color'] ) ) {
		$value['tab-switch-text-color'] = sanitize_hex_color( $value['tab-switch-text-color'] ); // サニタイズ
	} else {
		if ( isset( $original_value['tab-switch-text-color'] ) ) {
			$value['tab-switch-text-color'] = $original_value['tab-switch-text-color']; // 元の値を保持
		} else {
			$value['tab-switch-text-color'] = '';
		}
	}

	/*** タブの背景色 ***/
	if ( isset( $value['tab-switch-bg-color'] ) && is_string( $value['tab-switch-bg-color'] ) ) {
		$value['tab-switch-bg-color'] = sanitize_hex_color( $value['tab-switch-bg-color'] ); // サニタイズ
	} else {
		if ( isset( $original_value['tab-switch-bg-color'] ) ) {
			$value['tab-switch-bg-color'] = $original_value['tab-switch-bg-color']; // 元の値を保持
		} else {
			$value['tab-switch-bg-color'] = '';
		}
	}

	/*** タブとコンテンツの枠線色 ***/
	if ( isset( $value['tab-switch-border-color'] ) && is_string( $value['tab-switch-border-color'] ) ) {
		$value['tab-switch-border-color'] = sanitize_hex_color( $value['tab-switch-border-color'] ); // サニタイズ
	} else {
		if ( isset( $original_value['tab-switch-border-color'] ) ) {
			$value['tab-switch-border-color'] = $original_value['tab-switch-border-color']; // 元の値を保持
		} else {
			$value['tab-switch-border-color'] = '';
		}
	}

	/*** 選択時の文字色 ***/
	if ( isset( $value['tab-switch-selected-text-color'] ) && is_string( $value['tab-switch-selected-text-color'] ) ) {
		$value['tab-switch-selected-text-color'] = sanitize_hex_color( $value['tab-switch-selected-text-color'] ); // サニタイズ
	} else {
		if ( isset( $original_value['tab-switch-selected-text-color'] ) ) {
			$value['tab-switch-selected-text-color'] = $original_value['tab-switch-selected-text-color']; // 元の値を保持
		} else {
			$value['tab-switch-selected-text-color'] = '';
		}
	}

	/*** 選択時の背景色 ***/
	if ( isset( $value['tab-switch-selected-bg-color'] ) && is_string( $value['tab-switch-selected-bg-color'] ) ) {
		$value['tab-switch-selected-bg-color'] = sanitize_hex_color( $value['ttab-switch-selected-bg-color'] ); // サニタイズ
	} else {
		if ( isset( $original_value['tab-switch-selected-bg-color'] ) ) {
			$value['tab-switch-selected-bg-color'] = $original_value['tab-switch-selected-bg-color']; // 元の値を保持
		} else {
			$value['tab-switch-selected-bg-color'] = '';
		}
	}

	/*** タブをコンテンツ全体に広げ、各タブを等幅にする ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['tab-switch-equal-width'] ) && $value['tab-switch-equal-width'] === '1' ) {
		$value['tab-switch-equal-width'] = '1'; // 明示的に '1' を設定
	} else {
		$value['tab-switch-equal-width'] = ''; // チェックされていない場合は空文字を設定
	}

	/* ---------- ここまでに項目ごとの記述をする ---------- */
	return $value;//値を返す
}