Renamed: column -> exposure
Moved toggle_column_options to body_trackers helper
This commit is contained in:
@@ -10,7 +10,7 @@ class FoodsController < ApplicationController
|
||||
before_action :init_session_filters
|
||||
before_action :find_project_by_project_id,
|
||||
only: [:index, :new, :create, :nutrients, :filter, :autocomplete, :import]
|
||||
before_action :find_quantity_by_quantity_id, only: [:toggle_column]
|
||||
before_action :find_quantity_by_quantity_id, only: [:toggle_exposure]
|
||||
before_action :find_food, only: [:edit, :update, :destroy, :toggle]
|
||||
before_action :authorize
|
||||
|
||||
@@ -62,7 +62,7 @@ class FoodsController < ApplicationController
|
||||
prepare_nutrients
|
||||
end
|
||||
|
||||
def toggle_column
|
||||
def toggle_exposure
|
||||
@project.nutrient_exposures.toggle!(@quantity)
|
||||
prepare_nutrients
|
||||
end
|
||||
|
||||
@@ -7,9 +7,9 @@ class MeasurementsController < ApplicationController
|
||||
|
||||
before_action :init_session_filters
|
||||
before_action :find_project_by_project_id, only: [:index, :new, :create, :filter]
|
||||
before_action :find_quantity_by_quantity_id, only: [:toggle_column]
|
||||
before_action :find_quantity_by_quantity_id, only: [:toggle_exposure]
|
||||
before_action :find_measurement, only: [:edit, :update, :destroy, :retake]
|
||||
before_action :find_measurement_routine, only: [:readouts, :toggle_column]
|
||||
before_action :find_measurement_routine, only: [:readouts, :toggle_exposure]
|
||||
before_action :authorize
|
||||
|
||||
def index
|
||||
@@ -82,7 +82,7 @@ class MeasurementsController < ApplicationController
|
||||
prepare_readouts
|
||||
end
|
||||
|
||||
def toggle_column
|
||||
def toggle_exposure
|
||||
@routine.readout_exposures.toggle!(@quantity)
|
||||
prepare_readouts
|
||||
end
|
||||
|
||||
@@ -15,6 +15,16 @@ module BodyTrackersHelper
|
||||
t.strftime("%R") if t
|
||||
end
|
||||
|
||||
def toggle_exposure_options(enabled, domain)
|
||||
disabled = []
|
||||
enabled = enabled.to_a
|
||||
options = nested_set_options(@project.quantities.send(domain)) do |q|
|
||||
disabled << q.id if enabled.include?(q)
|
||||
raw("#{' ' * q.level}#{q.name}")
|
||||
end
|
||||
options_for_select(options, disabled: disabled)
|
||||
end
|
||||
|
||||
def unit_options
|
||||
@project.units.map do |u|
|
||||
[u.shortname, u.id]
|
||||
|
||||
@@ -5,16 +5,6 @@ module FoodsHelper
|
||||
end
|
||||
end
|
||||
|
||||
def toggle_column_options
|
||||
disabled = []
|
||||
enabled_quantities = @project.nutrient_quantities.to_a
|
||||
options = nested_set_options(@project.quantities.diet) do |q|
|
||||
disabled << q.id if enabled_quantities.include?(q)
|
||||
raw("#{' ' * q.level}#{q.name}")
|
||||
end
|
||||
options_for_select(options, disabled: disabled)
|
||||
end
|
||||
|
||||
def visibility_options(selected)
|
||||
options = [["visible", 1], ["hidden", 0]]
|
||||
options_for_select(options, selected)
|
||||
|
||||
@@ -5,16 +5,6 @@ module MeasurementsHelper
|
||||
.html_safe
|
||||
end
|
||||
|
||||
def toggle_column_options
|
||||
disabled = []
|
||||
enabled_quantities = @routine.quantities.to_a
|
||||
options = nested_set_options(@project.quantities.measurement) do |q|
|
||||
disabled << q.id if enabled_quantities.include?(q)
|
||||
raw("#{' ' * q.level}#{q.name}")
|
||||
end
|
||||
options_for_select(options, disabled: disabled)
|
||||
end
|
||||
|
||||
def quantity_options
|
||||
nested_set_options(@project.quantities.measurement) do |q|
|
||||
raw("#{' ' * q.level}#{q.name}")
|
||||
|
||||
@@ -4,7 +4,7 @@ class MeasurementRoutine < ActiveRecord::Base
|
||||
foreign_key: 'routine_id', dependent: :restrict_with_error,
|
||||
extend: BodyTracking::ItemsWithQuantities
|
||||
has_many :readout_exposures, as: :view, dependent: :destroy,
|
||||
class_name: 'Exposure', extend: BodyTracking::TogglableColumns
|
||||
class_name: 'Exposure', extend: BodyTracking::TogglableExposures
|
||||
has_many :quantities, -> { order "lft" }, through: :readout_exposures
|
||||
|
||||
validates :name, presence: true, uniqueness: {scope: :project_id}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<th style="width:<%= 100/total_width %>%" class="closable ellipsible">
|
||||
<div style="float:right;position:relative;">
|
||||
<%= link_to '',
|
||||
toggle_column_project_foods_path(@project, quantity_id: q.id),
|
||||
toggle_exposure_project_foods_path(@project, quantity_id: q.id),
|
||||
{class: "icon icon-close", method: :post, remote: true} %>
|
||||
</div>
|
||||
<%= q.name %>
|
||||
|
||||
@@ -1,14 +1,15 @@
|
||||
<fieldset id="options" class="collapsible">
|
||||
<legend onclick="toggleFieldset(this);"><%= l(:label_options) %></legend>
|
||||
<div>
|
||||
<%= form_tag toggle_column_project_foods_path(@project),
|
||||
id: 'toggle-column-form', name: 'toggle-column-form',
|
||||
<%= form_tag toggle_exposure_project_foods_path(@project),
|
||||
id: 'toggle-exposure-form', name: 'toggle-exposure-form',
|
||||
method: :post, remote: true do %>
|
||||
|
||||
<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.nutrient_quantities, :diet) %></td>
|
||||
<td><%= submit_tag l(:button_add) %></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
<% if @meals.any? { |m| m.persisted? } %>
|
||||
<%= render partial: 'meals/options' %>
|
||||
|
||||
<table id="meals" class="odd-even list">
|
||||
<tbody>
|
||||
<% @meals.group_by { |m| m.eaten_at ? m.eaten_at.to_date : Date.current }
|
||||
|
||||
17
app/views/meals/_options.html.erb
Normal file
17
app/views/meals/_options.html.erb
Normal file
@@ -0,0 +1,17 @@
|
||||
<fieldset id="options" class="collapsible">
|
||||
<legend onclick="toggleFieldset(this);"><%= l(:label_options) %></legend>
|
||||
<div>
|
||||
<%= form_tag toggle_exposure_project_meals_path(@project),
|
||||
id: 'toggle-exposure-form', name: 'toggle-exposure-form',
|
||||
method: :post, remote: true do %>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="width:100%"></td>
|
||||
<td><%= select_tag 'quantity_id', toggle_column_options %></td>
|
||||
<td><%= submit_tag l(:button_add) %></td>
|
||||
</tr>
|
||||
</table>
|
||||
<% end %>
|
||||
</div>
|
||||
</fieldset>
|
||||
@@ -1,14 +1,15 @@
|
||||
<fieldset id="options" class="collapsible">
|
||||
<legend onclick="toggleFieldset(this);"><%= l(:label_options) %></legend>
|
||||
<div>
|
||||
<%= form_tag toggle_column_measurement_routine_path(@routine),
|
||||
id: 'toggle-column-form', name: 'toggle-column-form',
|
||||
<%= form_tag toggle_exposure_measurement_routine_path(@routine),
|
||||
id: 'toggle-exposure-form', name: 'toggle-exposure-form',
|
||||
method: :post, remote: true do %>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td style="width:100%"></td>
|
||||
<td><%= select_tag 'quantity_id', toggle_column_options %></td>
|
||||
<td><%= select_tag 'quantity_id',
|
||||
toggle_exposure_options(@routine.quantities, :measurement) %></td>
|
||||
<td><%= submit_tag l(:button_add) %></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<th style="width:<%= 100/total_width %>%" class="closable ellipsible">
|
||||
<div style="float:right;position:relative;">
|
||||
<%= link_to '',
|
||||
toggle_column_measurement_routine_path(@routine, quantity_id: q.id),
|
||||
toggle_exposure_measurement_routine_path(@routine, quantity_id: q.id),
|
||||
{class: "icon icon-close", method: :post, remote: true} %>
|
||||
</div>
|
||||
<%= q.name %>
|
||||
|
||||
Reference in New Issue
Block a user