diff options
author | Robert Speicher <rspeicher@gmail.com> | 2016-05-12 16:47:45 -0500 |
---|---|---|
committer | Robert Speicher <rspeicher@gmail.com> | 2016-05-12 16:53:43 -0500 |
commit | 7e5db6b07a41597c8f0e513196c6747cfa32db71 (patch) | |
tree | c2a2bab909981e5590ef1f2e6191724efc44744c | |
parent | da254ddfdf71eeba55140281ba0ade42aa319b71 (diff) | |
download | gitlab-ce-rs-event-titles.tar.gz |
Reduce duplication and branching logic in EventsHelperrs-event-titles
Remove unused methods from Event model
-rw-r--r-- | app/helpers/events_helper.rb | 52 | ||||
-rw-r--r-- | app/models/event.rb | 21 | ||||
-rw-r--r-- | app/models/project.rb | 2 |
3 files changed, 25 insertions, 50 deletions
diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb index 2221c068410..41c08ee4cfe 100644 --- a/app/helpers/events_helper.rb +++ b/app/helpers/events_helper.rb @@ -66,11 +66,7 @@ module EventsHelper words << event.ref_name words << "at" elsif event.commented? - if event.commit_note? - words << event.note_short_commit_id - else - words << "##{truncate event.note_target_iid}" - end + words << event.note_target_reference words << "at" elsif event.milestone? words << "##{event.target_iid}" if event.target_iid @@ -99,12 +95,7 @@ module EventsHelper elsif event.note? if event.note_target if event.commit_note? - namespace_project_commit_path(event.project.namespace, event.project, - event.note_commit_id, - anchor: dom_id(event.target)) - elsif event.project_snippet_note? - namespace_project_snippet_path(event.project.namespace, - event.project, event.note_target) + event_note_target_path(event) else event_note_target_path(event) end @@ -144,42 +135,29 @@ module EventsHelper def event_note_target_path(event) if event.note? && event.commit_note? - namespace_project_commit_path(event.project.namespace, event.project, - event.note_target) + namespace_project_commit_path(event.project.namespace, + event.project, + event.note_target, + anchor: dom_id(event.target)) + elsif event.project_snippet_note? + namespace_project_snippet_path(event.project.namespace, + event.project, + event.note_target, + anchor: dom_id(event.target)) else polymorphic_path([event.project.namespace.becomes(Namespace), event.project, event.note_target], - anchor: dom_id(event.target)) + anchor: dom_id(event.target)) end end def event_note_title_html(event) if event.note_target - if event.commit_note? - link_to( - namespace_project_commit_path(event.project.namespace, event.project, - event.note_commit_id, - anchor: dom_id(event.target)), - title: event.target_title, - class: "commit_short_id" - ) do - "#{event.note_target_type} #{event.note_short_commit_id}" - end - elsif event.project_snippet_note? - link_to(namespace_project_snippet_path(event.project.namespace, - event.project, - event.note_target), title: event.project.name) do - "#{event.note_target_type} #{truncate event.note_target.to_reference}" - end - else - link_to event_note_target_path(event), title: event.target_title do - "#{event.note_target_type} #{truncate event.note_target.to_reference}" - end + link_to(event_note_target_path(event), title: event.target_title, class: 'has-tooltip') do + "#{event.note_target_type} #{event.note_target_reference}" end else - content_tag :strong do - "(deleted)" - end + content_tag(:strong, '(deleted)') end end diff --git a/app/models/event.rb b/app/models/event.rb index 2e9da42deaa..716039fb54b 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -266,18 +266,10 @@ class Event < ActiveRecord::Base branch? && project.default_branch != branch_name end - def note_commit_id - target.commit_id - end - def target_iid target.respond_to?(:iid) ? target.iid : target_id end - def note_short_commit_id - Commit.truncate_sha(note_commit_id) - end - def commit_note? target.for_commit? end @@ -302,12 +294,15 @@ class Event < ActiveRecord::Base end end - def note_target_iid - if note_target.respond_to?(:iid) - note_target.iid + def note_target_reference + return unless note_target + + # Commit#to_reference returns the full SHA, but we want the short one here + if commit_note? + note_target.short_id else - note_target_id - end.to_s + note_target.to_reference + end end def note_target_type diff --git a/app/models/project.rb b/app/models/project.rb index 418b85e028a..04ee04a986d 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -49,6 +49,8 @@ class Project < ActiveRecord::Base attr_accessor :new_default_branch attr_accessor :old_path_with_namespace + alias_attribute :title, :name + # Relations belongs_to :creator, foreign_key: 'creator_id', class_name: 'User' belongs_to :group, -> { where(type: Group) }, foreign_key: 'namespace_id' |