]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5209 Issues bulk change
authorStas Vilchik <vilchiks@gmail.com>
Mon, 19 May 2014 11:31:25 +0000 (13:31 +0200)
committerStas Vilchik <vilchiks@gmail.com>
Mon, 19 May 2014 11:31:32 +0000 (13:31 +0200)
sonar-server/src/main/coffee/component-viewer/header.coffee
sonar-server/src/main/hbs/component-viewer/header/_issues-header.hbs
sonar-server/src/main/less/component-viewer.less

index d8e0e4b5968e5a8f4c934914583851a5991d7bc0..e76529da1a8478c6a70c10c5a0299c6bded10261 100644 (file)
@@ -27,6 +27,8 @@ define [
       'click .js-toggle-duplications': 'toggleDuplications'
       'click .js-toggle-scm': 'toggleSCM'
 
+      'click .js-issues-bulk-change': 'issuesBulkChange'
+
       'click .js-filter-current-issue': 'filterByCurrentIssue'
       'click .js-filter-all-issues': 'filterByAllIssues'
       'click .js-filter-resolved-issues': 'filterByResolvedIssues'
@@ -100,6 +102,13 @@ define [
     toggleWorkspace: (e) -> @toggleSetting e, @options.main.showWorkspace, @options.main.hideWorkspace
 
 
+    issuesBulkChange: ->
+      issues = @model.get('activeIssues')?.map (issue) -> issue.key
+      if issues.length > 0
+        url = "#{baseUrl}/issues/bulk_change_form?issues=#{issues.join()}"
+        openModalWindow url, {}
+
+
     filterLines: (e, method) ->
       @$('.component-viewer-header-expanded-bar-section-list .active').removeClass 'active'
       $(e.currentTarget).addClass 'active'
index 8dacac532ffef6d04c279b4a453a898e97364795..3d0756ef718603569584d83a1ebd490a4d3eece8 100644 (file)
@@ -71,4 +71,8 @@
       </a></li>
     {{/if}}
   </ul>
-</div>
\ No newline at end of file
+</div>
+
+<a class="component-viewer-header-expanded-bar-bulk-change js-issues-bulk-change">
+  <i class="icon-bulk-change"></i> Bulk Change
+</a>
\ No newline at end of file
index e5aec7cee48c53be347b4bd8714f12e8ac22e5c7..7d37c11a60df4b591a70b4e0acecc05e4fa0cf1c 100644 (file)
 .component-viewer-header-expanded-bar {
   display: none;
   .clearfix;
+  position: relative;
   margin-top: -1px;
   border: 1px solid @barBorderColor;
   border-top: none;
   }
 }
 
+.component-viewer-header-expanded-bar-bulk-change {
+  position: absolute;
+  right: 0;
+  bottom: 0;
+  padding: 4px 10px;
+  font-size: @smallFontSize;
+  .trans;
+
+  &:hover { background-color: @barBackgroundColor; }
+}
+
+
 .component-viewer-header-decoration {
   margin-top: 10px;
 }