diff options
Diffstat (limited to 'sonar-server/src/main/coffee/component-viewer/workspace.coffee')
-rw-r--r-- | sonar-server/src/main/coffee/component-viewer/workspace.coffee | 18 |
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() |