Commit 6204cf8
Changed files (3)
app
controllers
views
profiles
spec
controllers
app/controllers/profiles_controller.rb
@@ -8,6 +8,7 @@ class ProfilesController < ApplicationController
def edit
@profile = current_user.profile
@program = Program.stronglifts
+ @time_zones = ActiveSupport::TimeZone.all.sort
end
def update
app/views/profiles/edit.html.erb
@@ -19,7 +19,7 @@
</fieldset>
<fieldset>
<legend><%= Profile.human_attribute_name(:time_zone) %></legend>
- <%= f.select(:time_zone, ActiveSupport::TimeZone::MAPPING) %>
+ <%= f.time_zone_select(:time_zone, @time_zones, model: ActiveSupport::TimeZone) %>
<%= f.label(:time_zone) %>
</fieldset>
<%= f.submit t(".save"), class: "button" %>
spec/controllers/profiles_controller_spec.rb
@@ -41,6 +41,14 @@ describe ProfilesController do
expect(assigns(:profile)).to eql(user.profile)
expect(assigns(:program)).to eql(Program.stronglifts)
end
+
+ it "loads all available timezones" do
+ get :edit, id: user.to_param
+ expect(assigns(:time_zones)).
+ to include(ActiveSupport::TimeZone.new("Mountain Time (US & Canada)"))
+ expect(assigns(:time_zones)).
+ to include(ActiveSupport::TimeZone.new("UTC"))
+ end
end
describe "#update" do