Merge pull request #1717 from riyad/add-author-to-tree-listing
Update author info in tree listing
This commit is contained in:
commit
cd9f135a66
6 changed files with 48 additions and 16 deletions
|
@ -52,14 +52,26 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.tree-commit-link {
|
.tree_author {
|
||||||
color:#333;
|
padding-right: 8px;
|
||||||
|
|
||||||
|
img.avatar {
|
||||||
|
border: 0 none;
|
||||||
|
float: none;
|
||||||
|
margin-right: 0;
|
||||||
|
padding: 0;
|
||||||
|
width: 16px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
a.tree-commit-link {
|
.tree_commit {
|
||||||
color: #666;
|
color: gray;
|
||||||
&:hover {
|
|
||||||
text-decoration: underline;
|
.tree-commit-link {
|
||||||
|
color: #444;
|
||||||
|
&:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
module Team
|
module Team
|
||||||
def team_member_by_name_or_email(email = nil, name = nil)
|
def team_member_by_name_or_email(name = nil, email = nil)
|
||||||
user = users.where("email like ? or name like ?", email, name).first
|
user = users.where("name like ? or email like ?", name, email).first
|
||||||
users_projects.find_by_user_id(user.id) if user
|
users_projects.where(user: user) if user
|
||||||
end
|
end
|
||||||
|
|
||||||
# Get Team Member record by user id
|
# Get Team Member record by user id
|
||||||
|
|
|
@ -1,9 +1,8 @@
|
||||||
- @logs.each do |content_data|
|
- @logs.each do |content_data|
|
||||||
- file_name = content_data[:file_name]
|
- file_name = content_data[:file_name]
|
||||||
- content_commit = content_data[:commit]
|
- commit = content_data[:commit]
|
||||||
- tm = @project.team_member_by_name_or_email(content_commit.author_email, content_commit.author_name)
|
|
||||||
|
|
||||||
:plain
|
:plain
|
||||||
var row = $("table.table_#{@hex_path} tr.file_#{hexdigest(file_name)}");
|
var row = $("table.table_#{@hex_path} tr.file_#{hexdigest(file_name)}");
|
||||||
row.find("td.tree_time_ago").html('#{escape_javascript(time_ago_in_words(content_commit.committed_date))} ago');
|
row.find("td.tree_time_ago").html('#{escape_javascript time_ago_in_words(commit.committed_date)} ago');
|
||||||
row.find("td.tree_commit").html('#{escape_javascript(render("tree/tree_commit", tm: tm, content_commit: content_commit))}');
|
row.find("td.tree_commit").html('#{escape_javascript render("tree/tree_commit_column", commit: commit)}');
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
- if tm
|
|
||||||
= link_to "[#{tm.user_name}]", project_team_member_path(@project, tm)
|
|
||||||
= link_to_gfm truncate(content_commit.title, length: tm ? 30 : 50), project_commit_path(@project, content_commit.id), class: "tree-commit-link"
|
|
2
app/views/tree/_tree_commit_column.html.haml
Normal file
2
app/views/tree/_tree_commit_column.html.haml
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
%span.tree_author= commit.author_link avatar: true
|
||||||
|
= link_to_gfm truncate(commit.title, length: 80), project_commit_path(@project, commit.id), class: "tree-commit-link"
|
Loading…
Add table
Reference in a new issue