]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-5209 Show real data in the header
authorStas Vilchik <vilchiks@gmail.com>
Fri, 16 May 2014 11:21:04 +0000 (13:21 +0200)
committerStas Vilchik <vilchiks@gmail.com>
Fri, 16 May 2014 11:21:04 +0000 (13:21 +0200)
sonar-server/src/main/coffee/component-viewer/header.coffee
sonar-server/src/main/coffee/component-viewer/main.coffee
sonar-server/src/main/hbs/component-viewer/header.hbs
sonar-server/src/main/js/common/handlebars-extensions.js

index 477059ca8639c75aca4fbc4e02f6ffc12c6afbf2..731268a19dcd71b4aac769c0d89b1a3e3ff48240 100644 (file)
@@ -64,6 +64,7 @@ define [
           unless @options.main.component.has 'msr'
             @options.main.requestMeasures(@options.main.key).done =>
               @render()
+              @ui.expandLinks.filter("[data-scope=#{scope}]").addClass 'active'
               @ui.expandedBars.filter("[data-scope=#{scope}]").show()
           else
             @ui.expandedBars.filter("[data-scope=#{scope}]").show()
@@ -113,12 +114,12 @@ define [
     serializeData: ->
       component = @options.main.component.toJSON()
       if component.measures
-        component.measures.max_issues = Math.max(
-          component.measures.blocker_issues
-          component.measures.critical_issues
-          component.measures.major_issues
-          component.measures.minor_issues
-          component.measures.info_issues
+        component.measures.maxIssues = Math.max(
+          component.measures.fBlockerIssues || 0
+          component.measures.fCriticalIssues || 0
+          component.measures.fMajorIssues || 0
+          component.measures.fMinorIssues || 0
+          component.measures.fInfoIssues || 0
         )
 
       settings: @options.main.settings.toJSON()
index c2680c88aa0b036c28e27299a4eb42ceb14be4c6..671dcfaaee76d3590fdb3407a4bc8b3b79dccc58 100644 (file)
@@ -18,7 +18,7 @@ define [
 
   $ = jQuery
 
-  API_COMPONENT = "#{baseUrl}/api/sources/app"
+  API_COMPONENT = "#{baseUrl}/api/components/app"
   API_SOURCES = "#{baseUrl}/api/sources/show"
   API_COVERAGE = "#{baseUrl}/api/coverage/show"
   API_SCM = "#{baseUrl}/api/sources/scm"
index 1768b84149dba8fce4e129e4b8bc2feed08063e0..b4070fded7829038ddbafb9d4183939d7c44d4fe 100644 (file)
     <div class="component-viewer-header-measures-scope">
       <span data-scope="coverage" class="js-toggle-coverage component-viewer-header-measures-toggle-scope inactive"></span>
       <a data-scope="basic" class="component-viewer-header-measures-expand">
-        {{#if component.measures.ncloc}}
-          <div class="component-viewer-header-measure">
-            <span class="component-viewer-header-measure-value">{{component.measures.ncloc}}</span>
-            <span class="component-viewer-header-measure-label">{{t 'metric.ncloc.name'}}</span>
-          </div>
-        {{/if}}
+        <div class="component-viewer-header-measure">
+          <span class="component-viewer-header-measure-value">{{component.measures.fNcloc}}</span>
+          <span class="component-viewer-header-measure-label">{{t 'metric.ncloc.name'}}</span>
+        </div>
         <i class="icon-dropdown"></i>
       </a>
     </div>
 
     <div class="component-viewer-header-measures-scope">
       <a data-scope="issues" class="component-viewer-header-measures-expand">
-        {{#if component.measures.debt}}
+        {{#if component.measures.fDebt}}
           <div class="component-viewer-header-measure">
-            <span class="component-viewer-header-measure-value">{{component.measures.debt}}</span>
+            <span class="component-viewer-header-measure-value">{{component.measures.fDebt}}</span>
             <span class="component-viewer-header-measure-label">Debt</span>
           </div>
         {{/if}}
-        {{#if component.measures.issues}}
+        {{#if component.measures.fIssues}}
           <div class="component-viewer-header-measure">
-            <span class="component-viewer-header-measure-value">{{component.measures.issues}}</span>
+            <span class="component-viewer-header-measure-value">{{component.measures.fIssues}}</span>
             <span class="component-viewer-header-measure-label">{{t 'metric.violations.name'}}</span>
           </div>
         {{/if}}
         <div class="component-viewer-header-measure">
           <div class="component-viewer-header-measure-issues">
             <div class="component-viewer-header-measure-issue s-blocker"
-                 style="width: {{percent component.measures.blocker_issues component.measures.max_issues}}%;"></div>
+                 style="width: {{percent component.measures.fBlockerIssues component.measures.maxIssues}}%;"></div>
             <div class="component-viewer-header-measure-issue s-critical"
-                 style="width: {{percent component.measures.critical_issues component.measures.max_issues}}%;"></div>
+                 style="width: {{percent component.measures.fCriticalIssues component.measures.maxIssues}}%;"></div>
             <div class="component-viewer-header-measure-issue s-major"
-                 style="width: {{percent component.measures.major_issues component.measures.max_issues}}%;"></div>
+                 style="width: {{percent component.measures.fMajorIssues component.measures.maxIssues}}%;"></div>
             <div class="component-viewer-header-measure-issue s-minor"
-                 style="width: {{percent component.measures.minor_issues component.measures.max_issues}}%;"></div>
+                 style="width: {{percent component.measures.fMinorIssues component.measures.maxIssues}}%;"></div>
             <div class="component-viewer-header-measure-issue s-info"
-                 style="width: {{percent component.measures.info_issues component.measures.max_issues}}%;"></div>
+                 style="width: {{percent component.measures.fInfoIssues component.measures.maxIssues}}%;"></div>
           </div>
         </div>
         <i class="icon-dropdown"></i>
          class="js-toggle-issues component-viewer-header-measures-toggle-scope {{#if settings.issues}}active{{/if}}"></a>
     </div>
 
-    <div class="component-viewer-header-measures-scope">
-      <a data-scope="coverage" class="component-viewer-header-measures-expand">
-        {{#if component.measures.coverage}}
-          <div class="component-viewer-header-measure">
-            <span class="component-viewer-header-measure-value">{{component.measures.coverage}}</span>
-            <span class="component-viewer-header-measure-label">{{t 'metric.coverage.name'}}</span>
-          </div>
-        {{/if}}
-        <i class="icon-dropdown"></i>
-      </a>
-      <a data-scope="coverage" title="Toggle coverage"
-         class="js-toggle-coverage component-viewer-header-measures-toggle-scope {{#if settings.coverage}}active{{/if}}"></a>
-    </div>
+    {{#if component.measures.fCoverage}}
+      <div class="component-viewer-header-measures-scope">
+        <a data-scope="coverage" class="component-viewer-header-measures-expand">
+            <div class="component-viewer-header-measure">
+              <span class="component-viewer-header-measure-value">{{component.measures.fCoverage}}</span>
+              <span class="component-viewer-header-measure-label">{{t 'metric.coverage.name'}}</span>
+            </div>
+          <i class="icon-dropdown"></i>
+        </a>
+        <a data-scope="coverage" title="Toggle coverage"
+           class="js-toggle-coverage component-viewer-header-measures-toggle-scope {{#if settings.coverage}}active{{/if}}"></a>
+      </div>
+    {{/if}}
 
-    <div class="component-viewer-header-measures-scope">
-      <a data-scope="duplications" class="component-viewer-header-measures-expand">
-        {{#if component.measures.duplication_density}}
-          <div class="component-viewer-header-measure">
-            <span class="component-viewer-header-measure-value">{{component.measures.duplication_density}}</span>
-            <span class="component-viewer-header-measure-label">Duplications</span>
-          </div>
-        {{/if}}
-        <i class="icon-dropdown"></i>
-      </a>
-      <a data-scope="duplications" title="Toggle duplications"
-         class="js-toggle-duplications component-viewer-header-measures-toggle-scope {{#if settings.duplications}}active{{/if}}"></a>
-    </div>
+    {{#if component.measures.fDuplicationDensity}}
+      <div class="component-viewer-header-measures-scope">
+        <a data-scope="duplications" class="component-viewer-header-measures-expand">
+            <div class="component-viewer-header-measure">
+              <span class="component-viewer-header-measure-value">{{component.measures.fDuplicationDensity}}</span>
+              <span class="component-viewer-header-measure-label">Duplications</span>
+            </div>
+          <i class="icon-dropdown"></i>
+        </a>
+        <a data-scope="duplications" title="Toggle duplications"
+           class="js-toggle-duplications component-viewer-header-measures-toggle-scope {{#if settings.duplications}}active{{/if}}"></a>
+      </div>
+    {{/if}}
   </div>
 </div>
 
index 1c5c47bfca7017dd0b227ce76f80cdf70e663054..48665f61d228eeb6301ebe10b386ee2efa5f7241 100644 (file)
@@ -32,7 +32,7 @@ define(['handlebars'], function (Handlebars) {
   });
 
   Handlebars.registerHelper('percent', function(value, total) {
-    return value / total * 100;
+    return (value || 0) / total * 100;
   });
 
   Handlebars.registerHelper('eq', function(v1, v2, options) {