diff --git a/app/helpers/meals_helper.rb b/app/helpers/meals_helper.rb index 2702908..4da7c4a 100644 --- a/app/helpers/meals_helper.rb +++ b/app/helpers/meals_helper.rb @@ -5,9 +5,14 @@ module MealsHelper delete_link(meal_path(m), {remote: true, data: {}}) end - def display_notes(m) - content_tag(:span, m.notes) + - link_to(l(:button_notes), edit_notes_meal_path(m), - {remote: true, class: "icon icon-wiki-page", style: "float: right"}) + def adjustment_buttons(i) + {'- -' => -10, '-' => -1, '+' => 1, '++' => 10}.map do |text, value| + link_to text, adjust_ingredient_path(i, adjustment: value), + {remote: true, method: :post, class: "button #{value>0 ? 'green' : 'red'}"} + end.reduce(&:+) + end + + def notes(m) + content_tag(:span, m.notes) end end diff --git a/app/views/meals/_edit_notes_form.html.erb b/app/views/meals/_edit_notes_form.html.erb index b55ce1e..cd2972c 100644 --- a/app/views/meals/_edit_notes_form.html.erb +++ b/app/views/meals/_edit_notes_form.html.erb @@ -3,11 +3,5 @@ remote: true, html: {id: 'edit-meal-notes-form', name: 'edit-meal-notes-form'} do |f| %> - <%= f.text_field :notes, size: 40, required: false, label: '' %> - <%= link_to l(:button_save), '', class: 'icon icon-save', - onclick: "$(event.target).closest('form').submit(); return false;" %> - <%= link_to l(:button_cancel), '', class: 'icon icon-cancel', - onclick: "$(event.target).closest('form').remove(); - $('td[id=notes-#{@meal.id}]').contents().show(); - return false;" %> + <%= f.text_field :notes, required: false, label: '', style: "width: 100%;" %> <% end %> diff --git a/app/views/meals/_index.html.erb b/app/views/meals/_index.html.erb index 16ade3a..5a3b2de 100644 --- a/app/views/meals/_index.html.erb +++ b/app/views/meals/_index.html.erb @@ -4,7 +4,7 @@ <% @meals.group_by { |m| m.eaten_at ? m.eaten_at.to_date : Date.current } .sort_by {|k,v| k }.reverse.each do |date, meals| %> - +

<%= date == Date.current ? 'Today' : date.strftime('%F') %>

diff --git a/app/views/meals/_show.html.erb b/app/views/meals/_show.html.erb index c745806..93d8ae4 100644 --- a/app/views/meals/_show.html.erb +++ b/app/views/meals/_show.html.erb @@ -1,5 +1,5 @@ - + <%= "#{t '.label_meal'} ##{index+1}" %> <% if m.eaten_at %> <%= " at #{m.eaten_at.strftime('%R')}" %> @@ -10,29 +10,37 @@ {remote: true, method: :post, class: "icon icon-time"} %> <% end %> - <%= display_notes(m) %> - <%= meal_links(m) %> + + <%= link_to l(:button_cancel), '', class: 'icon icon-cancel', style: 'display: none;', + onclick: "$(event.target).closest('tr').find('form').remove(); + $('td[id=notes-#{m.id}]').contents().show(); + $('td[id=notes-links-#{m.id}] a').toggle(); + return false;" %> + + <%= link_to l(:button_save), '', class: 'icon icon-save', style: 'display: none;', + onclick: "$(event.target).closest('tr').find('form').submit(); return false;" %> + + <%= link_to l(:button_notes), edit_notes_meal_path(m), remote: true, + class: "icon icon-wiki-page" %> + + + <%= notes(m) %> + + <%= meal_links(m) %> <% m.ingredients.each do |i| %> - <%= i.food.name %> - - <% {'- -' => -10, '-' => -1, nil => 0, '+' => 1, '++' => 10}.map do |text, value| %> - <% if text %> - <%= link_to text, adjust_ingredient_path(i, adjustment: value), - {remote: true, method: :post, class: "button #{value>0 ? 'green' : 'red'}"} %> - <% else %> - - - <%= i.amount %>[<%= i.food.ref_unit.shortname %>] - - - <% end %> - <% end %> + <%= i.food.name %> + + <%= i.amount %>[<%= i.food.ref_unit.shortname %>] + + + <%# Moved to helper to avoid spaces between buttons %> + <%= adjustment_buttons(i) %> - <% end %> diff --git a/app/views/meals/edit_notes.js.erb b/app/views/meals/edit_notes.js.erb index 56e1c03..878196d 100644 --- a/app/views/meals/edit_notes.js.erb +++ b/app/views/meals/edit_notes.js.erb @@ -1,4 +1,5 @@ -var box = $('td[id=notes-<%= @meal.id %>]'); -box.contents().hide(); -box.append('<%= j render partial: 'meals/edit_notes_form' %>'); -box.find('input[type=text]').focus(); +var notes = $('td[id=notes-<%= @meal.id %>]'); +notes.contents().hide(); +notes.append('<%= j render partial: 'meals/edit_notes_form' %>'); +notes.find('input[type=text]').focus(); +$('td[id=notes-links-<%= @meal.id %>] a').toggle(); diff --git a/app/views/meals/update_notes.js.erb b/app/views/meals/update_notes.js.erb index f628ba6..fa5db5a 100644 --- a/app/views/meals/update_notes.js.erb +++ b/app/views/meals/update_notes.js.erb @@ -1,2 +1,2 @@ -var box = $('td[id=notes-<%= @meal.id %>]'); -box.html('<%= j display_notes(@meal) %>'); +$('td[id=notes-<%= @meal.id %>]').html('<%= j notes(@meal) %>'); +$('td[id=notes-links-<%= @meal.id %>] a').toggle();