diff --git a/app/controllers/task_lists_controller.rb b/app/controllers/task_lists_controller.rb index b321401..a48e1e8 100644 --- a/app/controllers/task_lists_controller.rb +++ b/app/controllers/task_lists_controller.rb @@ -1,7 +1,7 @@ class TaskListsController < ApplicationController before_action :ensure_valid_user - before_action :set_task_list, only: [:show, :update, :destroy] + before_action :set_task_list, only: [:show, :update, :destroy, :add_recipe] def index @task_lists = TaskList.for_user(current_user).includes(:task_items).order(created_at: :desc) @@ -40,6 +40,16 @@ class TaskListsController < ApplicationController head :no_content end end + + def add_recipe + ensure_owner(@task_list) do + recipe = Recipe.find(params[:recipe_id]) + + @task_list.add_recipe_ingredients(recipe) + + head :no_content + end + end private diff --git a/app/javascript/components/RecipeShow.vue b/app/javascript/components/RecipeShow.vue index c249bf9..5065b47 100644 --- a/app/javascript/components/RecipeShow.vue +++ b/app/javascript/components/RecipeShow.vue @@ -37,6 +37,11 @@