From c99cbb7754882e23f461833bc1c0ed4010ac510c Mon Sep 17 00:00:00 2001 From: Stas Vilchik Date: Thu, 26 Jun 2014 12:04:17 +0600 Subject: [PATCH] SONAR-5209 Permalink feedback --- .../src/main/resources/org/sonar/l10n/core.properties | 1 + sonar-server/src/main/coffee/component-viewer/app.coffee | 6 ++++++ .../src/main/coffee/component-viewer/header.coffee | 6 ++++++ .../coffee/component-viewer/line-actions-popup.coffee | 9 +++++++++ .../src/main/coffee/component-viewer/source.coffee | 1 + .../src/main/hbs/component-viewer/line-options-popup.hbs | 8 +++++++- sonar-server/src/main/hbs/component-viewer/source.hbs | 6 +----- 7 files changed, 31 insertions(+), 6 deletions(-) diff --git a/sonar-core/src/main/resources/org/sonar/l10n/core.properties b/sonar-core/src/main/resources/org/sonar/l10n/core.properties index d3a8c178e74..93e5f0f0b79 100644 --- a/sonar-core/src/main/resources/org/sonar/l10n/core.properties +++ b/sonar-core/src/main/resources/org/sonar/l10n/core.properties @@ -2663,6 +2663,7 @@ component_viewer.show_full_source=Show full source component_viewer.show_raw_source=Show raw source component_viewer.more_actions=More actions component_viewer.new_window=Open in new window +component_viewer.get_permalink=Get Permalink component_viewer.workspace=Workspace component_viewer.workspace.tooltip=Keeps track of history of navigation diff --git a/sonar-server/src/main/coffee/component-viewer/app.coffee b/sonar-server/src/main/coffee/component-viewer/app.coffee index 7b3e11fd674..030b538f6d9 100644 --- a/sonar-server/src/main/coffee/component-viewer/app.coffee +++ b/sonar-server/src/main/coffee/component-viewer/app.coffee @@ -65,6 +65,12 @@ requirejs [ viewer.off 'sized' viewer.scrollToLine params.line + if params.blocks? + blocks = params.blocks.split(';').map (b) -> + t = b.split ',' + from: +t[0], to: +t[1] + viewer.on 'resetShowBlocks', -> viewer.sourceView.showBlocks = blocks + viewer.open params.component viewer.on 'loaded', -> diff --git a/sonar-server/src/main/coffee/component-viewer/header.coffee b/sonar-server/src/main/coffee/component-viewer/header.coffee index 5ded3d82d61..6889b2a66e3 100644 --- a/sonar-server/src/main/coffee/component-viewer/header.coffee +++ b/sonar-server/src/main/coffee/component-viewer/header.coffee @@ -207,12 +207,18 @@ define [ method.call @options.main, extra + serializeShowBlocks: -> + blocks = @options.main.sourceView.showBlocks.map (b) -> "#{b.from},#{b.to}" + blocks.join ';' + + getPermalink: -> params = [] params.push key: 'component', value: @options.main.component.get 'key' settings = [] _.map @options.main.settings.toJSON(), (v, k) -> settings.push k if v params.push key: 'settings', value: settings.join ',' + params.push key: 'blocks', value: @serializeShowBlocks() activeHeaderTab = @state.get 'activeHeaderTab' if activeHeaderTab params.push key: 'tab', value: activeHeaderTab diff --git a/sonar-server/src/main/coffee/component-viewer/line-actions-popup.coffee b/sonar-server/src/main/coffee/component-viewer/line-actions-popup.coffee index 652e0dc679c..303fe28b1e5 100644 --- a/sonar-server/src/main/coffee/component-viewer/line-actions-popup.coffee +++ b/sonar-server/src/main/coffee/component-viewer/line-actions-popup.coffee @@ -18,9 +18,15 @@ define [ events: + 'click .js-get-permalink': 'getPermalink' 'click .js-add-manual-issue': 'addManualIssue' + getPermalink: (e) -> + e.preventDefault() + @options.main.headerView.getPermalink() + + addManualIssue: (e) -> e.preventDefault() line = @options.row.data 'line-number' @@ -42,3 +48,6 @@ define [ @options.main.sourceView.render() + serializeData: -> + _.extend super, + state: @options.main.state.toJSON() diff --git a/sonar-server/src/main/coffee/component-viewer/source.coffee b/sonar-server/src/main/coffee/component-viewer/source.coffee index 37dec376836..9b15f4e6276 100644 --- a/sonar-server/src/main/coffee/component-viewer/source.coffee +++ b/sonar-server/src/main/coffee/component-viewer/source.coffee @@ -58,6 +58,7 @@ define [ resetShowBlocks: -> @showBlocks = [] + @options.main.trigger 'resetShowBlocks' addShowBlock: (from, to, forceIncludeZero = false) -> diff --git a/sonar-server/src/main/hbs/component-viewer/line-options-popup.hbs b/sonar-server/src/main/hbs/component-viewer/line-options-popup.hbs index eccd2e20a09..04e4e6c6457 100644 --- a/sonar-server/src/main/hbs/component-viewer/line-options-popup.hbs +++ b/sonar-server/src/main/hbs/component-viewer/line-options-popup.hbs @@ -2,8 +2,14 @@
{{t 'component_viewer.line_actions'}}
- {{t 'component_viewer.add_manual_issue'}} + {{t 'component_viewer.get_permalink'}}
+ + {{#if state.canCreateManualIssue}} +
+ {{t 'component_viewer.add_manual_issue'}} +
+ {{/if}}
\ No newline at end of file diff --git a/sonar-server/src/main/hbs/component-viewer/source.hbs b/sonar-server/src/main/hbs/component-viewer/source.hbs index a0ae95fe133..f033fb4d582 100644 --- a/sonar-server/src/main/hbs/component-viewer/source.hbs +++ b/sonar-server/src/main/hbs/component-viewer/source.hbs @@ -66,11 +66,7 @@ {{/if}} - {{#if ../../state.canCreateManualIssue}} - {{lineNumber}} - {{else}} - {{lineNumber}} - {{/if}} + {{lineNumber}}
{{{code}}}
-- 2.39.5