feat(overview): add minimum office status label logic and update related translations
This commit is contained in:
@@ -234,7 +234,7 @@
|
|||||||
},
|
},
|
||||||
"statusValue": {
|
"statusValue": {
|
||||||
"currentAndMinimum": "{current} (minimum: {minimum})",
|
"currentAndMinimum": "{current} (minimum: {minimum})",
|
||||||
"office": { "none": "walay katungdanan", "minimum": "katungdanan nga ranggo {rank} o mas taas" },
|
"office": { "none": "walay katungdanan", "minimum": "katungdanan nga ranggo {rank} o mas taas", "minimumList": "{offices}, o mas taas nga katungdanan" },
|
||||||
"house": { "none": "walay balay" }
|
"house": { "none": "walay balay" }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -220,7 +220,8 @@
|
|||||||
"currentAndMinimum": "{current} (mindestens: {minimum})",
|
"currentAndMinimum": "{current} (mindestens: {minimum})",
|
||||||
"office": {
|
"office": {
|
||||||
"none": "kein Amt",
|
"none": "kein Amt",
|
||||||
"minimum": "ein Amt ab Rang {rank}"
|
"minimum": "ein Amt ab Rang {rank}",
|
||||||
|
"minimumList": "{offices} oder ein höheres Amt"
|
||||||
},
|
},
|
||||||
"house": {
|
"house": {
|
||||||
"none": "kein Haus"
|
"none": "kein Haus"
|
||||||
|
|||||||
@@ -224,7 +224,7 @@
|
|||||||
},
|
},
|
||||||
"statusValue": {
|
"statusValue": {
|
||||||
"currentAndMinimum": "{current} (minimum: {minimum})",
|
"currentAndMinimum": "{current} (minimum: {minimum})",
|
||||||
"office": { "none": "no office", "minimum": "an office of rank {rank} or higher" },
|
"office": { "none": "no office", "minimum": "an office of rank {rank} or higher", "minimumList": "{offices}, or a higher office" },
|
||||||
"house": { "none": "no house" }
|
"house": { "none": "no house" }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -217,7 +217,7 @@
|
|||||||
},
|
},
|
||||||
"statusValue": {
|
"statusValue": {
|
||||||
"currentAndMinimum": "{current} (mínimo: {minimum})",
|
"currentAndMinimum": "{current} (mínimo: {minimum})",
|
||||||
"office": { "none": "sin cargo", "minimum": "un cargo de rango {rank} o superior" },
|
"office": { "none": "sin cargo", "minimum": "un cargo de rango {rank} o superior", "minimumList": "{offices} o un cargo superior" },
|
||||||
"house": { "none": "sin casa" }
|
"house": { "none": "sin casa" }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -217,7 +217,7 @@
|
|||||||
},
|
},
|
||||||
"statusValue": {
|
"statusValue": {
|
||||||
"currentAndMinimum": "{current} (minimum : {minimum})",
|
"currentAndMinimum": "{current} (minimum : {minimum})",
|
||||||
"office": { "none": "aucune fonction", "minimum": "une fonction de rang {rank} ou supérieur" },
|
"office": { "none": "aucune fonction", "minimum": "une fonction de rang {rank} ou supérieur", "minimumList": "{offices}, ou une fonction supérieure" },
|
||||||
"house": { "none": "aucune maison" }
|
"house": { "none": "aucune maison" }
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -830,7 +830,7 @@ export default {
|
|||||||
},
|
},
|
||||||
certificateMinimumStatusValueLabel(type, required) {
|
certificateMinimumStatusValueLabel(type, required) {
|
||||||
if (type === 'officePoints') {
|
if (type === 'officePoints') {
|
||||||
return this.$t('falukant.overview.certificate.statusValue.office.minimum', { rank: required });
|
return this.certificateMinimumOfficeStatusLabel(required);
|
||||||
}
|
}
|
||||||
if (type === 'nobilityPoints') {
|
if (type === 'nobilityPoints') {
|
||||||
const gender = this.falukantUser?.character?.gender || 'male';
|
const gender = this.falukantUser?.character?.gender || 'male';
|
||||||
@@ -848,10 +848,28 @@ export default {
|
|||||||
certificateHouseStatusLabel(position, fallbackLabel = null) {
|
certificateHouseStatusLabel(position, fallbackLabel = null) {
|
||||||
const value = Number(position || 0);
|
const value = Number(position || 0);
|
||||||
if (!value) return this.$t('falukant.overview.certificate.statusValue.house.none');
|
if (!value) return this.$t('falukant.overview.certificate.statusValue.house.none');
|
||||||
const key = `falukant.nobility.advance.housePosition.${value}`;
|
const key = `falukant.nobility.housePosition.${value}`;
|
||||||
return this.$te(key)
|
return this.$te(key)
|
||||||
? this.$t(key)
|
? this.$t(key)
|
||||||
: (fallbackLabel || this.$t('falukant.nobility.advance.housePosition.fallback', { level: value }));
|
: (fallbackLabel || this.$t('falukant.nobility.housePosition.fallback', { level: value }));
|
||||||
|
},
|
||||||
|
certificateMinimumOfficeStatusLabel(required) {
|
||||||
|
const officesByRank = {
|
||||||
|
1: { political: ['assessor', 'councillor'], church: ['village-priest'] },
|
||||||
|
2: { political: ['council', 'beadle', 'town-clerk', 'master-builder', 'village-major', 'taxman', 'hangman'], church: ['parish-priest'] },
|
||||||
|
3: { political: ['mayor', 'judge', 'bailif', 'sheriff', 'consultant', 'territorial-council'], church: ['dean'] },
|
||||||
|
4: { political: ['treasurer', 'territorial-council-speaker', 'ruler-consultant', 'state-administrator', 'ministry-helper'], church: ['archdeacon'] },
|
||||||
|
5: { political: ['super-state-administrator', 'governor', 'minister'], church: ['bishop'] },
|
||||||
|
};
|
||||||
|
const offices = officesByRank[Number(required)];
|
||||||
|
if (!offices) return this.formatCertificateValue(required);
|
||||||
|
const labels = [
|
||||||
|
...offices.political.map((name) => this.$t(`falukant.politics.offices.${name}`)),
|
||||||
|
...offices.church.map((name) => this.$t(`falukant.church.offices.${name}`)),
|
||||||
|
];
|
||||||
|
return this.$t('falukant.overview.certificate.statusValue.office.minimumList', {
|
||||||
|
offices: labels.join(', '),
|
||||||
|
});
|
||||||
},
|
},
|
||||||
async fetchPotentialHeirs() {
|
async fetchPotentialHeirs() {
|
||||||
this.loadingHeirs = true;
|
this.loadingHeirs = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user