fix(falukant): map house types to matching models
All checks were successful
Deploy to production / deploy (push) Successful in 1m50s
All checks were successful
Deploy to production / deploy (push) Successful in 1m50s
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
const HOUSE_MODELS = Object.freeze({
|
const LEGACY_HOUSE_MODELS = Object.freeze({
|
||||||
'Unter der Brücke': 'under_bridge',
|
'Unter der Brücke': 'under_bridge',
|
||||||
'Strohhütte': 'straw_hut',
|
'Strohhütte': 'straw_hut',
|
||||||
Holzhaus: 'wooden_house',
|
Holzhaus: 'wooden_house',
|
||||||
@@ -10,6 +10,11 @@ const HOUSE_MODELS = Object.freeze({
|
|||||||
Schloss: 'castle',
|
Schloss: 'castle',
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const MODEL_NAMES = new Set(Object.values(LEGACY_HOUSE_MODELS));
|
||||||
|
|
||||||
export function getFalukantHouseModel(houseType) {
|
export function getFalukantHouseModel(houseType) {
|
||||||
return HOUSE_MODELS[houseType?.labelTr] || 'under_bridge';
|
// HouseType.labelTr is the stable database key (e.g. "wooden_house"),
|
||||||
|
// while older data may still contain the German display label.
|
||||||
|
const key = houseType?.abbr || houseType?.labelTr;
|
||||||
|
return MODEL_NAMES.has(key) ? key : (LEGACY_HOUSE_MODELS[key] || 'under_bridge');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -133,7 +133,12 @@
|
|||||||
<h3>{{ $t('falukant.house.buyablehouses') }}</h3>
|
<h3>{{ $t('falukant.house.buyablehouses') }}</h3>
|
||||||
<div class="houses-list">
|
<div class="houses-list">
|
||||||
<div v-for="house in buyableHouses" :key="house.id" class="house-item">
|
<div v-for="house in buyableHouses" :key="house.id" class="house-item">
|
||||||
<div class="house-preview house-preview--static" aria-hidden="true">⌂</div>
|
<House3D
|
||||||
|
v-if="house.houseType?.labelTr"
|
||||||
|
class="house-preview"
|
||||||
|
:model="houseModel(house.houseType)"
|
||||||
|
:label="$t(`falukant.house.type.${house.houseType.labelTr}`)"
|
||||||
|
/>
|
||||||
<div class="house-info">
|
<div class="house-info">
|
||||||
<h4>{{ $t(`falukant.house.type.${house.houseType.labelTr}`) }}</h4>
|
<h4>{{ $t(`falukant.house.type.${house.houseType.labelTr}`) }}</h4>
|
||||||
<div class="buyable-house-stats">
|
<div class="buyable-house-stats">
|
||||||
@@ -594,16 +599,6 @@ h2 {
|
|||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.house-preview--static {
|
|
||||||
display: grid;
|
|
||||||
place-items: center;
|
|
||||||
color: #75553d;
|
|
||||||
background: linear-gradient(145deg, #f6ecd9, #dbc19a);
|
|
||||||
border: 1px solid rgba(117, 85, 61, 0.25);
|
|
||||||
font-size: 4rem;
|
|
||||||
line-height: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.house-info {
|
.house-info {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
Reference in New Issue
Block a user