;]
[askyou.git] / lib / tasks / reminder.rake
blobd11c7cebbdc34880e736b3cb2f676b288d89f76a
1 # redMine - project management software
2 # Copyright (C) 2008  Jean-Philippe Lang
4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 # GNU General Public License for more details.
13
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
18 desc <<-END_DESC
19 Send reminders about issues due in the next days.
21 Available options:
22   * days     => number of days to remind about (defaults to 7)
23   * tracker  => id of tracker (defaults to all trackers)
24   * project  => id or identifier of project (defaults to all projects)
25   * users    => comma separated list of user ids who should be reminded
27 Example:
28   rake redmine:send_reminders days=7 users="1,23, 56" RAILS_ENV="production"
29 END_DESC
31 namespace :redmine do
32   task :send_reminders => :environment do
33     options = {}
34     options[:days] = ENV['days'].to_i if ENV['days']
35     options[:project] = ENV['project'] if ENV['project']
36     options[:tracker] = ENV['tracker'].to_i if ENV['tracker']
37     options[:users] = (ENV['users'] || '').split(',').each(&:strip!)
38     
39     Mailer.reminders(options)
40   end
41 end