Commit aef2031a authored by Riyad Preukschas's avatar Riyad Preukschas

Add CommitDecorator#author_link

parent b3a5f0a7
...@@ -42,6 +42,28 @@ class CommitDecorator < ApplicationDecorator ...@@ -42,6 +42,28 @@ class CommitDecorator < ApplicationDecorator
end end
end end
# Returns a link to the commit author. If the author has a matching user and
# is a member of the current @project it will link to the team member page.
# Otherwise it will link to the author email as specified in the commit.
#
# options:
# avatar: true will prepend avatar image
def author_link(options)
text = if options[:avatar]
avatar = h.image_tag h.gravatar_icon(author_email), class: "avatar", width: 16
"#{avatar} #{author_name}"
else
author_name
end
team_member = @project.try(:team_member_by_name_or_email, author_name, author_email)
if team_member.nil?
h.mail_to author_email, text.html_safe, class: "commit-author-link"
else
h.link_to text, h.project_team_member_path(@project, team_member), class: "commit-author-link"
end
end
protected protected
def no_commit_message def no_commit_message
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment