This commit is contained in:
Kuchenpirat 2025-07-12 15:10:29 +00:00
commit 94d55a7ca5

View file

@ -30,7 +30,7 @@
:rules="[validators.required]" :rules="[validators.required]"
/> />
<v-select <v-select
v-model="state.newUserData.household" v-model="newUserData.household"
:disabled="!selectedGroup" :disabled="!selectedGroup"
:items="households" :items="households"
item-title="name" item-title="name"
@ -42,7 +42,7 @@
:rules="[validators.required]" :rules="[validators.required]"
/> />
<AutoForm <AutoForm
v-model="state.newUserData" v-model="newUserData"
:items="userForm" :items="userForm"
/> />
</v-card-text> </v-card-text>
@ -78,27 +78,25 @@ const adminApi = useAdminApi();
const selectedGroup = ref<GroupInDB | undefined>(undefined); const selectedGroup = ref<GroupInDB | undefined>(undefined);
const households = computed(() => selectedGroup.value?.households || []); const households = computed(() => selectedGroup.value?.households || []);
const state = reactive({ const newUserData = ref({
newUserData: { username: "",
username: "", fullName: "",
fullName: "", email: "",
email: "", admin: false,
admin: false, group: computed(() => selectedGroup.value?.name || ""),
group: computed(() => selectedGroup.value?.name || ""), household: "",
household: "", advanced: false,
advanced: false, canInvite: false,
canInvite: false, canManage: false,
canManage: false, canOrganize: false,
canOrganize: false, password: "",
password: "", authMethod: "Mealie",
authMethod: "Mealie",
},
}); });
async function handleSubmit() { async function handleSubmit() {
if (!refNewUserForm.value?.validate()) return; if (!refNewUserForm.value?.validate()) return;
const { response } = await adminApi.users.createOne(state.newUserData as UserIn); const { response } = await adminApi.users.createOne(newUserData.value as UserIn);
if (response?.status === 201) { if (response?.status === 201) {
router.push("/admin/manage/users"); router.push("/admin/manage/users");