Commit 9b7b90a1b5aa48c6da9ad6d1e12d5719a40a021d
1 parent
cb340c2b
Exists in
master
and in
22 other branches
Fixing report abuse for organizations
(ActionItem2104)
Showing
5 changed files
with
30 additions
and
5 deletions
Show diff stats
app/models/organization.rb
| @@ -157,4 +157,8 @@ class Organization < Profile | @@ -157,4 +157,8 @@ class Organization < Profile | ||
| 157 | members_by_role(role).map { |member| {:id => member.id, :name => member.name} }.to_json | 157 | members_by_role(role).map { |member| {:id => member.id, :name => member.name} }.to_json |
| 158 | end | 158 | end |
| 159 | 159 | ||
| 160 | + def disable | ||
| 161 | + self.visible = false | ||
| 162 | + save! | ||
| 163 | + end | ||
| 160 | end | 164 | end |
app/models/person.rb
| @@ -406,6 +406,14 @@ class Person < Profile | @@ -406,6 +406,14 @@ class Person < Profile | ||
| 406 | {:title => _('Profile Info and settings'), :icon => 'edit-profile'} | 406 | {:title => _('Profile Info and settings'), :icon => 'edit-profile'} |
| 407 | end | 407 | end |
| 408 | 408 | ||
| 409 | + def disable | ||
| 410 | + self.visible = false | ||
| 411 | + user.password = Digest::SHA1.hexdigest("--#{Time.now.to_s}--#{identifier}--") | ||
| 412 | + user.password_confirmation = user.password | ||
| 413 | + save! | ||
| 414 | + user.save! | ||
| 415 | + end | ||
| 416 | + | ||
| 409 | protected | 417 | protected |
| 410 | 418 | ||
| 411 | def followed_by?(profile) | 419 | def followed_by?(profile) |
app/models/profile.rb
| @@ -806,11 +806,6 @@ private :generate_url, :url_options | @@ -806,11 +806,6 @@ private :generate_url, :url_options | ||
| 806 | end | 806 | end |
| 807 | 807 | ||
| 808 | def disable | 808 | def disable |
| 809 | - self.visible = false | ||
| 810 | - user.password = Digest::SHA1.hexdigest("--#{Time.now.to_s}--#{identifier}--") | ||
| 811 | - user.password_confirmation = user.password | ||
| 812 | - save! | ||
| 813 | - user.save! | ||
| 814 | end | 809 | end |
| 815 | 810 | ||
| 816 | def control_panel_settings_button | 811 | def control_panel_settings_button |
test/unit/organization_test.rb
| @@ -408,4 +408,12 @@ class OrganizationTest < Test::Unit::TestCase | @@ -408,4 +408,12 @@ class OrganizationTest < Test::Unit::TestCase | ||
| 408 | assert_match [{:id => p1.id, :name => p1.name}, {:id => p2.id, :name => p2.name}].to_json, organization.members_by_role_to_json(role) | 408 | assert_match [{:id => p1.id, :name => p1.name}, {:id => p2.id, :name => p2.name}].to_json, organization.members_by_role_to_json(role) |
| 409 | end | 409 | end |
| 410 | 410 | ||
| 411 | + should 'disable organization' do | ||
| 412 | + organization = fast_create(Organization, :visible => true) | ||
| 413 | + assert organization.visible | ||
| 414 | + | ||
| 415 | + organization.disable | ||
| 416 | + assert !organization.visible | ||
| 417 | + end | ||
| 418 | + | ||
| 411 | end | 419 | end |
test/unit/person_test.rb
| @@ -1227,4 +1227,14 @@ class PersonTest < Test::Unit::TestCase | @@ -1227,4 +1227,14 @@ class PersonTest < Test::Unit::TestCase | ||
| 1227 | assert person.already_reported?(profile) | 1227 | assert person.already_reported?(profile) |
| 1228 | end | 1228 | end |
| 1229 | 1229 | ||
| 1230 | + should 'disable person' do | ||
| 1231 | + person = create_user('some-user').person | ||
| 1232 | + password = person.user.password | ||
| 1233 | + assert person.visible | ||
| 1234 | + | ||
| 1235 | + person.disable | ||
| 1236 | + | ||
| 1237 | + assert !person.visible | ||
| 1238 | + assert_not_equal password, person.user.password | ||
| 1239 | + end | ||
| 1230 | end | 1240 | end |