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