Revision 1270:b2f7f52a164d app/models

View differences:

app/models/mailer.rb
27 27
    { :host => Setting.host_name, :protocol => Setting.protocol }
28 28
  end
29 29

  
30
  # todo: luisf: 2Aug2012 - refactor...
31
  def added_to_project(member, project)
30
  # Builds a Mail::Message object used to email the specified member
31
  # that he was added to a project
32
  #
33
  # Example:
34
  #   member_added_to_project(member, project) => Mail::Message object
35
  #   Mailer.member_added_to_project(member, project) => sends an email to the registered member
36
  def member_added_to_project(member, project)
37

  
32 38
    principal = Principal.find(member.user_id)
33 39

  
40
    users = []
34 41
    if principal.type == "User"
35
      user = User.find(member.user_id)
36
      user_add_to_project(user, project) 
42
      users = [User.find(member.user_id)]
37 43
    else
38 44
      users = Principal.find(member.user_id).users      
39
      users.map {|user| user_add_to_project(user, project) }      
40 45
    end
41
  end
42 46

  
43
  # Builds a tmail object used to email the specified user that he was added to a project
44
  #
45
  # Example:
46
  #   user_add_to_project(user, project) => tmail object
47
  #   Mailer.deliver_add_to_project(user, project) => sends an email to the registered user
48
  def user_add_to_project(user, project)        
49
    set_language_if_valid user.language
50
    recipients user.mail
51
    subject l(:mail_subject_added_to_project, Setting.app_title)
52
    body :project_url => url_for(:controller => 'projects', :action => 'show', :id => project.id),
53
        :project_name => project.name
54
    render_multipart('added_to_project', body)
47
    users.map do |user|
48

  
49
      set_language_if_valid user.language
50
      @project_url = url_for(:controller => 'projects', :action => 'show', :id => project.id)
51
      @project_name = project.name
52
      mail :to => user.mail,
53
        :subject => l(:mail_subject_added_to_project, Setting.app_title)
54

  
55
    end
55 56
  end
56 57
  
57 58
  # Builds a Mail::Message object used to email recipients of the added issue.

Also available in: Unified diff