Add form for nami
This commit is contained in:
parent
3a83c46430
commit
57555afe2b
|
@ -90,29 +90,33 @@
|
||||||
</p>
|
</p>
|
||||||
<div class="grid gap-2 mt-6">
|
<div class="grid gap-2 mt-6">
|
||||||
<accordion v-model="openValue" :index="index" :title="member.innerFormName" v-for="(member, index) in inner" :key="index" type="success">
|
<accordion v-model="openValue" :index="index" :title="member.innerFormName" v-for="(member, index) in inner" :key="index" type="success">
|
||||||
<template v-for="(memberField, memberIndex) in memberFields">
|
<div class="mt-6" :class="containerClasses">
|
||||||
<v-checkbox
|
<template v-for="(memberField, memberIndex) in memberFields">
|
||||||
v-if="memberField.type === 'CheckboxField'"
|
<v-checkbox
|
||||||
v-model="member[memberField.key]"
|
v-if="memberField.type === 'CheckboxField'"
|
||||||
:name="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
v-model="member[memberField.key]"
|
||||||
:id="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
:name="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
||||||
:label="memberField.name"
|
:id="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
||||||
intro=""
|
:label="memberField.description"
|
||||||
></v-checkbox>
|
intro=""
|
||||||
<v-dropdown
|
:class="colClassesForField(memberField)"
|
||||||
v-if="memberField.type === 'DropdownField'"
|
></v-checkbox>
|
||||||
v-model="member[memberField.key]"
|
<v-dropdown
|
||||||
:name="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
v-if="memberField.type === 'DropdownField'"
|
||||||
:id="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
v-model="member[memberField.key]"
|
||||||
:label="memberField.name"
|
:name="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
||||||
:allowcustom="false"
|
:id="`${field.key}-memberattr-${member.id}-${memberField.key}`"
|
||||||
:options="
|
:label="memberField.name"
|
||||||
memberField.options.map((o) => {
|
:allowcustom="false"
|
||||||
return {id: o, name: o};
|
:class="colClassesForField(memberField)"
|
||||||
})
|
:options="
|
||||||
"
|
memberField.options.map((o) => {
|
||||||
></v-dropdown>
|
return {id: o, name: o};
|
||||||
</template>
|
})
|
||||||
|
"
|
||||||
|
></v-dropdown>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
</accordion>
|
</accordion>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex justify-center mt-5">
|
<div class="flex justify-center mt-5">
|
||||||
|
@ -143,8 +147,10 @@ import useAdremaLogin from '../../composables/useAdremaLogin.js';
|
||||||
import useEventMeta from '../../composables/useEventMeta.js';
|
import useEventMeta from '../../composables/useEventMeta.js';
|
||||||
import Pagination from '../Pagination.vue';
|
import Pagination from '../Pagination.vue';
|
||||||
import Accordion from '../Accordion.vue';
|
import Accordion from '../Accordion.vue';
|
||||||
|
import useColumns from '../../composables/useColumns.js';
|
||||||
|
|
||||||
const eventMeta = useEventMeta();
|
const eventMeta = useEventMeta();
|
||||||
|
const {colClassesForField, containerClasses} = useColumns();
|
||||||
const {login, logout, user, loginData, searchData, searchForMember, resetSearchData, searchResults, searching} = useAdremaLogin();
|
const {login, logout, user, loginData, searchData, searchForMember, resetSearchData, searchResults, searching} = useAdremaLogin();
|
||||||
|
|
||||||
if (user.value !== null) {
|
if (user.value !== null) {
|
||||||
|
@ -190,7 +196,7 @@ const props = defineProps({
|
||||||
|
|
||||||
const defaultMember = computed(() => {
|
const defaultMember = computed(() => {
|
||||||
var fields = {};
|
var fields = {};
|
||||||
memberFields.value.forEach((field) => (fields[field.key] = field.default));
|
memberFields.value.forEach((field) => (fields[field.key] = field.value));
|
||||||
|
|
||||||
return fields;
|
return fields;
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue