]> source.dussan.org Git - redmine.git/commitdiff
Add right-click context menu in calendar (#28067).
authorGo MAEDA <maeda@farend.jp>
Tue, 30 Jan 2018 08:03:00 +0000 (08:03 +0000)
committerGo MAEDA <maeda@farend.jp>
Tue, 30 Jan 2018 08:03:00 +0000 (08:03 +0000)
Patch by Mizuki ISHIKAWA.

git-svn-id: http://svn.redmine.org/redmine/trunk@17186 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/views/common/_calendar.html.erb
public/stylesheets/application.css
test/functional/calendars_controller_test.rb

index eb830b641c73a7575fdbb359d44c24a56c71ad10..852ab5235f407f3429363a6d54c1fe725f4a6251 100644 (file)
@@ -1,3 +1,4 @@
+<%= form_tag({}, :data => {:cm_url => issues_context_menu_path}) do -%>
 <table class="cal">
 <thead>
 <tr><th scope="col" title="<%= l(:label_week) %>" class="week-number"></th><% 7.times do |i| %><th scope="col"><%= day_name( (calendar.first_wday+i)%7 ) %></th><% end %></tr>
@@ -11,10 +12,11 @@ while day <= calendar.enddt %>
 <p class="day-num"><%= day.day %></p>
 <% calendar.events_on(day).each do |i| %>
   <% if i.is_a? Issue %>
-  <div class="<%= i.css_classes %> <%= 'starting' if day == i.start_date %> <%= 'ending' if day == i.due_date %> tooltip">
+  <div class="<%= i.css_classes %> <%= 'starting' if day == i.start_date %> <%= 'ending' if day == i.due_date %> tooltip hascontextmenu">
   <%= "#{i.project} -" unless @project && @project == i.project %>
   <%= link_to_issue i, :truncate => 30 %>
   <span class="tip"><%= render_issue_tooltip i %></span>
+  <%= check_box_tag 'ids[]', i.id, false, :style => 'display:none;', :id => nil %>
   </div>
   <% else %>
   <span class="icon icon-package">
@@ -30,3 +32,5 @@ end %>
 </tr>
 </tbody>
 </table>
+<% end %>
+<%= context_menu %>
index f70358b4381912db9874dc6ab6694bb50d8f124f..48bcbf9bc5ec8ced3ca3b562a4e895ae7d5dc53e 100644 (file)
@@ -928,6 +928,7 @@ p.cal.legend span {display:block;}
 .tooltip{position:relative;z-index:24;}
 .tooltip:hover{z-index:25;color:#000;}
 .tooltip span.tip{display: none; text-align:left;}
+.tooltip span.tip a { color: #169 !important; }
 
 div.tooltip:hover span.tip{
 display:block;
@@ -940,6 +941,10 @@ font-size: 0.8em;
 color:#505050;
 }
 
+table.cal div.tooltip:hover span.tip {
+  top: 25px;
+}
+
 img.ui-datepicker-trigger {
   cursor: pointer;
   vertical-align: middle;
index 8a45bb3644777a5509f0e417acd8901fe0958a46..9f9b2a2ef414e52fe76f2e04d1da39aecc831be6 100644 (file)
@@ -48,6 +48,12 @@ class CalendarsControllerTest < Redmine::ControllerTest
         assert_select 'p.buttons'
       end
     end
+
+    # Assert context menu on issues
+    assert_select 'form[data-cm-url=?]', '/issues/context_menu'
+    assert_select 'div.issue.hascontextmenu' do
+      assert_select 'input[name=?][type=?]', 'ids[]', 'checkbox'
+    end
   end
 
   def test_show_should_run_custom_queries