Commit c90f1d5c8bed09aeb51a11d223025b423b048143

Authored by Dmitriy Zaporozhets
1 parent 5a12bee3

fixed issue, mr crash if assignee/author removed from team

app/helpers/issues_helper.rb
@@ -9,4 +9,26 @@ module IssuesHelper @@ -9,4 +9,26 @@ module IssuesHelper
9 params[:f] ||= cookies['issue_filter'] 9 params[:f] ||= cookies['issue_filter']
10 project_issues_path project, params 10 project_issues_path project, params
11 end 11 end
  12 +
  13 + def link_to_issue_assignee(issue)
  14 + project = issue.project
  15 +
  16 + tm = project.team_member_by_id(issue.assignee_id)
  17 + if tm
  18 + link_to issue.assignee_name, project_team_member_path(project, tm), :class => "author_link"
  19 + else
  20 + issue.assignee_name
  21 + end
  22 + end
  23 +
  24 + def link_to_issue_author(issue)
  25 + project = issue.project
  26 +
  27 + tm = project.team_member_by_id(issue.author_id)
  28 + if tm
  29 + link_to issue.author_name, project_team_member_path(project, tm), :class => "author_link"
  30 + else
  31 + issue.author_name
  32 + end
  33 + end
12 end 34 end
app/helpers/merge_requests_helper.rb
1 module MergeRequestsHelper 1 module MergeRequestsHelper
  2 + def link_to_merge_request_assignee(merge_request)
  3 + project = merge_request.project
  4 +
  5 + tm = project.team_member_by_id(merge_request.assignee_id)
  6 + if tm
  7 + link_to merge_request.assignee_name, project_team_member_path(project, tm), :class => "author_link"
  8 + else
  9 + merge_request.assignee_name
  10 + end
  11 + end
  12 +
  13 + def link_to_merge_request_author(merge_request)
  14 + project = merge_request.project
  15 +
  16 + tm = project.team_member_by_id(merge_request.author_id)
  17 + if tm
  18 + link_to merge_request.author_name, project_team_member_path(project, tm), :class => "author_link"
  19 + else
  20 + merge_request.author_name
  21 + end
  22 + end
2 end 23 end
app/views/issues/_show.html.haml
@@ -2,9 +2,7 @@ @@ -2,9 +2,7 @@
2 = image_tag gravatar_icon(issue.assignee_email), :class => "avatar" 2 = image_tag gravatar_icon(issue.assignee_email), :class => "avatar"
3 %span.update-author 3 %span.update-author
4 assigned to 4 assigned to
5 - %strong  
6 - = link_to project_team_member_path(@project, @project.team_member_by_id(issue.author_id)), :class => "author_link" do  
7 - = issue.assignee_name 5 + %strong= link_to_issue_assignee(issue)
8 - if issue.critical 6 - if issue.critical
9 %span.label.important critical 7 %span.label.important critical
10 - if issue.today? 8 - if issue.today?
app/views/issues/show.html.haml
@@ -25,13 +25,11 @@ @@ -25,13 +25,11 @@
25 %div 25 %div
26 %cite.cgray Created by 26 %cite.cgray Created by
27 = image_tag gravatar_icon(@issue.author_email), :width => 16, :class => "lil_av" 27 = image_tag gravatar_icon(@issue.author_email), :width => 16, :class => "lil_av"
28 - = link_to project_team_member_path(@project, @project.team_member_by_id(@issue.author.id)) do  
29 - %strong.author= @issue.author_name 28 + %strong.author= link_to_issue_author(@issue)
30 29
31 %cite.cgray and currently assigned to 30 %cite.cgray and currently assigned to
32 = image_tag gravatar_icon(@issue.assignee_email), :width => 16, :class => "lil_av" 31 = image_tag gravatar_icon(@issue.assignee_email), :width => 16, :class => "lil_av"
33 - = link_to project_team_member_path(@project, @project.team_member_by_id(@issue.assignee.id)) do  
34 - %strong.author= @issue.assignee_name 32 + %strong.author= link_to_issue_assignee(@issue)
35 33
36 %hr 34 %hr
37 35
app/views/merge_requests/_merge_request.html.haml
1 %li.wll 1 %li.wll
2 = image_tag gravatar_icon(merge_request.author_email), :class => "avatar" 2 = image_tag gravatar_icon(merge_request.author_email), :class => "avatar"
3 %span.update-author 3 %span.update-author
4 - %strong  
5 - = link_to project_team_member_path(@project, @project.team_member_by_id(merge_request.author_id)), :class => "author_link" do  
6 - = merge_request.author_name 4 + %strong= link_to_merge_request_author(merge_request)
7 authored 5 authored
8 = time_ago_in_words(merge_request.created_at) 6 = time_ago_in_words(merge_request.created_at)
9 ago 7 ago
app/views/merge_requests/show.html.haml
@@ -30,13 +30,11 @@ @@ -30,13 +30,11 @@
30 %div 30 %div
31 %cite.cgray Created by 31 %cite.cgray Created by
32 = image_tag gravatar_icon(@merge_request.author_email), :width => 16, :class => "lil_av" 32 = image_tag gravatar_icon(@merge_request.author_email), :width => 16, :class => "lil_av"
33 - = link_to project_team_member_path(@project, @project.team_member_by_id(@merge_request.author.id)) do  
34 - %strong.author= @merge_request.author_name 33 + %strong.author= link_to_merge_request_author(@merge_request)
35 34
36 %cite.cgray and currently assigned to 35 %cite.cgray and currently assigned to
37 = image_tag gravatar_icon(@merge_request.assignee_email), :width => 16, :class => "lil_av" 36 = image_tag gravatar_icon(@merge_request.assignee_email), :width => 16, :class => "lil_av"
38 - = link_to project_team_member_path(@project, @project.team_member_by_id(@merge_request.assignee.id)) do  
39 - %strong.author= @merge_request.assignee_name 37 + %strong.author= link_to_merge_request_assignee(@merge_request)
40 38
41 %hr 39 %hr
42 40