]> source.dussan.org Git - sonarqube.git/commitdiff
SONAR-3166 Provide by default a new "Reviews" page
authorFabrice Bellingard <bellingard@gmail.com>
Fri, 13 Jan 2012 11:16:16 +0000 (12:16 +0100)
committerFabrice Bellingard <bellingard@gmail.com>
Fri, 13 Jan 2012 11:16:16 +0000 (12:16 +0100)
plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/CorePlugin.java
plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/dashboards/ReviewsDashboard.java [new file with mode: 0644]
plugins/sonar-core-plugin/src/main/resources/org/sonar/plugins/core/widgets/actionPlans/action_plans.html.erb
plugins/sonar-l10n-en-plugin/src/main/resources/org/sonar/l10n/core.properties

index 24319ea90df80cc2d43ec10c4767e58fa9afec1a..0b78dedc83c32e2a985097ea107f47f899f94751 100644 (file)
@@ -36,6 +36,7 @@ import org.sonar.plugins.core.charts.XradarChart;
 import org.sonar.plugins.core.colorizers.JavaColorizerFormat;
 import org.sonar.plugins.core.dashboards.HotspotsDashboard;
 import org.sonar.plugins.core.dashboards.DefaultDashboard;
+import org.sonar.plugins.core.dashboards.ReviewsDashboard;
 import org.sonar.plugins.core.metrics.UserManagedMetrics;
 import org.sonar.plugins.core.security.ApplyProjectRolesDecorator;
 import org.sonar.plugins.core.sensors.*;
@@ -254,6 +255,7 @@ public class CorePlugin extends SonarPlugin {
     // dashboards
     extensions.add(DefaultDashboard.class);
     extensions.add(HotspotsDashboard.class);
+    extensions.add(ReviewsDashboard.class);
 
     // chart
     extensions.add(XradarChart.class);
diff --git a/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/dashboards/ReviewsDashboard.java b/plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/dashboards/ReviewsDashboard.java
new file mode 100644 (file)
index 0000000..7e7ff6e
--- /dev/null
@@ -0,0 +1,61 @@
+/*
+ * Sonar, open source software quality management tool.
+ * Copyright (C) 2008-2012 SonarSource
+ * mailto:contact AT sonarsource DOT com
+ *
+ * Sonar is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * Sonar is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with Sonar; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02
+ */
+package org.sonar.plugins.core.dashboards;
+
+import org.sonar.api.web.Dashboard;
+import org.sonar.api.web.DashboardLayout;
+import org.sonar.api.web.DashboardTemplate;
+
+/**
+ * Reviews dashboard for Sonar
+ *
+ * @since 2.14
+ */
+public final class ReviewsDashboard extends DashboardTemplate {
+
+  @Override
+  public String getName() {
+    return "Reviews";
+  }
+
+  @Override
+  public Dashboard createDashboard() {
+    Dashboard dashboard = Dashboard.create();
+    dashboard.setLayout(DashboardLayout.TWO_COLUMNS);
+    addFirstColumn(dashboard);
+    addSecondColumn(dashboard);
+    return dashboard;
+  }
+
+  private void addFirstColumn(Dashboard dashboard) {
+    dashboard.addWidget("reviews_metrics", 1);
+    dashboard.addWidget("action_plans", 1);
+    dashboard.addWidget("planned_reviews", 1);
+    dashboard.addWidget("unplanned_reviews", 1);
+  }
+
+  private void addSecondColumn(Dashboard dashboard) {
+    dashboard.addWidget("false_positive_reviews", 2);
+    dashboard.addWidget("reviews_per_developer", 2);
+    dashboard.addWidget("my_reviews", 2);
+    dashboard.addWidget("project_reviews", 2);
+  }
+
+}
\ No newline at end of file
index 74305c4dd888a7218921f8b6beb4e0ed2ca4bc19..301583d8b5db147c255c18ea98a3012d69a55158 100644 (file)
@@ -36,7 +36,7 @@
       %>
       <tr>
         <td class="nowrap"><%= h(plan.name) -%></td>
-        <td class="nowrap small <%= 'over-due' if plan.over_due? -%>" align="right"><%= plan.dead_line ? plan.dead_line.strftime("%d %b %Y") : ' '  -%></td>
+        <td class="nowrap small <%= 'over-due' if plan.over_due? -%>" style="text-align: right; padding-left:10px"><%= plan.dead_line ? plan.dead_line.strftime("%d %b %Y") : ' '  -%></td>
         <% if plan.progress[:total]==0 %>
         <td class="noprogress nowrap"><%= message('action_plans.no_reviews_linked_to_action_plan') -%></td>
         <% else %>
index 561eba8c64721a17410cea14f477d80430eb59e8..520f66eb4b5fc01ceb9036514ada4b474e475c91 100644 (file)
@@ -549,6 +549,7 @@ property.category.server_id=Server ID
 # Default dashboard
 dashboard.Dashboard.name=Dashboard
 dashboard.Hotspots.name=Hotspots
+dashboard.Reviews.name=Reviews
 
 #------------------------------------------------------------------------------
 #