Commit 687f3e11288deaae1c00b7e91b19270c70500f7e
Exists in
master
and in
29 other branches
Merge commit 'refs/merge-requests/211' of git://gitorious.org/noosfero/noosfero …
…into merge-requests/211
Showing
3 changed files
with
21 additions
and
4 deletions
Show diff stats
app/models/user.rb
@@ -21,12 +21,11 @@ class User < ActiveRecord::Base | @@ -21,12 +21,11 @@ class User < ActiveRecord::Base | ||
21 | end | 21 | end |
22 | end | 22 | end |
23 | 23 | ||
24 | - before_create :make_activation_code | ||
25 | - | ||
26 | before_create do |user| | 24 | before_create do |user| |
27 | if user.environment.nil? | 25 | if user.environment.nil? |
28 | user.environment = Environment.default | 26 | user.environment = Environment.default |
29 | end | 27 | end |
28 | + user.send(:make_activation_code) if !user.environment.enabled?('skip_new_user_email_confirmation') | ||
30 | end | 29 | end |
31 | 30 | ||
32 | after_create do |user| | 31 | after_create do |user| |
@@ -35,7 +34,7 @@ class User < ActiveRecord::Base | @@ -35,7 +34,7 @@ class User < ActiveRecord::Base | ||
35 | user.person.name ||= user.login | 34 | user.person.name ||= user.login |
36 | user.person.visible = false unless user.activated? | 35 | user.person.visible = false unless user.activated? |
37 | user.person.save! | 36 | user.person.save! |
38 | - if user.environment && user.environment.enabled?('skip_new_user_email_confirmation') | 37 | + if user.environment.enabled?('skip_new_user_email_confirmation') |
39 | user.activate | 38 | user.activate |
40 | end | 39 | end |
41 | end | 40 | end |
@@ -117,7 +116,7 @@ class User < ActiveRecord::Base | @@ -117,7 +116,7 @@ class User < ActiveRecord::Base | ||
117 | self.activated_at = Time.now.utc | 116 | self.activated_at = Time.now.utc |
118 | self.activation_code = nil | 117 | self.activation_code = nil |
119 | self.person.visible = true | 118 | self.person.visible = true |
120 | - self.person.save! && self.save | 119 | + self.person.save! && self.save! |
121 | end | 120 | end |
122 | 121 | ||
123 | def activated? | 122 | def activated? |
db/migrate/20120813163139_set_activation_code_to_nil_if_already_activated.rb
0 → 100644
test/functional/account_controller_test.rb
@@ -610,6 +610,15 @@ class AccountControllerTest < ActionController::TestCase | @@ -610,6 +610,15 @@ class AccountControllerTest < ActionController::TestCase | ||
610 | assert_equal 'example.com', Person['testuser'].organization | 610 | assert_equal 'example.com', Person['testuser'].organization |
611 | end | 611 | end |
612 | 612 | ||
613 | + should 'activate user after signup if environment is set to skip confirmation' do | ||
614 | + env = Environment.default | ||
615 | + env.enable('skip_new_user_email_confirmation') | ||
616 | + env.save! | ||
617 | + new_user(:login => 'activated_user') | ||
618 | + user = User.find_by_login('activated_user') | ||
619 | + assert user.activated? | ||
620 | + end | ||
621 | + | ||
613 | should 'redirect to initial page after logout' do | 622 | should 'redirect to initial page after logout' do |
614 | login_as :johndoe | 623 | login_as :johndoe |
615 | get :logout | 624 | get :logout |