<?php

namespace Planaday\Config\Booking\Form\Student;

use Planaday\Config\Booking\Form\BookingFormOptionsEnum;
use Planaday\Config\OptionGroupEnum;

enum StudentOptionsEnum: string implements OptionGroupEnum{

	case ASK_ADDRESS = 'ASK_ADDRESS';
	case ASK_IF_CONTACT = 'ASK_IF_CONTACT';
	case ASK_NICK_NAME = 'ASK_NICK_NAME';
	case ASK_MAIDEN_NAME = 'ASK_MAIDEN_NAME';
	case ASK_INTERNAL_REFERENCE = 'ASK_INTERNAL_REFERENCE';
	case ASK_COMPANY_POSITION = 'ASK_COMPANY_POSITION';
	case ASK_COST_CENTER_CODE = 'ASK_COST_CENTER_CODE';
	case ASK_EMPLOYEE_NUMBER = 'ASK_EMPLOYEE_NUMBER';
	case ASK_DATE_OF_BIRTH = 'ASK_DATE_OF_BIRTH';
	case ASK_PLACE_OF_BIRTH = 'ASK_PLACE_OF_BIRTH';
	case ASK_PHONE_NUMBER = 'ASK_PHONE_NUMBER';
	case ASK_GENDER = 'ASK_GENDER';
	case ASK_INITIALS = 'ASK_INITIALS';

	case ASK_CODE_95 = 'ASK_CODE_95';
	case ASK_SOOB = 'ASK_SOOB';

	case ASK_REMARK = 'ASK_REMARK';

	case COST_CENTER_CODE_REQUIRED = 'COST_CENTER_CODE_REQUIRED';
	case DATE_OF_BIRTH_REQUIRED = 'DATE_OF_BIRTH_REQUIRED';
	case PLACE_OF_BIRTH_REQUIRED = 'PLACE_OF_BIRTH_REQUIRED';
	case PHONE_NUMBER_REQUIRED = 'PHONE_NUMBER_REQUIRED';
	case COMPANY_POSITION_REQUIRED = 'COMPANY_POSITION_REQUIRED';
	case GENDER_REQUIRED = 'GENDER_REQUIRED';
	case INITIALS_REQUIRED = 'INITIALS_REQUIRED';

	case TERMS_AND_CONDITIONS_REQUIRED = 'TERMS_AND_CONDITIONS_REQUIRED';
	case TERMS_AND_CONDITIONS_URL = 'TERMS_AND_CONDITIONS_URL';

	case COST_CENTER_CODE_TEXT = 'COST_CENTER_CODE_TEXT';
	case CODE_95_TEXT = 'CODE_95_TEXT';
	case SOOB_TEXT = 'SOOB_TEXT';

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

	public static function getParentEnum(): ?OptionGroupEnum {
		return BookingFormOptionsEnum::STUDENT;
	}
}