Commit 663dd6fad6e0a992f7ba1ccff4e58de84463abe6
1 parent
433387be
Exists in
master
and in
4 other branches
Refactored events output. Added links to authors of events
Showing
11 changed files
with
43 additions
and
54 deletions
Show diff stats
app/assets/stylesheets/sections/events.scss
| @@ -5,32 +5,23 @@ | @@ -5,32 +5,23 @@ | ||
| 5 | .event_label { | 5 | .event_label { |
| 6 | &.pushed { | 6 | &.pushed { |
| 7 | padding:0 2px; | 7 | padding:0 2px; |
| 8 | - @extend .alert; | ||
| 9 | - @extend .alert-info; | ||
| 10 | } | 8 | } |
| 11 | 9 | ||
| 12 | &.opened { | 10 | &.opened { |
| 13 | padding:0 2px; | 11 | padding:0 2px; |
| 14 | - @extend .alert; | ||
| 15 | - @extend .alert-success; | ||
| 16 | } | 12 | } |
| 17 | 13 | ||
| 18 | &.closed { | 14 | &.closed { |
| 19 | padding:0 2px; | 15 | padding:0 2px; |
| 20 | - @extend .alert; | ||
| 21 | - @extend .alert-error; | ||
| 22 | } | 16 | } |
| 23 | 17 | ||
| 24 | &.merged { | 18 | &.merged { |
| 25 | padding:0 2px; | 19 | padding:0 2px; |
| 26 | - @extend .alert; | ||
| 27 | - @extend .alert-success; | ||
| 28 | } | 20 | } |
| 29 | 21 | ||
| 30 | &.left, | 22 | &.left, |
| 31 | &.joined { | 23 | &.joined { |
| 32 | padding:0 2px; | 24 | padding:0 2px; |
| 33 | - @extend .alert; | ||
| 34 | float:none; | 25 | float:none; |
| 35 | } | 26 | } |
| 36 | } | 27 | } |
| @@ -0,0 +1,22 @@ | @@ -0,0 +1,22 @@ | ||
| 1 | +module EventsHelper | ||
| 2 | + def link_to_author(event) | ||
| 3 | + project = event.project | ||
| 4 | + tm = project.team_member_by_id(event.author_id) | ||
| 5 | + | ||
| 6 | + if tm | ||
| 7 | + link_to event.author_name, project_team_member_path(project, tm) | ||
| 8 | + else | ||
| 9 | + event.author_name | ||
| 10 | + end | ||
| 11 | + end | ||
| 12 | + | ||
| 13 | + def event_action_name(event) | ||
| 14 | + target = if event.target_type | ||
| 15 | + event.target_type.titleize.downcase | ||
| 16 | + else | ||
| 17 | + 'project' | ||
| 18 | + end | ||
| 19 | + | ||
| 20 | + [event.action_name, target].join(" ") | ||
| 21 | + end | ||
| 22 | +end |
app/helpers/issues_helper.rb
app/helpers/projects_helper.rb
| @@ -6,5 +6,9 @@ module ProjectsHelper | @@ -6,5 +6,9 @@ module ProjectsHelper | ||
| 6 | def remove_from_team_message(project, member) | 6 | def remove_from_team_message(project, member) |
| 7 | "You are going to remove #{member.user_name} from #{project.name}. Are you sure?" | 7 | "You are going to remove #{member.user_name} from #{project.name}. Are you sure?" |
| 8 | end | 8 | end |
| 9 | + | ||
| 10 | + def link_to_project project | ||
| 11 | + link_to project.name, project | ||
| 12 | + end | ||
| 9 | end | 13 | end |
| 10 | 14 |
app/models/event.rb
| @@ -58,6 +58,10 @@ class Event < ActiveRecord::Base | @@ -58,6 +58,10 @@ class Event < ActiveRecord::Base | ||
| 58 | end | 58 | end |
| 59 | end | 59 | end |
| 60 | 60 | ||
| 61 | + def target_title | ||
| 62 | + target.try :title | ||
| 63 | + end | ||
| 64 | + | ||
| 61 | def push? | 65 | def push? |
| 62 | action == self.class::Pushed && valid_push? | 66 | action == self.class::Pushed && valid_push? |
| 63 | end | 67 | end |
app/views/events/_event.html.haml
| 1 | - if event.allowed? | 1 | - if event.allowed? |
| 2 | %div.event-item | 2 | %div.event-item |
| 3 | - - if event.issue? | ||
| 4 | - = render "events/event_issue", event: event | ||
| 5 | - | ||
| 6 | - - elsif event.merge_request? | ||
| 7 | - = render "events/event_merge_request", event: event | ||
| 8 | - | ||
| 9 | - - elsif event.push? | 3 | + - if event.push? |
| 10 | = render "events/event_push", event: event | 4 | = render "events/event_push", event: event |
| 11 | - | ||
| 12 | - - elsif event.membership_changed? | ||
| 13 | - = render "events/event_membership_changed", event: event | 5 | + - else |
| 6 | + = render "events/event_common", event: event | ||
| 14 | 7 | ||
| 15 | %span.cgray.right | 8 | %span.cgray.right |
| 16 | = time_ago_in_words(event.created_at) | 9 | = time_ago_in_words(event.created_at) |
| @@ -0,0 +1,8 @@ | @@ -0,0 +1,8 @@ | ||
| 1 | += image_tag gravatar_icon(event.author_email), class: "avatar" | ||
| 2 | +.event-title | ||
| 3 | + %span.author_name= link_to_author event | ||
| 4 | + %span.event_label{class: event.action_name}= event_action_name(event) | ||
| 5 | + = link_to [event.project, event.target] do | ||
| 6 | + %strong= truncate event.target_title | ||
| 7 | + at | ||
| 8 | + = link_to_project event.project |
app/views/events/_event_issue.html.haml
| @@ -1,8 +0,0 @@ | @@ -1,8 +0,0 @@ | ||
| 1 | -= image_tag gravatar_icon(event.author_email), class: "avatar" | ||
| 2 | -.event-title | ||
| 3 | - %strong.author_name #{event.author_name} | ||
| 4 | - %span.event_label{class: event.action_name} #{event.action_name} issue | ||
| 5 | - = link_to project_issue_path(event.project, event.issue) do | ||
| 6 | - %strong= truncate event.issue_title | ||
| 7 | - at | ||
| 8 | - %strong= link_to event.project.name, event.project |
app/views/events/_event_membership_changed.html.haml
| @@ -1,9 +0,0 @@ | @@ -1,9 +0,0 @@ | ||
| 1 | -= image_tag gravatar_icon(event.author_email), class: "avatar" | ||
| 2 | -.event-title | ||
| 3 | - %strong.author_name #{event.author_name} | ||
| 4 | - %span.event_label{class: event.action_name} #{event.action_name} project | ||
| 5 | - %strong= link_to event.project_name, event.project | ||
| 6 | - %span.cgray | ||
| 7 | - = time_ago_in_words(event.created_at) | ||
| 8 | - ago. | ||
| 9 | - |
app/views/events/_event_merge_request.html.haml
| @@ -1,16 +0,0 @@ | @@ -1,16 +0,0 @@ | ||
| 1 | -- if event.action_name == "merged" | ||
| 2 | - .event_icon= image_tag "event_mr_merged.png" | ||
| 3 | -= image_tag gravatar_icon(event.author_email), class: "avatar" | ||
| 4 | -.event-title | ||
| 5 | - %strong.author_name #{event.author_name} | ||
| 6 | - %span.event_label{class: event.action_name} #{event.action_name} merge request | ||
| 7 | - = link_to project_merge_request_path(event.project, event.merge_request) do | ||
| 8 | - %strong= truncate event.merge_request_title | ||
| 9 | - at | ||
| 10 | - %strong= link_to event.project.name, event.project | ||
| 11 | -.event-body | ||
| 12 | - .event-info | ||
| 13 | - %span= event.merge_request.source_branch | ||
| 14 | - → | ||
| 15 | - %span= event.merge_request.target_branch | ||
| 16 | - |
app/views/events/_event_push.html.haml
| @@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
| 3 | = image_tag gravatar_icon(event.author_email), class: "avatar" | 3 | = image_tag gravatar_icon(event.author_email), class: "avatar" |
| 4 | 4 | ||
| 5 | .event-title | 5 | .event-title |
| 6 | - %strong.author_name #{event.author_name} | 6 | + %span.author_name= link_to_author event |
| 7 | %span.event_label.pushed #{event.push_action_name} #{event.ref_type} | 7 | %span.event_label.pushed #{event.push_action_name} #{event.ref_type} |
| 8 | = link_to project_commits_path(event.project, event.ref_name) do | 8 | = link_to project_commits_path(event.project, event.ref_name) do |
| 9 | %strong= event.ref_name | 9 | %strong= event.ref_name |