Merge branch 'develop' into feature/copy-to-new-recipe

This commit is contained in:
vabene1111
2022-02-17 10:55:59 +01:00
committed by GitHub
6 changed files with 81 additions and 9 deletions

View File

@ -210,6 +210,18 @@
<b-button pill variant="primary" size="sm" class="ml-1" @click="step.file_visible = true" v-if="!step.file_visible">
<i class="fas fa-plus-circle"></i> {{ $t("File") }}
</b-button>
<b-button
pill
variant="primary"
size="sm"
class="ml-1"
@click="
paste_step = step.id
$bvModal.show('id_modal_paste_ingredients')
"
>
<i class="fas fa-plus-circle"></i> {{ $t("paste_ingredients") }}
</b-button>
</div>
</div>
@ -516,6 +528,17 @@
</draggable>
</b-modal>
<!-- modal for pasting list of ingredients -->
<b-modal
id="id_modal_paste_ingredients"
v-bind:title="$t('ingredient_list')"
@ok="appendIngredients"
@cancel="paste_ingredients = paste_step = undefined"
@close="paste_ingredients = paste_step = undefined"
>
<b-form-textarea id="paste_ingredients" v-model="paste_ingredients" :placeholder="$t('paste_ingredients_placeholder')" rows="10"></b-form-textarea>
</b-modal>
<!-- form to create files on the fly -->
<generic-modal-form :model="Models.USERFILE" :action="Actions.CREATE" :show="show_file_create" @finish-action="fileCreated" />
</div>
@ -574,7 +597,8 @@ export default {
recipes_loading: false,
message: "",
options_limit: 25,
paste_ingredients: undefined,
paste_step: undefined,
show_file_create: false,
step_for_file_create: undefined,
}
@ -942,6 +966,29 @@ export default {
energy: function () {
return energyHeading()
},
appendIngredients: function () {
let ing_list = this.paste_ingredients.split(/\r?\n/)
let step = this.recipe.steps.findIndex((x) => x.id == this.paste_step)
let order = Math.max(...this.recipe.steps[step].ingredients.map((x) => x.order), -1) + 1
this.recipe.steps[step].ingredients_visible = true
ing_list.forEach((ing) => {
if (ing.trim() !== "") {
this.genericPostAPI("api_ingredient_from_string", { text: ing }).then((result) => {
let unit = null
if (result.data.unit !== "") {
unit = { name: result.data.unit }
}
this.recipe.steps[step].ingredients.splice(order, 0, {
amount: result.data.amount,
unit: unit,
food: { name: result.data.food },
note: result.data.note,
})
})
order++
}
})
},
},
}
</script>

View File

@ -207,8 +207,7 @@ export default {
if (!cancel) {
console.log("saving", { ...this.mealplan_settings, ...this.entryEditing })
this.$bvModal.hide(`edit-modal`)
this.$emit("save-entry", { ...this.mealplan_settings, ...this.entryEditing })
console.log("after emit", { ...this.mealplan_settings, ...this.entryEditing }.addshopping)
this.$emit("save-entry", { ...this.mealplan_settings, ...this.entryEditing, ...{ addshopping: this.entryEditing.addshopping && !this.autoMealPlan } })
}
},
deleteEntry() {

View File

@ -298,5 +298,8 @@
"review_shopping": "Review shopping entries before saving",
"view_recipe": "View Recipe",
"copy_to_new": "Copy To New Recipe",
"recipe_name": "Recipe Name"
"recipe_name": "Recipe Name",
"paste_ingredients_placeholder": "Paste ingredient list here...",
"paste_ingredients": "Paste Ingredients",
"ingredient_list": "Ingredient List"
}