<?php

namespace Pixalia\ImageAssistant\Repository;

use Pixalia\ImageAssistant\Base\Const\PixaliaConst;

class OptionRepository {
	public function __construct() {
	}


	/**
	 * 最後にチェックしたロジックバージョンを取得します
	 *
	 * @return int
	 */
	public function getLastCheckVersion(): int {
		// DBから最後にチェックしたロジックバージョンを取得
		$version = get_option( PixaliaConst::OPTION_LAST_CHECK_VERSION, 0 );

		return (int) $version;
	}

	/**
	 * 最後にチェックしたロジックバージョンを更新します
	 *
	 * @param int $version *
	 *
	 * @return void
	 */
	public function updateLastCheckVersion( int $version ): void {
		// DBに現在のロジックバージョンを保存
		update_option( PixaliaConst::OPTION_LAST_CHECK_VERSION, $version );
	}

	public function getApiKey() {
		return get_option( PixaliaConst::OPTION_API_KEY, '' );
	}

	public function getDefaultStyle(): string {
		return (string)get_option( PixaliaConst::OPTION_DEFAULT_STYLE, PixaliaConst::IMAGE_DEFAULT_STYLE );
	}

	public function getDefaultAspectRatio(): string {
		return (string)get_option( PixaliaConst::OPTION_DEFAULT_ASPECT, PixaliaConst::IMAGE_DEFAULT_ASPECT );
	}

	public function updateDefaultStyle( string $style): void {
		update_option( PixaliaConst::OPTION_DEFAULT_STYLE, $style );
	}

	public function updateDefaultAspectRatio( string $aspect ): void {
		update_option( PixaliaConst::OPTION_DEFAULT_ASPECT, $aspect );
	}
}