aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-web/src/main/coffee/coding-rules
diff options
context:
space:
mode:
authorJean-Baptiste Lievremont <jean-baptiste.lievremont@sonarsource.com>2014-07-18 11:02:10 +0200
committerJean-Baptiste Lievremont <jean-baptiste.lievremont@sonarsource.com>2014-07-18 12:26:19 +0200
commit0867840d7ce984d7008dc6f3d1cded806bf4252d (patch)
tree530fbdc0f067bd670e17b8feb1a6061949122bdb /server/sonar-web/src/main/coffee/coding-rules
parentf85bcca528139bc6f7f68de5ad665cb6b8006265 (diff)
downloadsonarqube-0867840d7ce984d7008dc6f3d1cded806bf4252d.tar.gz
sonarqube-0867840d7ce984d7008dc6f3d1cded806bf4252d.zip
SONAR-5460 Use popup to show long (Markdown) rule parameter descriptions
Diffstat (limited to 'server/sonar-web/src/main/coffee/coding-rules')
-rw-r--r--server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-detail-view.coffee21
-rw-r--r--server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-parameter-popup-view.coffee17
2 files changed, 36 insertions, 2 deletions
diff --git a/server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-detail-view.coffee b/server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-detail-view.coffee
index 920dd632376..8d925a004d1 100644
--- a/server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-detail-view.coffee
+++ b/server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-detail-view.coffee
@@ -5,6 +5,7 @@ define [
'coding-rules/views/coding-rules-detail-quality-profile-view'
'coding-rules/views/coding-rules-detail-custom-rules-view'
'coding-rules/views/coding-rules-detail-custom-rule-view'
+ 'coding-rules/views/coding-rules-parameter-popup-view'
'templates/coding-rules'
], (
Backbone
@@ -13,6 +14,7 @@ define [
CodingRulesDetailQualityProfileView
CodingRulesDetailCustomRulesView
CodingRulesDetailCustomRuleView
+ CodingRulesParameterPopupView
Templates
) ->
@@ -67,12 +69,16 @@ define [
'click @ui.changeCustomRule': 'changeCustomRule'
'click @ui.deleteCustomRule': 'deleteCustomRule'
+ 'click .coding-rules-detail-parameter-details': 'showParamPopup'
initialize: (options) ->
super options
if @model.get 'params'
- @model.set 'params', _.sortBy(@model.get('params'), 'key')
+ origParams = @model.get('params')
+ _.map origParams, (param) =>
+ _.extend param, showMoreLink: (param.htmlDesc and param.htmlDesc.indexOf('<') >= 0)
+ @model.set 'params', _.sortBy(origParams, 'key')
_.map options.actives, (active) =>
_.extend active, options.app.getQualityProfileByKey active.qProfile
@@ -100,7 +106,7 @@ define [
@listenTo @contextProfile, 'destroy', @hideContext
onRender: ->
- @$el.find('.open-modal').modal();
+ @$el.find('.open-modal').modal()
if @model.get 'isTemplate'
@$(@contextRegion.el).hide()
@@ -163,6 +169,17 @@ define [
@ui.extendDescriptionSpinner.hide()
+ showParamPopup: (e) ->
+ e.stopPropagation()
+ jQuery('body').click()
+ key = jQuery(e.currentTarget).closest('.coding-rules-detail-parameter').data 'key'
+ popup = new CodingRulesParameterPopupView
+ model: new Backbone.Model _.findWhere(@model.get('params'), key: key)
+ triggerEl: jQuery(e.currentTarget)
+ popup.render()
+ false
+
+
hideContext: ->
@contextRegion.reset()
@$(@contextRegion.el).hide()
diff --git a/server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-parameter-popup-view.coffee b/server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-parameter-popup-view.coffee
new file mode 100644
index 00000000000..4277d205433
--- /dev/null
+++ b/server/sonar-web/src/main/coffee/coding-rules/views/coding-rules-parameter-popup-view.coffee
@@ -0,0 +1,17 @@
+define [
+ 'backbone.marionette'
+ 'templates/coding-rules'
+ 'component-viewer/popup'
+# 'component-viewer/utils'
+], (
+ Marionette
+ Templates
+ Popup
+# utils
+) ->
+
+ $ = jQuery
+
+
+ class CodingRulesParameterPopupView extends Popup
+ template: Templates['coding-rules-parameter-popup']