From 5cae36d16ca730c057badb0f41ee25a9830e5abd Mon Sep 17 00:00:00 2001 From: Fatih Acet Date: Fri, 3 Jun 2016 00:01:11 +0300 Subject: [PATCH] Show milestone remaining tooltip in right sidebar. --- app/assets/javascripts/milestone_select.js.coffee | 15 +++++++++++++-- app/helpers/milestones_helper.rb | 15 ++++++++++----- app/views/shared/issuable/_sidebar.html.haml | 6 ++++-- 3 files changed, 27 insertions(+), 9 deletions(-) diff --git a/app/assets/javascripts/milestone_select.js.coffee b/app/assets/javascripts/milestone_select.js.coffee index 345a0e447a..e8d489dce9 100644 --- a/app/assets/javascripts/milestone_select.js.coffee +++ b/app/assets/javascripts/milestone_select.js.coffee @@ -24,11 +24,21 @@ class @MilestoneSelect if issueUpdateURL milestoneLinkTemplate = _.template( - '<%= _.escape(title) %>' + ' + + <%= _.escape(title) %> + + ' ) milestoneLinkNoneTemplate = '
None
' + collapsedSidebarLabelTemplate = _.template( + ' + <%= _.escape(title) %> + ' + ) + $dropdown.glDropdown( data: (term, callback) -> $.ajax( @@ -122,8 +132,9 @@ class @MilestoneSelect if data.milestone? data.milestone.namespace = _this.currentProject.namespace data.milestone.path = _this.currentProject.path + data.milestone.remaining = $.timefor data.milestone.due_date $value.html(milestoneLinkTemplate(data.milestone)) - $sidebarCollapsedValue.find('span').text(data.milestone.title) + $sidebarCollapsedValue.find('span').html(collapsedSidebarLabelTemplate(data.milestone)) else $value.html(milestoneLinkNoneTemplate) $sidebarCollapsedValue.find('span').text('No') diff --git a/app/helpers/milestones_helper.rb b/app/helpers/milestones_helper.rb index 87fc2db690..2abb0e9b17 100644 --- a/app/helpers/milestones_helper.rb +++ b/app/helpers/milestones_helper.rb @@ -54,13 +54,18 @@ module MilestonesHelper end end - def milestone_remaining_days(milestone) + def milestone_remaining_days(milestone, withContentTag = true) if milestone.expired? - content_tag(:strong, 'expired') + if withContentTag then content_tag(:strong, 'expired') else 'expired' end elsif milestone.due_date - days = milestone.remaining_days - content = content_tag(:strong, days) - content << " #{'day'.pluralize(days)} remaining" + days = milestone.remaining_days + + if withContentTag + content = content_tag(:strong, days) + content << " #{'day'.pluralize(days)} remaining" + else + "#{days} #{'day'.pluralize(days)} remaining" + end end end end diff --git a/app/views/shared/issuable/_sidebar.html.haml b/app/views/shared/issuable/_sidebar.html.haml index c1eec45019..be038cab94 100644 --- a/app/views/shared/issuable/_sidebar.html.haml +++ b/app/views/shared/issuable/_sidebar.html.haml @@ -56,7 +56,8 @@ = icon('clock-o') %span - if issuable.milestone - = issuable.milestone.title + %span.has-tooltip{"data-container" => "body", "data-placement" => "left", "data-original-title" => milestone_remaining_days(issuable.milestone, false)} + = issuable.milestone.title - else None .title.hide-collapsed @@ -67,7 +68,8 @@ .value.bold.hide-collapsed - if issuable.milestone = link_to namespace_project_milestone_path(@project.namespace, @project, issuable.milestone) do - = issuable.milestone.title + %span.has-tooltip{"data-container" => "body", "data-original-title" => milestone_remaining_days(issuable.milestone, false)} + = issuable.milestone.title - else .light None