diff options
author | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2016-02-18 17:16:39 -0200 |
---|---|---|
committer | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2016-02-20 12:12:05 -0200 |
commit | 72009896758dfcf73f94146b67e7758190ce7039 (patch) | |
tree | 1a6068f166e35bbff87c96c3dc8e4e827ef74cf0 /app | |
parent | 8673a70f500ae5b0e93336f9213947f0aba67033 (diff) | |
download | gitlab-ce-72009896758dfcf73f94146b67e7758190ce7039.tar.gz |
Refactoring task queue partials
Diffstat (limited to 'app')
-rw-r--r-- | app/helpers/tasks_helper.rb | 12 | ||||
-rw-r--r-- | app/models/task.rb | 12 | ||||
-rw-r--r-- | app/views/dashboard/tasks/_common.html.haml | 17 | ||||
-rw-r--r-- | app/views/dashboard/tasks/_note.html.haml | 26 | ||||
-rw-r--r-- | app/views/dashboard/tasks/_task.html.haml | 25 |
5 files changed, 32 insertions, 60 deletions
diff --git a/app/helpers/tasks_helper.rb b/app/helpers/tasks_helper.rb index a99f2b48a26..d8e0780e4c1 100644 --- a/app/helpers/tasks_helper.rb +++ b/app/helpers/tasks_helper.rb @@ -23,18 +23,20 @@ module TasksHelper [task.action_name, target].join(" ") end - def task_note_link_html(task) - link_to task_note_target_path(task) do + def task_target_link_html(task) + link_to task_target_path(task) do "##{task.target_iid}" end end - def task_note_target_path(task) + def task_target_path(task) + anchor = dom_id(task.note) if task.note.present? + polymorphic_path([task.project.namespace.becomes(Namespace), - task.project, task.target], anchor: dom_id(task.note)) + task.project, task.target], anchor: anchor) end - def task_note(text, options = {}) + def task_body(text, options = {}) text = first_line_in_markdown(text, 150, options) sanitize(text, tags: %w(a img b pre code p span)) end diff --git a/app/models/task.rb b/app/models/task.rb index 9b11698221d..0872743097c 100644 --- a/app/models/task.rb +++ b/app/models/task.rb @@ -50,12 +50,12 @@ class Task < ActiveRecord::Base end end - def body? - target.respond_to? :title - end - - def note_text - note.try(:note) + def body + if note.present? + note.note + else + target.title + end end def target_iid diff --git a/app/views/dashboard/tasks/_common.html.haml b/app/views/dashboard/tasks/_common.html.haml deleted file mode 100644 index b6d0c3c03ac..00000000000 --- a/app/views/dashboard/tasks/_common.html.haml +++ /dev/null @@ -1,17 +0,0 @@ -.task-title - %span.author_name= link_to_author task - %span.task_label{class: task.action_name} - = task_action_name(task) - - %strong= link_to "##{task.target_iid}", [task.project.namespace.becomes(Namespace), task.project, task.target] - - · #{time_ago_with_tooltip(task.created_at)} - -- if task.pending? - .task-actions.pull-right - = link_to 'Done', [:dashboard, task], method: :delete, class: 'btn' - -- if task.body? - .task-body - .task-note - = task.target.title diff --git a/app/views/dashboard/tasks/_note.html.haml b/app/views/dashboard/tasks/_note.html.haml deleted file mode 100644 index 2cfd55afccb..00000000000 --- a/app/views/dashboard/tasks/_note.html.haml +++ /dev/null @@ -1,26 +0,0 @@ -.task-title - %span.author_name - = link_to_author task - %span.task_label{class: task.action_name} - = task_action_name(task) - = task_note_link_html(task) - - · #{time_ago_with_tooltip(task.created_at)} - -- if task.pending? - .task-actions.pull-right - = link_to 'Done', [:dashboard, task], method: :delete, class: 'btn' - -.task-body - .task-note - .md - = task_note(task.note_text, project: task.project) - - note = task.note - - if note.attachment.url - - if note.attachment.image? - = link_to note.attachment.url, target: '_blank' do - = image_tag note.attachment.url, class: 'note-image-attach' - - else - = link_to note.attachment.url, target: "_blank", class: 'note-file-attach' do - %i.fa.fa-paperclip - = note.attachment_identifier diff --git a/app/views/dashboard/tasks/_task.html.haml b/app/views/dashboard/tasks/_task.html.haml index 2ca8f0dad63..d08b021f53b 100644 --- a/app/views/dashboard/tasks/_task.html.haml +++ b/app/views/dashboard/tasks/_task.html.haml @@ -1,8 +1,21 @@ %li{class: "task task-#{task.done? ? 'done' : 'pending'}", id: dom_id(task) } - .task-item{class: "#{task.body? ? 'task-block' : 'task-inline' }"} - = image_tag avatar_icon(task.author_email, 40), class: "avatar s40", alt:'' + .task-item{class: 'task-block'} + = image_tag avatar_icon(task.author_email, 40), class: 'avatar s40', alt:'' - - if task.note.present? - = render 'note', task: task - - else - = render 'common', task: task + .task-title + %span.author_name + = link_to_author task + %span.task_label + = task_action_name(task) + = task_target_link_html(task) + + · #{time_ago_with_tooltip(task.created_at)} + + - if task.pending? + .task-actions.pull-right + = link_to 'Done', [:dashboard, task], method: :delete, class: 'btn' + + .task-body + .task-note + .md + = task_body(task.body, project: task.project) |