if new_record? && !(attributes && attributes.key?(:hide_mail))
self.hide_mail = Setting.default_users_hide_mail?
end
+ if new_record? && !(attributes && attributes.key?(:time_zone))
+ self.time_zone = Setting.default_users_time_zone
+ end
if new_record? && !(attributes && attributes.key?(:no_self_notified))
self.no_self_notified = true
end
<div class="tabular settings">
<p><%= setting_check_box :default_users_hide_mail, :label => :field_hide_mail %></p>
+
+ <p><%= setting_select :default_users_time_zone, ActiveSupport::TimeZone.all.collect {|z| [ z.to_s, z.name ]}, :label => :field_time_zone, :blank => :label_none %></p>
</div>
</fieldset>
# multiple values accepted, comma separated
default_users_hide_mail:
default: 1
+default_users_time_zone:
+ default: ""
repositories_encodings:
default: ''
# encoding used to convert commit logs to UTF-8
end
end
+ def test_time_zone_should_default_to_setting
+ with_settings :default_users_time_zone => 'Paris' do
+ preference = UserPreference.new
+ assert_equal 'Paris', preference.time_zone
+ end
+ end
+
def test_no_self_notified_should_default_to_true
preference = UserPreference.new
assert_equal true, preference.no_self_notified