db-vendo-client/p/db/loyalty-cards.js
Kristjan ESPERANTO 66d9fb5194
apply linting rules
follow-up of 228c7253
2024-02-10 16:50:12 +01:00

51 lines
1 KiB
JavaScript

// todo: generate from https://reiseauskunft.bahn.de/addons/fachkonfig-utf8.cfg ?
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.type === c.BAHNCARD) {
if (data.discount === 25) {
return data.class === 1
? 1
: 2;
}
if (data.discount === 50) {
return data.class === 1
? 3
: 4;
}
}
if (data.type === c.VORTEILSCARD) {
return 9;
}
if (data.type === c.HALBTAXABO) {
return data.railplus
? 10
: 11;
}
if (data.type === c.VOORDEELURENABO) {
return data.railplus
? 12
: 13;
}
if (data.type === c.SHCARD) {
return 14;
}
if (data.type === c.GENERALABONNEMENT) {
return 15;
}
return 0;
};
export {
c as data,
formatLoyaltyCard,
};