##// END OF EJS Templates
Adds the "Hide my email address" option on the registration form (#21500)....
Jean-Philippe Lang -
r14594:f4c37007025b
parent child
Show More
@@ -122,6 +122,7 class AccountController < ApplicationController
122 user_params = params[:user] || {}
122 user_params = params[:user] || {}
123 @user = User.new
123 @user = User.new
124 @user.safe_attributes = user_params
124 @user.safe_attributes = user_params
125 @user.pref.attributes = params[:pref] if params[:pref]
125 @user.admin = false
126 @user.admin = false
126 @user.register
127 @user.register
127 if session[:auth_source_registration]
128 if session[:auth_source_registration]
@@ -16,6 +16,10
16 <p><%= f.text_field :firstname, :required => true %></p>
16 <p><%= f.text_field :firstname, :required => true %></p>
17 <p><%= f.text_field :lastname, :required => true %></p>
17 <p><%= f.text_field :lastname, :required => true %></p>
18 <p><%= f.text_field :mail, :required => true %></p>
18 <p><%= f.text_field :mail, :required => true %></p>
19 <%= labelled_fields_for :pref, @user.pref do |pref_fields| %>
20 <p><%= pref_fields.check_box :hide_mail %></p>
21 <% end %>
22
19
23
20 <% unless @user.force_default_language? %>
24 <% unless @user.force_default_language? %>
21 <p><%= f.select :language, lang_options_for_select %></p>
25 <p><%= f.select :language, lang_options_for_select %></p>
@@ -247,6 +247,18 class AccountControllerTest < ActionController::TestCase
247 end
247 end
248 end
248 end
249
249
250 def test_get_register_should_show_hide_mail_preference
251 get :register
252 assert_select 'input[name=?][checked=checked]', 'pref[hide_mail]'
253 end
254
255 def test_get_register_should_show_hide_mail_preference_with_setting_turned_off
256 with_settings :default_users_hide_mail => '0' do
257 get :register
258 assert_select 'input[name=?]:not([checked=checked])', 'pref[hide_mail]'
259 end
260 end
261
250 # See integration/account_test.rb for the full test
262 # See integration/account_test.rb for the full test
251 def test_post_register_with_registration_on
263 def test_post_register_with_registration_on
252 with_settings :self_registration => '3' do
264 with_settings :self_registration => '3' do
@@ -287,6 +299,22 class AccountControllerTest < ActionController::TestCase
287 end
299 end
288 end
300 end
289
301
302 def test_post_register_should_create_user_with_hide_mail_preference
303 with_settings :default_users_hide_mail => '0' do
304 user = new_record(User) do
305 post :register, :user => {
306 :login => 'register',
307 :password => 'secret123', :password_confirmation => 'secret123',
308 :firstname => 'John', :lastname => 'Doe',
309 :mail => 'register@example.com'
310 }, :pref => {
311 :hide_mail => '1'
312 }
313 end
314 assert_equal true, user.pref.hide_mail
315 end
316 end
317
290 def test_get_lost_password_should_display_lost_password_form
318 def test_get_lost_password_should_display_lost_password_form
291 get :lost_password
319 get :lost_password
292 assert_response :success
320 assert_response :success
General Comments 0
You need to be logged in to leave comments. Login now