Commit e113ec0

mo khan <mo@mokhan.ca>
2017-02-18 16:19:04
fix the range selection.
1 parent 46eecdf
Changed files (3)
app
app/controllers/workouts_controller.rb
@@ -3,7 +3,7 @@ class WorkoutsController < ApplicationController
 
   def index
     @ranges = [5.years, 1.year, 6.months, 3.months, 1.month, 2.weeks, 1.week].reverse
-    @exercise = Exercise.find_by(name: params[:exercise])
+    @exercise = Exercise.find_by(id: params[:exercise])
     @primary_exercises = Exercise.primary.order_by_name.to_a
     @workouts = recent_workouts(@exercise)
   end
@@ -41,7 +41,8 @@ class WorkoutsController < ApplicationController
     )
   end
 
-  def recent_workouts(exercise, since = (params[:since] || 30.days.to_i).to_i.seconds.ago)
+  def recent_workouts(exercise, since = (params[:since] || 7.days.to_i).to_i.seconds.ago)
+    @since = since.beginning_of_day
     workouts = current_user.workouts.since(since).recent.includes(:routine)
     exercise ? workouts.with_exercise(exercise) : workouts
   end
app/models/workout.rb
@@ -48,4 +48,8 @@ class Workout < ApplicationRecord
       yield exercise
     end
   end
+
+  def display_status_for(exercise)
+    progress_for(exercise).status
+  end
 end
app/views/workouts/index.html.erb
@@ -16,7 +16,7 @@
             <%= form_tag @search_path, method: :get do %>
               <p class="control">
                 <span class="select">
-                  <%= select_tag :since, options_for_select(@ranges.map { |x| [time_ago_in_words(x.ago), x.to_i] }) %>
+                  <%= select_tag :since, options_for_select(@ranges.map { |x| [time_ago_in_words(x.ago), x.to_i] }, params[:since]) %>
                 </span>
               </p>
             <% end %>
@@ -75,7 +75,7 @@
                 <td> <%= I18n.l workout.occurred_at, format: :short %> </td>
                 <td> <%= workout.body_weight.to(:lbs) %> lbs </td>
                 <% @primary_exercises.each do |exercise| %>
-                  <td> <%= workout.progress_for(exercise).status %> </td>
+                  <td> <%= workout.display_status_for(exercise) %> </td>
                 <% end %>
               </tr>
             <% end %>