Added MealsController#toggle_exposure
This commit is contained in:
parent
a4781b4fcd
commit
ab8ed92929
@ -6,6 +6,7 @@ class MealsController < ApplicationController
|
||||
include Concerns::Finders
|
||||
|
||||
before_action :find_project_by_project_id, only: [:index, :new, :create]
|
||||
before_action :find_quantity_by_quantity_id, only: [:toggle_exposure]
|
||||
before_action :find_meal, only: [:edit, :update, :destroy, :edit_notes, :update_notes,
|
||||
:toggle_eaten]
|
||||
before_action :authorize
|
||||
@ -59,6 +60,11 @@ class MealsController < ApplicationController
|
||||
prepare_meals
|
||||
end
|
||||
|
||||
def toggle_exposure
|
||||
@project.meal_exposures.toggle!(@quantity)
|
||||
prepare_meals
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def meal_params
|
||||
|
@ -8,7 +8,8 @@
|
||||
<table>
|
||||
<tr>
|
||||
<td style="width:100%"></td>
|
||||
<td><%= select_tag 'quantity_id', toggle_column_options %></td>
|
||||
<td><%= select_tag 'quantity_id',
|
||||
toggle_exposure_options(@project.meal_exposures, :diet) %></td>
|
||||
<td><%= submit_tag l(:button_add) %></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
@ -16,6 +16,9 @@ resources :projects, shallow: true do
|
||||
patch 'update_notes'
|
||||
post 'toggle_eaten'
|
||||
end
|
||||
collection do
|
||||
post 'toggle_exposure'
|
||||
end
|
||||
end
|
||||
resources :measurement_routines, only: [:show, :edit] do
|
||||
member do
|
||||
|
2
init.rb
2
init.rb
@ -25,7 +25,7 @@ Redmine::Plugin.register :body_tracking do
|
||||
body_trackers: [:defaults],
|
||||
ingredients: [:adjust],
|
||||
meals: [:new, :create, :edit, :update, :destroy, :edit_notes, :update_notes,
|
||||
:toggle_eaten],
|
||||
:toggle_eaten, :toggle_exposure],
|
||||
measurement_routines: [:edit],
|
||||
measurements: [:new, :create, :edit, :update, :destroy, :retake, :toggle_exposure],
|
||||
foods: [:new, :create, :edit, :update, :destroy, :toggle, :toggle_exposure,
|
||||
|
@ -1,20 +1,24 @@
|
||||
module BodyTracking::ProjectPatch
|
||||
Project.class_eval do
|
||||
has_many :meals, -> { order "eaten_at DESC" }, dependent: :destroy
|
||||
|
||||
has_many :measurement_routines, dependent: :destroy
|
||||
has_many :measurements, -> { order "taken_at DESC" }, dependent: :destroy,
|
||||
extend: BodyTracking::ItemsWithQuantities, through: :measurement_routines
|
||||
has_many :foods, -> { order "name" }, dependent: :destroy,
|
||||
extend: BodyTracking::ItemsWithQuantities
|
||||
|
||||
has_many :sources, dependent: :destroy
|
||||
has_many :quantities, -> { order "lft" }, dependent: :destroy
|
||||
has_many :units, dependent: :destroy
|
||||
|
||||
has_many :foods, -> { order "name" }, dependent: :destroy,
|
||||
extend: BodyTracking::ItemsWithQuantities
|
||||
has_many :nutrient_exposures, as: :view, dependent: :destroy,
|
||||
class_name: 'Exposure', extend: BodyTracking::TogglableExposures
|
||||
has_many :nutrient_quantities, -> { order "lft" }, through: :nutrient_exposures,
|
||||
source: 'quantity'
|
||||
|
||||
has_many :measurement_routines, dependent: :destroy
|
||||
has_many :measurements, -> { order "taken_at DESC" }, dependent: :destroy,
|
||||
extend: BodyTracking::ItemsWithQuantities, through: :measurement_routines
|
||||
|
||||
has_many :meals, -> { order "eaten_at DESC" }, dependent: :destroy
|
||||
has_many :meal_exposures, as: :view, dependent: :destroy,
|
||||
class_name: 'Exposure', extend: BodyTracking::TogglableExposures
|
||||
has_many :meal_quantities, -> { order "lft" }, through: :meal_exposures,
|
||||
source: 'quantity'
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user