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

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

	/*** 上へ戻るリンクを表示させる ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['enable-auto-top-link'] ) && $value['enable-auto-top-link'] === '1' ) {
		$value['enable-auto-top-link'] = '1'; // 明示的に '1' を設定
	} else {
		$value['enable-auto-top-link'] = ''; // チェックされていない場合は空文字を設定
	}

	/* 要素 */
	/* セレクトボックス */
	if ( isset( $value['auto-top-link-element'] ) ) {
		//選択肢に合わせてarrayの中身を変更
		if ( in_array( (string) $value['auto-top-link-element'], array( '1', '2', '3', '4', '5', '6' ), true ) ) {
			$value['auto-top-link-element'] = intval( $value['auto-top-link-element'] ); // 数値として保存する場合
		} else {
			// エラーメッセージの追加を削除
			$value['auto-top-link-element'] = isset( $original_value['auto-top-link-element'] ) ? $original_value['auto-top-link-element'] : ''; // 元の値を保持
		}
	} else {
		$value['auto-top-link-element'] = '1';
	}

	/*** 1つ目のリンク表示 ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['show-auto-top-link-1'] ) && $value['show-auto-top-link-1'] === '1' ) {
		$value['show-auto-top-link-1'] = '1'; // 明示的に '1' を設定
	} else {
		$value['show-auto-top-link-1'] = ''; // チェックされていない場合は空文字を設定
	}

	/*** 2つ目のリンク表示 ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['show-auto-top-link-2'] ) && $value['show-auto-top-link-2'] === '1' ) {
		$value['show-auto-top-link-2'] = '1'; // 明示的に '1' を設定
	} else {
		$value['show-auto-top-link-2'] = ''; // チェックされていない場合は空文字を設定
	}

	/*** 3つ目のリンク表示 ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['show-auto-top-link-3'] ) && $value['show-auto-top-link-3'] === '1' ) {
		$value['show-auto-top-link-3'] = '1'; // 明示的に '1' を設定
	} else {
		$value['show-auto-top-link-3'] = ''; // チェックされていない場合は空文字を設定
	}

	/*** 4つ目のリンク表示 ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['show-auto-top-link-4'] ) && $value['show-auto-top-link-4'] === '1' ) {
		$value['show-auto-top-link-4'] = '1'; // 明示的に '1' を設定
	} else {
		$value['show-auto-top-link-4'] = ''; // チェックされていない場合は空文字を設定
	}

	/*** 5つ目のリンク表示 ***/
	/* チェックボックス（存在するかどうか） */
	if ( isset( $value['show-auto-top-link-5'] ) && $value['show-auto-top-link-5'] === '1' ) {
		$value['show-auto-top-link-5'] = '1'; // 明示的に '1' を設定
	} else {
		$value['show-auto-top-link-5'] = ''; // チェックされていない場合は空文字を設定
	}

	/* 自動表示させる投稿タイプ */
	/* セレクトボックス */
	if ( isset( $value['auto-top-link-posttype'] ) ) {
		//選択肢に合わせてarrayの中身を変更
		if ( in_array( (string) $value['auto-top-link-posttype'], array( '1', '2', '3', '4' ), true ) ) {
			$value['auto-top-link-posttype'] = intval( $value['auto-top-link-posttype'] ); // 数値として保存する場合
		} else {
			// エラーメッセージの追加を削除
			$value['auto-top-link-posttype'] = isset( $original_value['auto-top-link-posttype'] ) ? $original_value['auto-top-link-posttype'] : ''; // 元の値を保持
		}
	} else {
		$value['auto-top-link-posttype'] = '1';
	}

	/*** リンクの文字列 ***/
/* テキストフィールド（文字列） */
	if ( isset( $value['auto-top-link-text'] ) && is_string( $value['auto-top-link-text'] ) ) {
		$value['auto-top-link-text'] = sanitize_text_field( $value['auto-top-link-text'] ); // サニタイズ
	} else {
		if ( isset( $original_value['auto-top-link-text'] ) ) {
			$value['auto-top-link-text'] = $original_value['auto-top-link-text']; // 元の値を保持
		} else {
			$value['auto-top-link-text'] = '';
		}
	}

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

	/*** ホーバー時の文字色 ***/
	if ( isset( $value['auto-top-link-text-color-hover'] ) && is_string( $value['auto-top-link-text-color-hover'] ) ) {
		$value['auto-top-link-text-color-hover'] = sanitize_hex_color( $value['auto-top-link-text-color-hover'] ); // サニタイズ
	} else {
		if ( isset( $original_value['auto-top-link-text-color-hover'] ) ) {
			$value['auto-top-link-text-color-hover'] = $original_value['auto-top-link-text-color-hover']; // 元の値を保持
		} else {
			$value['auto-top-link-text-color-hover'] = '';
		}
	}

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