aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-server/src/main/coffee/component-viewer/workspace.coffee
diff options
context:
space:
mode:
Diffstat (limited to 'sonar-server/src/main/coffee/component-viewer/workspace.coffee')
-rw-r--r--sonar-server/src/main/coffee/component-viewer/workspace.coffee18
1 files changed, 17 insertions, 1 deletions
diff --git a/sonar-server/src/main/coffee/component-viewer/workspace.coffee b/sonar-server/src/main/coffee/component-viewer/workspace.coffee
index 4eaf851fa72..ab7662452df 100644
--- a/sonar-server/src/main/coffee/component-viewer/workspace.coffee
+++ b/sonar-server/src/main/coffee/component-viewer/workspace.coffee
@@ -14,7 +14,8 @@ define [
events:
- 'click .component-viewer-workspace-item [data-key]': 'goToWorkspaceItem'
+ 'click .component-viewer-workspace-item > a[data-key]': 'goToWorkspaceItem'
+ 'click .component-viewer-workspace-option > a[data-key]': 'goToWorkspaceOption'
onRender: ->
@@ -30,6 +31,21 @@ define [
@options.main.addTransition workspaceItem.get('key'), workspaceItem.get('transition')
+ goToWorkspaceOption: (e) ->
+ workspaceKey = $(e.currentTarget).data 'workspace-key'
+ key = $(e.currentTarget).data 'key'
+ name = $(e.currentTarget).text()
+
+ workspace = @options.main.workspace
+ workspaceItem = workspace.findWhere key: workspaceKey
+ workspaceItemOptions = workspaceItem.get 'options'
+ workspaceItemOptions.forEach (option) -> option.active = option.name == name
+
+ @options.main.addTransition workspaceItem.get('key'), workspaceItem.get('transition'), null, [
+ { key: key, name: name }
+ ]
+
+
serializeData: ->
_.extend super,
workspace: @options.main.workspace.toJSON()