add 'holder' in list of persons

This commit is contained in:
Julien Fastré 2021-06-17 23:10:18 +02:00
parent 9d58356b90
commit f1120af59e

View File

@ -11,11 +11,14 @@
</div>
<!-- member part -->
<div v-if="hasMembers" class="members">
<div v-if="hasCurrentMembers" class="members">
<span class="current-members">{{ $t('current_members') }}: </span>
<template v-for="(m, index) in current_members()" :key="m.id">
<template v-for="(m, index) in currentMembers()" :key="m.id">
<person :person="m.person"></person>
<span v-if="index != (current_members_length() - 1)">, </span>
<span v-if="m.holder">
&nbsp;<span class="badge badge-primary">{{ $t('holder') }}</span>
</span>
<span v-if="index != (currentMembersLength() - 1)">, </span>
</template>
</div>
<div v-else class="members">
@ -85,6 +88,7 @@ const i18n = {
"no_current_address": "Sans adresse actuellement",
"new_household": "Nouveau ménage",
"no_members_yet": "Aucun membre actuellement",
"holder": "titulaire",
}
}
}
@ -99,10 +103,28 @@ export default {
},
i18n,
methods: {
current_members() {
return this.household.members.filter(m => this.household.current_members_id.includes(m.id));
hasCurrentMembers() {
return this.household.current_members_id.length > 0;
},
current_members_length() {
currentMembers() {
return this.household.members.filter(m => this.household.current_members_id.includes(m.id))
.sort((a, b) => {
if (a.position.ordering < b.position.ordering) {
return -1;
}
if (a.position.ordering > b.position.ordering) {
return 1;
}
if (a.holder && !b.holder) {
return -1;
}
if (!a.holder && b.holder) {
return 1;
}
return 0;
});
},
currentMembersLength() {
return this.household.current_members_id.length;
},
isHouseholdNew() {