From dcf3d8059cbef99b0ef458bd128f714081ab92a5 Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Tue, 29 Sep 2015 17:47:20 +0200 Subject: [PATCH] SONAR-6882 Order conditions of a quality gate by metric name --- .../src/main/js/apps/quality-gates/conditions.js | 3 +-- .../src/main/js/apps/quality-gates/details-view.js | 9 ++++++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/server/sonar-web/src/main/js/apps/quality-gates/conditions.js b/server/sonar-web/src/main/js/apps/quality-gates/conditions.js index 0307ebf0cb7..7599c38f06e 100644 --- a/server/sonar-web/src/main/js/apps/quality-gates/conditions.js +++ b/server/sonar-web/src/main/js/apps/quality-gates/conditions.js @@ -2,8 +2,7 @@ import Backbone from 'backbone'; import Condition from './condition'; export default Backbone.Collection.extend({ - model: Condition, - comparator: 'metric' + model: Condition }); diff --git a/server/sonar-web/src/main/js/apps/quality-gates/details-view.js b/server/sonar-web/src/main/js/apps/quality-gates/details-view.js index 0c97cb26c01..6f7429cc5f6 100644 --- a/server/sonar-web/src/main/js/apps/quality-gates/details-view.js +++ b/server/sonar-web/src/main/js/apps/quality-gates/details-view.js @@ -21,8 +21,15 @@ export default Marionette.LayoutView.extend({ this.showProjects(); }, + orderByName: function (conditions) { + let metrics = this.options.metrics; + return _.sortBy(conditions, (condition) => { + return _.findWhere(metrics, { key: condition.metric }).name; + }); + }, + showConditions: function () { - var conditions = new Conditions(this.model.get('conditions')), + var conditions = new Conditions(this.orderByName(this.model.get('conditions'))), view = new DetailConditionsView({ canEdit: this.options.canEdit, collection: conditions, -- 2.39.5