master
 1class ProfilesController < ApplicationController
 2  def index
 3    @users = paginate(User.all)
 4  end
 5
 6  def show
 7    @user = User.find_by(username: params[:id])
 8    @profile = @user.profile
 9    @program = Program.stronglifts
10    @training_histories = @program.exercises.primary.distinct.order_by_name.map do |exercise|
11      @user.history_for(exercise)
12    end
13  end
14
15  def edit
16    @profile = current_user.profile
17    @program = Program.stronglifts
18  end
19
20  def update
21    profile = current_user.profile
22    profile.update(profile_params)
23    flash[:notice] = t("profiles.edit.profile_update_success")
24    redirect_to profile_path(profile)
25  end
26
27  private
28
29  def profile_params
30    params.require(:profile).permit(
31      :gender,
32      :gym_id,
33      :social_tolerance,
34      :time_zone,
35    )
36  end
37end