Created common contextual menu for ingredient/nutrients views
Restored sidebar for nutrients view
This commit is contained in:
@@ -9,10 +9,31 @@ class IngredientsController < ApplicationController
|
||||
@ingredient = @project.ingredients.new
|
||||
# passing attr for Nutrient after_initialize
|
||||
@ingredient.nutrients.new(ingredient: @ingredient)
|
||||
|
||||
@ingredients = @project.ingredients.includes(:ref_unit, :source)
|
||||
@ingredients << @ingredient
|
||||
end
|
||||
|
||||
def nutrients
|
||||
@ingredient = @project.ingredients.new
|
||||
@ingredient.nutrients.new(ingredient: @ingredient)
|
||||
|
||||
ingredients = @project.ingredients.includes(:ref_unit, nutrients: [:quantity, :unit])
|
||||
@header = @project.quantities.where(primary: true)
|
||||
@nutrients = Hash.new { |h,k| h[k] = {} }
|
||||
@descriptions = Hash.new { |h,k| h[k] = [] }
|
||||
ingredients.each do |i|
|
||||
i.nutrients.sort_by { |n| n.quantity.lft }.each do |n|
|
||||
if @header.include?(n.quantity)
|
||||
@nutrients[i.name][n.quantity_id] = "#{n.amount} [#{n.unit.shortname}]"
|
||||
else
|
||||
@descriptions[i.name] << "#{n.quantity.name}: #{n.amount} [#{n.unit.shortname}]"
|
||||
end
|
||||
end
|
||||
end
|
||||
@descriptions.each { |k, v| @descriptions[k] = v.join(", ") }
|
||||
end
|
||||
|
||||
def create
|
||||
@ingredient = @project.ingredients.new(ingredient_params)
|
||||
if @ingredient.save
|
||||
@@ -138,23 +159,6 @@ class IngredientsController < ApplicationController
|
||||
redirect_to project_ingredients_url(@project)
|
||||
end
|
||||
|
||||
def nutrients
|
||||
ingredients = @project.ingredients.includes(:ref_unit, nutrients: [:quantity, :unit])
|
||||
@header = @project.quantities.where(primary: true)
|
||||
@nutrients = Hash.new { |h,k| h[k] = {} }
|
||||
@descriptions = Hash.new { |h,k| h[k] = [] }
|
||||
ingredients.each do |i|
|
||||
i.nutrients.sort_by { |n| n.quantity.lft }.each do |n|
|
||||
if @header.include?(n.quantity)
|
||||
@nutrients[i.name][n.quantity_id] = "#{n.amount} [#{n.unit.shortname}]"
|
||||
else
|
||||
@descriptions[i.name] << "#{n.quantity.name}: #{n.amount} [#{n.unit.shortname}]"
|
||||
end
|
||||
end
|
||||
end
|
||||
@descriptions.each { |k, v| @descriptions[k] = v.join(", ") }
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def ingredient_params
|
||||
|
||||
Reference in New Issue
Block a user