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> </div>
<!-- member part --> <!-- member part -->
<div v-if="hasMembers" class="members"> <div v-if="hasCurrentMembers" class="members">
<span class="current-members">{{ $t('current_members') }}: </span> <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> <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> </template>
</div> </div>
<div v-else class="members"> <div v-else class="members">
@ -85,6 +88,7 @@ const i18n = {
"no_current_address": "Sans adresse actuellement", "no_current_address": "Sans adresse actuellement",
"new_household": "Nouveau ménage", "new_household": "Nouveau ménage",
"no_members_yet": "Aucun membre actuellement", "no_members_yet": "Aucun membre actuellement",
"holder": "titulaire",
} }
} }
} }
@ -99,10 +103,28 @@ export default {
}, },
i18n, i18n,
methods: { methods: {
current_members() { hasCurrentMembers() {
return this.household.members.filter(m => this.household.current_members_id.includes(m.id)); 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; return this.household.current_members_id.length;
}, },
isHouseholdNew() { isHouseholdNew() {