diff options
author | Dmitriy Zaporozhets <dzaporozhets@sphereconsultinginc.com> | 2011-11-06 22:38:08 +0200 |
---|---|---|
committer | Dmitriy Zaporozhets <dzaporozhets@sphereconsultinginc.com> | 2011-11-06 22:38:08 +0200 |
commit | b4868a897284940a3e5e8e6ebcc246f21fb17fbe (patch) | |
tree | 3932afe6362f9ab605c873e752958e996735cbd5 | |
parent | f87f0201f0e3386d1e0408a217650b545f57029a (diff) | |
download | gitlab-ce-b4868a897284940a3e5e8e6ebcc246f21fb17fbe.tar.gz |
Improved commit author detection
-rw-r--r-- | app/models/project.rb | 5 | ||||
-rw-r--r-- | app/views/projects/_tree_item.html.haml | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/app/models/project.rb b/app/models/project.rb index de68f451e03..a5b6224bd0e 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -50,6 +50,11 @@ class Project < ActiveRecord::Base code end + def team_member_by_name_or_email(email = nil, name = nil) + user = users.where("email like ? or name like ?", email, name).first + users_projects.find_by_user_id(user.id) if user + end + def common_notes notes.where(:noteable_type => ["", nil]) end diff --git a/app/views/projects/_tree_item.html.haml b/app/views/projects/_tree_item.html.haml index d15c379b009..273d0272322 100644 --- a/app/views/projects/_tree_item.html.haml +++ b/app/views/projects/_tree_item.html.haml @@ -13,6 +13,6 @@ ago %td.commit = link_to truncate(content_commit.safe_message, :length => fixed_mode? ? 40 : 80), project_commit_path(@project, content_commit), :class => "tree-commit-link" - - user = @project.users.find_by_email(content_commit.author_email) - - if user - = link_to "[#{user.name}]", project_team_member_path(@project, @project.users_projects.find_by_user_id(user.id)) + - tm = @project.team_member_by_name_or_email(content_commit.author_email, content_commit.author_name) + - if tm + = link_to "[#{tm.user_name}]", project_team_member_path(@project, tm) |