From a48c33a76f3497d33e0c3d0d3cf1a59aef23679f Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Wed, 11 Jan 2012 16:35:11 -0500 Subject: [PATCH] Fixed missing gbapi ant tag dependency in build process --- src/com/gitblit/wicket/pages/ActivityPage.java | 81 +++++++++++++++++++++++----------------- 1 files changed, 47 insertions(+), 34 deletions(-) diff --git a/src/com/gitblit/wicket/pages/ActivityPage.java b/src/com/gitblit/wicket/pages/ActivityPage.java index 011eef1..aa2f266 100644 --- a/src/com/gitblit/wicket/pages/ActivityPage.java +++ b/src/com/gitblit/wicket/pages/ActivityPage.java @@ -17,7 +17,6 @@ import java.text.MessageFormat; import java.text.SimpleDateFormat; -import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; @@ -25,18 +24,21 @@ 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.models.UserModel; import com.gitblit.utils.ActivityUtils; import com.gitblit.utils.StringUtils; -import com.gitblit.wicket.GitBlitWebSession; +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; import com.gitblit.wicket.charting.GoogleCharts; @@ -54,7 +56,7 @@ public class ActivityPage extends RootPage { public ActivityPage(PageParameters params) { - super(); + super(params); setupPage("", ""); // parameters @@ -96,40 +98,33 @@ } } - private List<RepositoryModel> getRepositories(PageParameters params) { - final UserModel user = GitBlitWebSession.get().getUser(); - String set = WicketUtils.getSet(params); - String repositoryName = WicketUtils.getRepositoryName(params); + @Override + protected boolean reusePageParameters() { + return true; + } - List<RepositoryModel> models = null; - if (!StringUtils.isEmpty(repositoryName)) { - // named repository - models = new ArrayList<RepositoryModel>(); - RepositoryModel model = GitBlit.self().getRepositoryModel(repositoryName); - if (user.canAccessRepository(model)) { - models.add(model); - } + @Override + protected void addDropDownMenus(List<PageRegistration> pages) { + 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); } - // get all user accessible repositories - if (models == null) { - models = GitBlit.self().getRepositoryModels(user); - } + // preserve time filter options on repository choices + filters.menuItems.addAll(getRepositoryFilterItems(currentParameters)); - // filter the repositories by the specified set - if (!StringUtils.isEmpty(set)) { - List<String> sets = StringUtils.getStringsFromValue(set, ","); - List<RepositoryModel> setModels = new ArrayList<RepositoryModel>(); - for (RepositoryModel model : models) { - for (String curr : sets) { - if (model.federationSets.contains(curr)) { - setModels.add(model); - } - } - } - models = setModels; + // 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)); } - return models; + pages.add(filters); } /** @@ -158,7 +153,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)); } @@ -208,4 +203,22 @@ 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