mirror of
				https://github.com/mealie-recipes/mealie.git
				synced 2025-10-30 17:53:31 -04:00 
			
		
		
		
	fix: Meal Plan Notes allow Submission Without Title/Note Text (#4615)
Co-authored-by: Hayden <64056131+hay-kot@users.noreply.github.com>
This commit is contained in:
		| @@ -22,6 +22,7 @@ | |||||||
|         resetDialog(); |         resetDialog(); | ||||||
|       " |       " | ||||||
|       @close="resetDialog()" |       @close="resetDialog()" | ||||||
|  |       :submitDisabled="isCreateDisabled" | ||||||
|     > |     > | ||||||
|       <v-card-text> |       <v-card-text> | ||||||
|         <v-menu |         <v-menu | ||||||
| @@ -70,9 +71,10 @@ | |||||||
|             item-text="name" |             item-text="name" | ||||||
|             item-value="id" |             item-value="id" | ||||||
|             :return-object="false" |             :return-object="false" | ||||||
|  |             :rules="[requiredRule]" | ||||||
|           /> |           /> | ||||||
|           <template v-else> |           <template v-else> | ||||||
|             <v-text-field v-model="newMeal.title" :label="$t('meal-plan.meal-title')" /> |             <v-text-field v-model="newMeal.title" :rules="[requiredRule]" :label="$t('meal-plan.meal-title')" /> | ||||||
|             <v-textarea v-model="newMeal.text" rows="2" :label="$t('meal-plan.meal-note')" /> |             <v-textarea v-model="newMeal.text" rows="2" :label="$t('meal-plan.meal-note')" /> | ||||||
|           </template> |           </template> | ||||||
|         </v-card-text> |         </v-card-text> | ||||||
| @@ -253,6 +255,7 @@ export default defineComponent({ | |||||||
|     const api = useUserApi(); |     const api = useUserApi(); | ||||||
|     const { $auth } = useContext(); |     const { $auth } = useContext(); | ||||||
|     const { household } = useHouseholdSelf(); |     const { household } = useHouseholdSelf(); | ||||||
|  |     const requiredRule = (value: any) => !!value || "Required." | ||||||
|  |  | ||||||
|     const state = ref({ |     const state = ref({ | ||||||
|       dialog: false, |       dialog: false, | ||||||
| @@ -315,6 +318,14 @@ export default defineComponent({ | |||||||
|       userId: $auth.user?.id || "", |       userId: $auth.user?.id || "", | ||||||
|     }); |     }); | ||||||
|  |  | ||||||
|  |     const isCreateDisabled = computed(() => { | ||||||
|  |       if (dialog.note) { | ||||||
|  |         return !newMeal.title.trim(); | ||||||
|  |       } | ||||||
|  |       return !newMeal.recipeId; | ||||||
|  |     }); | ||||||
|  |  | ||||||
|  |  | ||||||
|     function openDialog(date: Date) { |     function openDialog(date: Date) { | ||||||
|       newMeal.date = format(date, "yyyy-MM-dd"); |       newMeal.date = format(date, "yyyy-MM-dd"); | ||||||
|       state.value.dialog = true; |       state.value.dialog = true; | ||||||
| @@ -373,6 +384,8 @@ export default defineComponent({ | |||||||
|       onMoveCallback, |       onMoveCallback, | ||||||
|       planTypeOptions, |       planTypeOptions, | ||||||
|       getEntryTypeText, |       getEntryTypeText, | ||||||
|  |       requiredRule, | ||||||
|  |       isCreateDisabled, | ||||||
|  |  | ||||||
|       // Dialog |       // Dialog | ||||||
|       dialog, |       dialog, | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user