11465: add tooltips to disabled collection file controls
authorradhika <radhika@curoverse.com>
Mon, 17 Apr 2017 01:20:11 +0000 (21:20 -0400)
committerradhika <radhika@curoverse.com>
Mon, 17 Apr 2017 01:20:11 +0000 (21:20 -0400)
apps/workbench/app/assets/javascripts/edit_collection.js
apps/workbench/app/assets/stylesheets/collections.css.scss
apps/workbench/app/views/collections/_show_files.html.erb
apps/workbench/test/integration/collections_test.rb

index ba0e82c1549f5efed3da2e197311b6fdc392f9b2..5f0c3b415c4fa92214deaff91078b58a427a48b7 100644 (file)
@@ -2,10 +2,9 @@
 // disable all file modification controls (upload, rename, delete)
 $(document).
     ready(function(event) {
-        $(".btn-collection-file-rename").addClass("disabled");
-        $(".btn-collection-file-rename").attr("title", "Unlock collection to rename file");
-        $(".btn-collection-file-remove").addClass("disabled");
-        $(".btn-collection-file-remove").attr("title", "Unlock collection to remove file");
+        $(".btn-collection-file-control").addClass("disabled");
+        $(".btn-collection-rename-file-span").attr("title", "Unlock collection to rename file");
+        $(".btn-collection-remove-file-span").attr("title", "Unlock collection to remove file");
         $(".btn-remove-selected-files").attr("title", "Unlock collection to remove selected files");
         $(".tab-pane-Upload").addClass("disabled");
         $(".tab-pane-Upload").attr("title", "Unlock collection to upload files");
@@ -20,10 +19,9 @@ $(document).
                 $(".lock-collection-btn").removeClass("fa-lock");
                 $(".lock-collection-btn").addClass("fa-unlock");
                 $(".lock-collection-btn").attr("title", "Lock collection to prevent editing files");
-                $(".btn-collection-file-rename").removeClass("disabled");
-                $(".btn-collection-file-rename").attr("data-original-title", "Edit name or path or both for this file");
-                $(".btn-collection-file-remove").removeClass("disabled");
-                $(".btn-collection-file-remove").attr("data-original-title", "Remove this file");
+                $(".btn-collection-rename-file-span").attr("title", "");
+                $(".btn-collection-remove-file-span").attr("title", "");
+                $(".btn-collection-file-control").removeClass("disabled");
                 $(".btn-remove-selected-files").attr("title", "");
                 $(".tab-pane-Upload").removeClass("disabled");
                 $(".tab-pane-Upload").attr("data-original-title", "");
@@ -36,10 +34,9 @@ $(document).
             $(".lock-collection-btn").removeClass("fa-unlock");
             $(".lock-collection-btn").addClass("fa-lock");
             $(".lock-collection-btn").attr("title", "Unlock collection to edit files");
-            $(".btn-collection-file-rename").addClass("disabled");
-            $(".btn-collection-file-rename").attr("data-original-title", "Unlock collection to rename file");
-            $(".btn-collection-file-remove").addClass("disabled");
-            $(".btn-collection-file-remove").attr("data-original-title", "Unlock collection to remove file");
+            $(".btn-collection-rename-file-span").attr("title", "Unlock collection to rename file");
+            $(".btn-collection-remove-file-span").attr("title", "Unlock collection to remove file");
+            $(".btn-collection-file-control").addClass("disabled");
             $(".btn-remove-selected-files").attr("title", "Unlock collection to remove selected files");
             $(".tab-pane-Upload").addClass("disabled");
             $(".tab-pane-Upload").attr("data-original-title", "Unlock collection to upload files");
index cfb99e73b0cda17a62d9dd6871f4bd1cdede5c0c..2d2d0f25d12b462aeeed99f48646f53a4ee9a06d 100644 (file)
@@ -70,11 +70,3 @@ $active-bg: #39b3d7;
     padding: .5em 2em;
     margin: 0 1em;
 }
-
-.btn-collection-file-rename.disabled {
-    pointer-events: auto;
-}
-
-.btn-collection-file-remove.disabled {
-    pointer-events: auto;
-}
index c1c7d3b4c65ac2834c558e8c78ab1e9321f35f28..c528d24651fb60f9be097451c7767bbd89d2a179 100644 (file)
             <% end %>
 
             <% if object.editable? %>
-                <%= link_to({controller: 'collections', action: 'remove_selected_files', id: object.uuid, selection: [object.portable_data_hash+'/'+file_path]}, method: :post, remote: true, data: {confirm: "Remove #{file_path}?", toggle: 'tooltip', placement: 'top'}, class: 'btn btn-sm btn-default btn-nodecorate btn-collection-file-remove') do %>
+                <span class="btn-collection-remove-file-span">
+                <%= link_to({controller: 'collections', action: 'remove_selected_files', id: object.uuid, selection: [object.portable_data_hash+'/'+file_path]}, method: :post, remote: true, data: {confirm: "Remove #{file_path}?", toggle: 'tooltip', placement: 'top'}, class: 'btn btn-sm btn-default btn-nodecorate btn-collection-file-control', title: "Remove #{file_path}") do %>
                   <i class="fa fa-fw fa-trash-o"></i>
                 <% end %>
+                </span>
             <% end %>
         <% if CollectionsHelper::is_image(filename) %>
             <i class="fa fa-fw fa-bar-chart-o"></i>
+              <span class="btn-collection-rename-file-span">
               <% if object.editable? %>
-                <%= render_editable_attribute object, 'filename', filename, {'data-value' => file_path, 'data-toggle' => 'manual', 'selection_path' => 'rename-file-path:'+file_path}, {btnclass: 'collection-file-rename'} %>
+                <%= render_editable_attribute object, 'filename', filename, {'data-value' => file_path, 'data-toggle' => 'manual', 'selection_path' => 'rename-file-path:'+file_path}, {tiptitle: 'Edit name or directory or both for this file'} %>
+              </span>
               <% else %>
                 <%= filename %>
               <% end %>
          </div>
         <% else %>
               <% if object.editable? %>
-                <i class="fa fa-fw fa-file"></i><%= render_editable_attribute object, 'filename', filename, {'data-value' => file_path, 'data-toggle' => 'manual', 'selection_name' => 'rename-file-path:'+file_path}, {btnclass: 'collection-file-rename'}  %>
+                <span class="btn-collection-rename-file-span">
+                <i class="fa fa-fw fa-file"></i><%= render_editable_attribute object, 'filename', filename, {'data-value' => file_path, 'data-toggle' => 'manual', 'selection_name' => 'rename-file-path:'+file_path}, {tiptitle: 'Edit name or directory or both for this file', btnclass: 'collection-file-control'}  %>
+                </span>
               <% else %>
                 <i class="fa fa-fw fa-file" href="<%=object.uuid%>/<%=file_path%>" ></i> <%= filename %>
               <% end %>
index 203d08d500cb390c2a97fe400ae941561490248f..8b43e5dbe32ba9d9c58d31a5ba2f2e24b0729fde 100644 (file)
@@ -379,8 +379,10 @@ class CollectionsTest < ActionDispatch::IntegrationTest
     assert_selector 'a[data-toggle="disabled"]', text: 'Upload'
 
     within('.collection_files') do
-      assert_equal true, page.all('.btn-collection-file-rename')[0]['class'].include?('disabled')
-      assert_equal true, page.all('.btn-collection-file-remove')[0]['class'].include?('disabled')
+      file_ctrls = page.all('.btn-collection-file-control')
+      assert_equal 2, file_ctrls.size
+      assert_equal true, file_ctrls[0]['class'].include?('disabled')
+      assert_equal true, file_ctrls[1]['class'].include?('disabled')
       find('input[type=checkbox]').click
     end
 
@@ -396,8 +398,10 @@ class CollectionsTest < ActionDispatch::IntegrationTest
     assert_selector 'a', text: 'Upload'
 
     within('.collection_files') do
-      assert_equal false, page.all('.btn-collection-file-rename')[0]['class'].include?('disabled')
-      assert_equal false, page.all('.btn-collection-file-remove')[0]['class'].include?('disabled')
+      file_ctrls = page.all('.btn-collection-file-control')
+      assert_equal 2, file_ctrls.size
+      assert_equal false, file_ctrls[0]['class'].include?('disabled')
+      assert_equal false, file_ctrls[1]['class'].include?('disabled')
 
       # previous checkbox selection won't result in firing a new event;
       # undo and redo checkbox to fire the selection event again