const c = {
	NONE: Symbol('no loyalty card'),
	BAHNCARD: Symbol('Bahncard'),
	VORTEILSCARD: Symbol('VorteilsCard'),
	HALBTAXABO: Symbol('HalbtaxAbo'),
	VOORDEELURENABO: Symbol('Voordeelurenabo'),
	SHCARD: Symbol('SH-Card'),
	GENERALABONNEMENT: Symbol('General-Abonnement'),
};

// see https://gist.github.com/juliuste/202bb04f450a79f8fa12a2ec3abcd72d
const formatLoyaltyCard = (data) => {
	if (!data) {
		return {
			art: 'KEINE_ERMAESSIGUNG',
			klasse: 'KLASSENLOS',
		};
	}
	const cls = data.class === 1 ? 'KLASSE_1' : 'KLASSE_2';
	if (data.type.toString() === c.BAHNCARD.toString()) {
		return {
			art: 'BAHNCARD' + data.discount,
			klasse: cls,
		};
	}
	if (data.type.toString() === c.VORTEILSCARD.toString()) {
		return {
			art: 'A-VORTEILSCARD',
			klasse: 'KLASSENLOS',
		};
	}
	if (data.type.toString() === c.HALBTAXABO.toString()) {
		return {
			art: 'CH-HALBTAXABO_OHNE_RAILPLUS',
			klasse: 'KLASSENLOS',
		};
	}
	// TODO Rest
	if (data.type.toString() === c.GENERALABONNEMENT.toString()) {
		return {
			art: 'CH-GENERAL-ABONNEMENT',
			klasse: cls,
		};
	}
	return {
		art: 'KEINE_ERMAESSIGUNG',
		klasse: 'KLASSENLOS',
	};
};
export {
	c as data,
	formatLoyaltyCard,
};