<?php

namespace Planaday\Config\Course\Detail;

use Planaday\Config\Course\CourseOptionsEnum;
use Planaday\Config\OptionGroupEnum;

enum DetailOptionsEnum: string implements OptionGroupEnum {
	case SELECTED_DETAIL_PAGE = 'SELECTED_DETAIL_PAGE';
	case OVERRIDDEN_DETAIL_PAGE = 'OVERRIDDEN_DETAIL_PAGE';

	case COURSE_NOT_FOUND_PAGE = 'COURSE_NOT_FOUND_PAGE';

	case SHOW_SOOB_LABEL = 'SHOW_SOOB_LABEL';
	case SHOW_CODE_95_LABEL = 'SHOW_CODE_95_LABEL';
	case SHOW_LABELS = 'SHOW_LABELS';
	case SHOW_DAY_PART_COUNT = 'SHOW_DAY_PART_COUNT';
	case SHOW_DAY_PART_LIST = 'SHOW_DAY_PART_LIST';
	case SHOW_LOCATION_DAY_PART = 'SHOW_LOCATION_DAY_PART';
	case SHOW_E_LEARNING_DAY_PART = 'SHOW_E_LEARNING_DAY_PART';
	case SHOW_LEVEL_COURSE = 'SHOW_LEVEL_COURSE';
	case SHOW_DESCRIPTION_DAY_PART = 'SHOW_DESCRIPTION_DAY_PART';
	case SHOW_AVAILABILITY = 'SHOW_AVAILABILITY';
	case SHOW_START_GUARANTEE_LABEL = 'SHOW_START_GUARANTEE_LABEL';
	case SHOW_MONEY_BACK_LABEL = 'SHOW_MONEY_BACK_LABEL';
	case SHOW_FINANCIAL_INFO = 'SHOW_FINANCIAL_INFO';
	case SHOW_PRICE = 'SHOW_PRICE';
	case SHOW_PRICE_WITH_AND_WITHOUT_TAX = 'SHOW_PRICE_WITH_AND_WITHOUT_TAX';
	case SHOW_ICONS = 'SHOW_ICONS';
	case INCLUDE_E_LEARNING_DAY_PARTS = 'INCLUDE_E_LEARNING_DAY_PARTS';
	case SHOW_E_LEARNING_ICON = 'SHOW_E_LEARNING_ICON';
	case SHOW_DESCRIPTION = 'SHOW_DESCRIPTION';
	case SHOW_LABELS_DAY_PART = 'SHOW_LABELS_DAY_PART';

	public static function getClassName(): string {
		return DetailSettings::class;
	}

	public static function getParentEnum(): ?OptionGroupEnum {
		return CourseOptionsEnum::DETAIL_SETTINGS;
	}
}