aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulien Lancelot <julien.lancelot@gmail.com>2013-06-25 17:38:07 +0200
committerJulien Lancelot <julien.lancelot@gmail.com>2013-06-25 17:38:07 +0200
commit37d68374311e7559498cf07ccadc970bfb82ff4a (patch)
treef72a613c036b8f5629e16cc5254a66e4be1ee7a0
parent482dbc1a1fce620b16ad69e6e59c246bb729fd6c (diff)
downloadsonarqube-37d68374311e7559498cf07ccadc970bfb82ff4a.tar.gz
sonarqube-37d68374311e7559498cf07ccadc970bfb82ff4a.zip
SONAR-3714 Execute bulk change from form
-rw-r--r--sonar-server/src/main/webapp/WEB-INF/app/controllers/issues_controller.rb14
-rw-r--r--sonar-server/src/main/webapp/WEB-INF/app/views/issues/_bulk_change_form.html.erb3
2 files changed, 11 insertions, 6 deletions
diff --git a/sonar-server/src/main/webapp/WEB-INF/app/controllers/issues_controller.rb b/sonar-server/src/main/webapp/WEB-INF/app/controllers/issues_controller.rb
index 3bf89be7572..ee7789ab664 100644
--- a/sonar-server/src/main/webapp/WEB-INF/app/controllers/issues_controller.rb
+++ b/sonar-server/src/main/webapp/WEB-INF/app/controllers/issues_controller.rb
@@ -183,22 +183,26 @@ class IssuesController < ApplicationController
def bulk_change_form
# Load maximum number of issues
- @criteria_params = criteria_params
+ @criteria_params = criteria_params_to_save
@criteria_params['pageSize'] = -1
issue_filter_result = Internal.issues.execute(@criteria_params)
@issue_query = issue_filter_result.query
@issues_result = issue_filter_result.result
- @issue_keys = @issues_result.issues.map {|issue| issue.key()}.join(',') if !@issues_result.issues.empty?
-
+ @issue_keys = @issues_result.issues.map {|issue| issue.key()}.join(',') unless @issues_result.issues.empty?
render :partial => 'issues/bulk_change_form'
end
# POST /issues/bulk_change
def bulk_change
verify_post_request
-
- render :text => '', :status => 200
+ result = Internal.issues.bulkChange(params, "")
+ if result.ok
+ render :text => params[:criteria_params], :status => 200
+ else
+ @errors = result.errors
+ render :partial => 'issues/bulk_change_form', :status => 400
+ end
end
diff --git a/sonar-server/src/main/webapp/WEB-INF/app/views/issues/_bulk_change_form.html.erb b/sonar-server/src/main/webapp/WEB-INF/app/views/issues/_bulk_change_form.html.erb
index ee68ea1d92d..3a80795c07b 100644
--- a/sonar-server/src/main/webapp/WEB-INF/app/views/issues/_bulk_change_form.html.erb
+++ b/sonar-server/src/main/webapp/WEB-INF/app/views/issues/_bulk_change_form.html.erb
@@ -1,5 +1,6 @@
<form id="bulk-change-form" method="post" action="<%= ApplicationController.root_context -%>/issues/bulk_change">
<input type="hidden" name="issues" value="<%= @issue_keys -%>">
+ <input type="hidden" name="criteria_params" value="<%= @criteria_params.to_query -%>">
<fieldset>
<div class="modal-head">
<h2><%= message('issue_filter.bulk_change.form.title', {:params => @issues_result.issues.size.to_s}) -%></h2>
@@ -58,6 +59,6 @@
</form>
<script>
$j("#bulk-change-form").modalForm({success:function (data) {
- window.location = baseUrl + '/issues/search/' + data;
+ window.location = baseUrl + '/issues/search?' + data;
}});
</script> \ No newline at end of file