@@ -166,7 +166,7 @@ def self.deliver_document_added(document, author)
166
166
end
167
167
168
168
# Builds a mail to user about new attachements.
169
- def attachments_added ( user , attachments )
169
+ def attachments_added ( user , attachments , recipients = nil )
170
170
container = attachments . first . container
171
171
added_to = ''
172
172
added_to_url = ''
@@ -185,6 +185,7 @@ def attachments_added(user, attachments)
185
185
redmine_headers 'Project' => container . project . identifier
186
186
@attachments = attachments
187
187
@user = user
188
+ @recipients = recipients
188
189
@added_to = added_to
189
190
@added_to_url = added_to_url
190
191
mail :to => user ,
@@ -205,18 +206,19 @@ def self.deliver_attachments_added(attachments)
205
206
end
206
207
207
208
users . each do |user |
208
- attachments_added ( user , attachments ) . deliver_later
209
+ attachments_added ( user , attachments , users ) . deliver_later
209
210
end
210
211
end
211
212
212
213
# Builds a mail to user about a new news.
213
- def news_added ( user , news )
214
+ def news_added ( user , news , recipients = nil )
214
215
redmine_headers 'Project' => news . project . identifier
215
216
@author = news . author
216
217
message_id news
217
218
references news
218
219
@news = news
219
220
@user = user
221
+ @recipients = recipients
220
222
@news_url = url_for ( :controller => 'news' , :action => 'show' , :id => news )
221
223
mail :to => user ,
222
224
:subject => "[#{ news . project . name } ] #{ l ( :label_news ) } : #{ news . title } "
@@ -229,12 +231,12 @@ def news_added(user, news)
229
231
def self . deliver_news_added ( news )
230
232
users = news . notified_users | news . notified_watchers_for_added_news
231
233
users . each do |user |
232
- news_added ( user , news ) . deliver_later
234
+ news_added ( user , news , users ) . deliver_later
233
235
end
234
236
end
235
237
236
238
# Builds a mail to user about a new news comment.
237
- def news_comment_added ( user , comment )
239
+ def news_comment_added ( user , comment , recipients = nil )
238
240
news = comment . commented
239
241
redmine_headers 'Project' => news . project . identifier
240
242
@author = comment . author
@@ -243,6 +245,7 @@ def news_comment_added(user, comment)
243
245
@news = news
244
246
@comment = comment
245
247
@user = user
248
+ @recipients = recipients
246
249
@news_url = url_for ( :controller => 'news' , :action => 'show' , :id => news )
247
250
mail :to => user ,
248
251
:subject => "Re: [#{ news . project . name } ] #{ l ( :label_news ) } : #{ news . title } "
@@ -256,19 +259,20 @@ def self.deliver_news_comment_added(comment)
256
259
news = comment . commented
257
260
users = news . notified_users | news . notified_watchers
258
261
users . each do |user |
259
- news_comment_added ( user , comment ) . deliver_later
262
+ news_comment_added ( user , comment , users ) . deliver_later
260
263
end
261
264
end
262
265
263
266
# Builds a mail to user about a new message.
264
- def message_posted ( user , message )
267
+ def message_posted ( user , message , recipients = nil )
265
268
redmine_headers 'Project' => message . project . identifier ,
266
269
'Topic-Id' => ( message . parent_id || message . id )
267
270
@author = message . author
268
271
message_id message
269
272
references message . root
270
273
@message = message
271
274
@user = user
275
+ @recipients = recipients
272
276
@message_url = url_for ( message . event_url )
273
277
mail :to => user ,
274
278
:subject => "[#{ message . board . project . name } - #{ message . board . name } - msg#{ message . root . id } ] #{ message . subject } "
@@ -284,18 +288,19 @@ def self.deliver_message_posted(message)
284
288
users |= message . board . notified_watchers
285
289
286
290
users . each do |user |
287
- message_posted ( user , message ) . deliver_later
291
+ message_posted ( user , message , users ) . deliver_later
288
292
end
289
293
end
290
294
291
295
# Builds a mail to user about a new wiki content.
292
- def wiki_content_added ( user , wiki_content )
296
+ def wiki_content_added ( user , wiki_content , recipients = nil )
293
297
redmine_headers 'Project' => wiki_content . project . identifier ,
294
298
'Wiki-Page-Id' => wiki_content . page . id
295
299
@author = wiki_content . author
296
300
message_id wiki_content
297
301
@wiki_content = wiki_content
298
302
@user = user
303
+ @recipients = recipients
299
304
@wiki_content_url = url_for ( :controller => 'wiki' , :action => 'show' ,
300
305
:project_id => wiki_content . project ,
301
306
:id => wiki_content . page . title )
@@ -313,18 +318,19 @@ def wiki_content_added(user, wiki_content)
313
318
def self . deliver_wiki_content_added ( wiki_content )
314
319
users = wiki_content . notified_users | wiki_content . page . wiki . notified_watchers | wiki_content . notified_mentions
315
320
users . each do |user |
316
- wiki_content_added ( user , wiki_content ) . deliver_later
321
+ wiki_content_added ( user , wiki_content , users ) . deliver_later
317
322
end
318
323
end
319
324
320
325
# Builds a mail to user about an update of the specified wiki content.
321
- def wiki_content_updated ( user , wiki_content )
326
+ def wiki_content_updated ( user , wiki_content , recipients = nil )
322
327
redmine_headers 'Project' => wiki_content . project . identifier ,
323
328
'Wiki-Page-Id' => wiki_content . page . id
324
329
@author = wiki_content . author
325
330
message_id wiki_content
326
331
@wiki_content = wiki_content
327
332
@user = user
333
+ @recipients = recipients
328
334
@wiki_content_url =
329
335
url_for ( :controller => 'wiki' , :action => 'show' ,
330
336
:project_id => wiki_content . project ,
@@ -351,7 +357,7 @@ def self.deliver_wiki_content_updated(wiki_content)
351
357
users |= wiki_content . notified_mentions
352
358
353
359
users . each do |user |
354
- wiki_content_updated ( user , wiki_content ) . deliver_later
360
+ wiki_content_updated ( user , wiki_content , users ) . deliver_later
355
361
end
356
362
end
357
363
@@ -370,8 +376,9 @@ def self.deliver_account_information(user, password)
370
376
end
371
377
372
378
# Builds a mail to user about an account activation request.
373
- def account_activation_request ( user , new_user )
379
+ def account_activation_request ( user , new_user , recipients = nil )
374
380
@new_user = new_user
381
+ @recipients = recipients
375
382
@url = url_for ( :controller => 'users' , :action => 'index' ,
376
383
:status => User ::STATUS_REGISTERED ,
377
384
:sort_key => 'created_on' , :sort_order => 'desc' )
@@ -388,7 +395,7 @@ def self.deliver_account_activation_request(new_user)
388
395
# Send the email to all active administrators
389
396
users = User . active . where ( :admin => true )
390
397
users . each do |user |
391
- account_activation_request ( user , new_user ) . deliver_later
398
+ account_activation_request ( user , new_user , users . to_a ) . deliver_later
392
399
end
393
400
end
394
401
@@ -472,7 +479,8 @@ def self.deliver_register(user, token)
472
479
# field: :field_mail,
473
480
# value: address
474
481
# ) => Mail::Message object
475
- def security_notification ( user , sender , options = { } )
482
+ def security_notification ( user , sender , options = { } , recipients = nil )
483
+ @recipients = recipients
476
484
@sender = sender
477
485
redmine_headers 'Sender' => sender . login
478
486
@message =
@@ -509,12 +517,13 @@ def self.deliver_security_notification(users, sender, options={})
509
517
options [ :remote_ip ] ||= sender . remote_ip
510
518
511
519
Array . wrap ( users ) . each do |user |
512
- security_notification ( user , sender , options ) . deliver_later
520
+ security_notification ( user , sender , options , users ) . deliver_later
513
521
end
514
522
end
515
523
516
524
# Build a mail to user about application settings changes made by sender.
517
- def settings_updated ( user , sender , changes , options = { } )
525
+ def settings_updated ( user , sender , changes , options = { } , recipients = nil )
526
+ @recipients = recipients
518
527
@sender = sender
519
528
redmine_headers 'Sender' => sender . login
520
529
@changes = changes
@@ -541,7 +550,7 @@ def self.deliver_settings_updated(sender, changes, options={})
541
550
542
551
users = User . active . where ( admin : true ) . to_a
543
552
users . each do |user |
544
- settings_updated ( user , sender , changes , options ) . deliver_later
553
+ settings_updated ( user , sender , changes , options , users ) . deliver_later
545
554
end
546
555
end
547
556
0 commit comments