From 5e58f0a0ebfcf523fa1bd7cc74e3808140c75261 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 20 Feb 2012 12:33:57 -0500
Subject: [PATCH] Workaround 1 sec resolution of File.lastModified on Linux (issue-55)
---
src/com/gitblit/wicket/pages/ActivityPage.java | 53 ++++++++++++++++++++++++++++++-----------------------
1 files changed, 30 insertions(+), 23 deletions(-)
diff --git a/src/com/gitblit/wicket/pages/ActivityPage.java b/src/com/gitblit/wicket/pages/ActivityPage.java
index ebdfee3..634b298 100644
--- a/src/com/gitblit/wicket/pages/ActivityPage.java
+++ b/src/com/gitblit/wicket/pages/ActivityPage.java
@@ -24,17 +24,19 @@
import java.util.Map;
import java.util.Set;
-import org.apache.wicket.Application;
import org.apache.wicket.PageParameters;
import org.apache.wicket.behavior.HeaderContributor;
import org.apache.wicket.markup.html.basic.Label;
import com.gitblit.GitBlit;
+import com.gitblit.Keys;
import com.gitblit.models.Activity;
import com.gitblit.models.Metric;
import com.gitblit.models.RepositoryModel;
import com.gitblit.utils.ActivityUtils;
+import com.gitblit.utils.StringUtils;
import com.gitblit.wicket.PageRegistration;
+import com.gitblit.wicket.PageRegistration.DropDownMenuItem;
import com.gitblit.wicket.PageRegistration.DropDownMenuRegistration;
import com.gitblit.wicket.WicketUtils;
import com.gitblit.wicket.charting.GoogleChart;
@@ -94,12 +96,34 @@
add(new ActivityPanel("activityPanel", recentActivity));
}
}
-
+
+ @Override
+ protected boolean reusePageParameters() {
+ return true;
+ }
+
@Override
protected void addDropDownMenus(List<PageRegistration> pages) {
- DropDownMenuRegistration menu = new DropDownMenuRegistration("gb.filters", ActivityPage.class);
- menu.menuItems.addAll(getFilterMenuItems());
- pages.add(menu);
+ DropDownMenuRegistration filters = new DropDownMenuRegistration("gb.filters",
+ ActivityPage.class);
+
+ PageParameters currentParameters = getPageParameters();
+ int daysBack = GitBlit.getInteger(Keys.web.activityDuration, 14);
+ if (currentParameters != null && !currentParameters.containsKey("db")) {
+ currentParameters.put("db", daysBack);
+ }
+
+ // preserve time filter options on repository choices
+ filters.menuItems.addAll(getRepositoryFilterItems(currentParameters));
+
+ // preserve repository filter options on time choices
+ filters.menuItems.addAll(getTimeFilterItems(currentParameters));
+
+ if (filters.menuItems.size() > 0) {
+ // Reset Filter
+ filters.menuItems.add(new DropDownMenuItem(getString("gb.reset"), null, null));
+ }
+ pages.add(filters);
}
/**
@@ -128,7 +152,7 @@
// aggregate repository metrics
for (Map.Entry<String, Metric> entry : activity.getRepositoryMetrics().entrySet()) {
- String repository = entry.getKey();
+ String repository = StringUtils.stripDotGit(entry.getKey());
if (!repositoryMetrics.containsKey(repository)) {
repositoryMetrics.put(repository, new Metric(repository));
}
@@ -177,22 +201,5 @@
charts.addChart(chart);
return charts;
- }
-
- @Override
- protected void onBeforeRender() {
- if (GitBlit.isDebugMode()) {
- // strip Wicket tags in debug mode for jQuery DOM traversal
- Application.get().getMarkupSettings().setStripWicketTags(true);
- }
- super.onBeforeRender();
- }
- @Override
- protected void onAfterRender() {
- if (GitBlit.isDebugMode()) {
- // restore Wicket debug tags
- Application.get().getMarkupSettings().setStripWicketTags(false);
- }
- super.onAfterRender();
}
}
--
Gitblit v1.9.1