]> source.dussan.org Git - sonarqube.git/commitdiff
Merge branch 'branch-4.4'
authorStas Vilchik <vilchiks@gmail.com>
Wed, 30 Jul 2014 08:53:14 +0000 (10:53 +0200)
committerStas Vilchik <vilchiks@gmail.com>
Wed, 30 Jul 2014 08:53:14 +0000 (10:53 +0200)
Conflicts:
sonar-server/src/main/coffee/drilldown/app.coffee

1  2 
server/sonar-web/src/main/coffee/drilldown/app.coffee

index c1179e3e05d3276bcb821b73c100e38e4c740997,0000000000000000000000000000000000000000..860b9b3d985515faa51f2bcd77808a42d5a30f71
mode 100644,000000..100644
--- /dev/null
@@@ -1,100 -1,0 +1,102 @@@
-       viewer.open(key).done ->
 +requirejs.config
 +  baseUrl: "#{baseUrl}/js"
 +
 +  paths:
 +    'backbone': 'third-party/backbone'
 +    'backbone.marionette': 'third-party/backbone.marionette'
 +    'handlebars': 'third-party/handlebars'
 +
 +  shim:
 +    'backbone.marionette':
 +      deps: ['backbone']
 +      exports: 'Marionette'
 +    'backbone':
 +      exports: 'Backbone'
 +    'handlebars':
 +      exports: 'Handlebars'
 +
 +
 +requirejs [
 +  'backbone.marionette'
 +  'component-viewer/main'
 +  'drilldown/conf'
 +], (
 +  Marionette
 +  ComponentViewer
 +  MetricConf
 +) ->
 +
 +  $ = jQuery
 +  App = new Marionette.Application()
 +  el = $('#accordion-panel')
 +
 +
 +  App.addRegions
 +    viewerRegion: '#accordion-panel'
 +
 +
 +  App.resizeContainer = ->
 +    height = Math.min 780, ($(window).height() - 20)
 +    el.innerHeight(height)
 +
 +
 +  App.requestComponentViewer = ->
 +    unless App.componentViewer?
 +      @resizeContainer()
 +      $(window).on 'resize', => @resizeContainer()
 +      App.componentViewer = new ComponentViewer
 +        elementToFit: el
 +      App.viewerRegion.show App.componentViewer
 +    App.componentViewer
 +
 +
 +  App.addInitializer ->
 +    # Define parameters
 +    drilldown = window.drilldown || {}
 +    activeHeaderTab = 'issues'
 +    activeHeaderItem = '.js-filter-unresolved-issues'
 +    if drilldown.metric?
 +      metricConf = MetricConf[drilldown.metric]
 +      if metricConf?
 +        activeHeaderTab = metricConf.tab
 +        activeHeaderItem = metricConf.item
 +      else
 +        activeHeaderTab = 'basic'
 +        activeHeaderItem = null
 +    else if drilldown.rule?
 +      activeHeaderTab = 'issues'
 +      activeHeaderItem = ".js-filter-rule[data-rule='#{drilldown.rule}']"
 +    else if drilldown.severity?
 +      activeHeaderTab = 'issues'
 +      activeHeaderItem = ".js-filter-#{drilldown.severity}-issues"
 +
 +    # Add event listeners
 +    $('.js-drilldown-link').on 'click', (e) ->
 +      e.preventDefault()
 +      key = $(e.currentTarget).data 'key'
 +      viewer = App.requestComponentViewer()
 +
 +      f = ->
 +        if drilldown.period?
 +          viewer.enablePeriod drilldown.period, activeHeaderItem
 +        else if activeHeaderItem?
 +          viewer.state.set activeHeaderTab: activeHeaderTab, activeHeaderItem: activeHeaderItem
 +          viewer.render()
 +        else viewer.showAllLines()
 +
++      viewer.open key
++      viewer.on 'loaded', ->
++        viewer.off 'loaded'
 +        if activeHeaderTab?
 +          viewer.headerView.enableBar(activeHeaderTab).done -> f()
 +        else f()
 +
 +
 +
 +  # Message bundles
 +  l10nXHR = window.requestMessages()
 +
 +
 +  $.when(l10nXHR).done ->
 +    # Start the application
 +    App.start()