Paulo Reis 9 лет назад
Родитель
Сommit
19828d3c5b

+ 19 - 0
services/web/app/coffee/Features/DocumentUpdater/DocumentUpdaterHandler.coffee

@@ -153,6 +153,25 @@ module.exports = DocumentUpdaterHandler =
 				logger.error {project_id, doc_id, change_id}, "doc updater returned a non-success status code: #{res.statusCode}"
 				logger.error {project_id, doc_id, change_id}, "doc updater returned a non-success status code: #{res.statusCode}"
 				callback new Error("doc updater returned a non-success status code: #{res.statusCode}")
 				callback new Error("doc updater returned a non-success status code: #{res.statusCode}")
 
 
+	bulkAcceptChanges: (project_id, doc_id, change_ids, callback = (error) ->) ->
+		timer = new metrics.Timer("bulk-accept-changes")
+		reqSettings =
+			url: "#{settings.apis.documentupdater.url}/project/#{project_id}/doc/#{doc_id}/change/accept"
+			json:
+				change_ids: change_ids
+		logger.log {project_id, doc_id }, "bulk accepting #{ change_ids.length } changes"
+		request.post reqSettings, (error, res, body)->
+			timer.done()
+			if error?
+				logger.error {err:error, project_id, doc_id }, "error accepting #{ change_ids.length } changes in doc updater"
+				return callback(error)
+			if res.statusCode >= 200 and res.statusCode < 300
+				logger.log {project_id, doc_id }, "accepted #{ change_ids.length } changes in document updater"
+				return callback(null)
+			else
+				logger.error {project_id, doc_id }, "doc updater returned a non-success status code: #{res.statusCode}"
+				callback new Error("doc updater returned a non-success status code: #{res.statusCode}")
+
 	deleteThread: (project_id, doc_id, thread_id, callback = (error) ->) ->
 	deleteThread: (project_id, doc_id, thread_id, callback = (error) ->) ->
 		timer = new metrics.Timer("delete-thread")
 		timer = new metrics.Timer("delete-thread")
 		url = "#{settings.apis.documentupdater.url}/project/#{project_id}/doc/#{doc_id}/comment/#{thread_id}"
 		url = "#{settings.apis.documentupdater.url}/project/#{project_id}/doc/#{doc_id}/comment/#{thread_id}"

+ 0 - 3
services/web/public/coffee/ide/editor/directives/aceEditor/track-changes/TrackChangesManager.coffee

@@ -32,9 +32,6 @@ define [
 			@$scope.$on "change:reject", (e, change_id) =>
 			@$scope.$on "change:reject", (e, change_id) =>
 				@rejectChangeId(change_id)
 				@rejectChangeId(change_id)
 
 
-			@$scope.$on "change:bulk-accept", (e, change_ids) =>
-				@bulkAcceptChangeIds(change_ids)
-			
 			@$scope.$on "change:bulk-reject", (e, change_ids) =>
 			@$scope.$on "change:bulk-reject", (e, change_ids) =>
 				@bulkRejectChangeIds(change_ids)
 				@bulkRejectChangeIds(change_ids)
 			
 			

+ 3 - 1
services/web/public/coffee/ide/review-panel/controllers/ReviewPanelController.coffee

@@ -328,7 +328,9 @@ define [
 			event_tracking.sendMB "rp-change-rejected", { view: if $scope.ui.reviewPanelOpen then $scope.reviewPanel.subView else 'mini' }
 			event_tracking.sendMB "rp-change-rejected", { view: if $scope.ui.reviewPanelOpen then $scope.reviewPanel.subView else 'mini' }
 		
 		
 		$scope.bulkAccept = () ->
 		$scope.bulkAccept = () ->
-			$scope.$broadcast "change:bulk-accept", $scope.reviewPanel.selectedEntryIds.slice()
+			entry_ids = $scope.reviewPanel.selectedEntryIds.slice()
+			$http.post "/project/#{$scope.project_id}/doc/#{$scope.editor.open_doc_id}/changes/accept", { change_ids: entry_ids, _csrf: window.csrfToken}
+			$scope.$broadcast "change:bulk-accept", entry_ids
 			$scope.reviewPanel.selectedEntryIds = []
 			$scope.reviewPanel.selectedEntryIds = []
 			event_tracking.sendMB "rp-bulk-accept", { 
 			event_tracking.sendMB "rp-bulk-accept", { 
 				view: if $scope.ui.reviewPanelOpen then $scope.reviewPanel.subView else 'mini',  
 				view: if $scope.ui.reviewPanelOpen then $scope.reviewPanel.subView else 'mini',