Feature #30998 » 30998-v3.patch
| app/models/user.rb | ||
|---|---|---|
| 866 | 866 |
project_ids.map(&:to_i) |
| 867 | 867 |
end |
| 868 | 868 | |
| 869 |
def self.prune(age=7.days) |
|
| 870 |
User.where("created_on < ? AND status = ?", Time.now - age, STATUS_REGISTERED).destroy_all
|
|
| 871 |
end |
|
| 872 | ||
| 869 | 873 |
protected |
| 870 | 874 | |
| 871 | 875 |
def validate_password_length |
| lib/tasks/redmine.rake | ||
|---|---|---|
| 40 | 40 |
end |
| 41 | 41 |
end |
| 42 | 42 | |
| 43 |
namespace :users do |
|
| 44 |
desc 'Removes registered users that have not been activated after seven days.' |
|
| 45 |
task :prune => :environment do |
|
| 46 |
User.prune |
|
| 47 |
end |
|
| 48 |
end |
|
| 49 | ||
| 43 | 50 |
namespace :watchers do |
| 44 | 51 |
desc 'Removes watchers from what they can no longer view.' |
| 45 | 52 |
task :prune => :environment do |
| test/unit/user_test.rb | ||
|---|---|---|
| 1348 | 1348 |
cv2a.reload |
| 1349 | 1349 |
assert_equal @dlopper.id.to_s, cv2a.value |
| 1350 | 1350 |
end |
| 1351 | ||
| 1352 |
def test_prune_should_destroy_unactivated_old_users |
|
| 1353 |
User.generate!(:status => User::STATUS_REGISTERED, :created_on => 6.days.ago) |
|
| 1354 |
User.generate!(:status => User::STATUS_REGISTERED, :created_on => 7.day.ago) |
|
| 1355 |
User.generate!(:status => User::STATUS_REGISTERED) |
|
| 1356 | ||
| 1357 |
assert_difference 'User.count', -2 do |
|
| 1358 |
User.prune |
|
| 1359 |
end |
|
| 1360 |
end |
|
| 1351 | 1361 |
end |