From 3f5b8f5d9203aa7ffb7fbe9cdbaf9dba3da6cae6 Mon Sep 17 00:00:00 2001 From: Hybris95 <hybris_95@hotmail.com> Date: Thu, 01 May 2014 16:14:15 -0400 Subject: [PATCH] Fixes sort, page building and search functions on "my tickets" page. --- src/main/java/com/gitblit/wicket/pages/ActivityPage.java | 43 ++++++++++++++++++++++++------------------- 1 files changed, 24 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/ActivityPage.java b/src/main/java/com/gitblit/wicket/pages/ActivityPage.java index 99992ea..f0e390d 100644 --- a/src/main/java/com/gitblit/wicket/pages/ActivityPage.java +++ b/src/main/java/com/gitblit/wicket/pages/ActivityPage.java @@ -29,7 +29,6 @@ import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.panel.Fragment; -import com.gitblit.GitBlit; import com.gitblit.Keys; import com.gitblit.models.Activity; import com.gitblit.models.Metric; @@ -42,10 +41,9 @@ 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; -import com.gitblit.wicket.charting.GoogleLineChart; -import com.gitblit.wicket.charting.GooglePieChart; +import com.gitblit.wicket.charting.Chart; +import com.gitblit.wicket.charting.Charts; +import com.gitblit.wicket.charting.Flotr2Charts; import com.gitblit.wicket.panels.ActivityPanel; /** @@ -66,14 +64,19 @@ // parameters int daysBack = WicketUtils.getDaysBack(params); if (daysBack < 1) { - daysBack = GitBlit.getInteger(Keys.web.activityDuration, 7); + daysBack = app().settings().getInteger(Keys.web.activityDuration, 7); } String objectId = WicketUtils.getObject(params); // determine repositories to view and retrieve the activity List<RepositoryModel> models = getRepositories(params); - List<Activity> recentActivity = ActivityUtils.getRecentActivity(models, - daysBack, objectId, getTimeZone()); + List<Activity> recentActivity = ActivityUtils.getRecentActivity( + app().settings(), + app().repositories(), + models, + daysBack, + objectId, + getTimeZone()); String headerPattern; if (daysBack == 1) { @@ -113,8 +116,8 @@ daysBack, totalCommits, totalAuthors))); // create the activity charts - if (GitBlit.getBoolean(Keys.web.generateActivityGraph, true)) { - GoogleCharts charts = createCharts(recentActivity); + if (app().settings().getBoolean(Keys.web.generateActivityGraph, true)) { + Charts charts = createCharts(recentActivity); add(new HeaderContributor(charts)); add(new Fragment("chartsPanel", "chartsFragment", this)); } else { @@ -137,7 +140,7 @@ ActivityPage.class); PageParameters currentParameters = getPageParameters(); - int daysBack = GitBlit.getInteger(Keys.web.activityDuration, 7); + int daysBack = app().settings().getInteger(Keys.web.activityDuration, 7); if (currentParameters != null && !currentParameters.containsKey("db")) { currentParameters.put("db", daysBack); } @@ -162,7 +165,7 @@ * @param recentActivity * @return */ - private GoogleCharts createCharts(List<Activity> recentActivity) { + private Charts createCharts(List<Activity> recentActivity) { // activity metrics Map<String, Metric> repositoryMetrics = new HashMap<String, Metric>(); Map<String, Metric> authorMetrics = new HashMap<String, Metric>(); @@ -189,34 +192,36 @@ } } - // build google charts - GoogleCharts charts = new GoogleCharts(); + // build charts + Charts charts = new Flotr2Charts(); // sort in reverse-chronological order and then reverse that Collections.sort(recentActivity); Collections.reverse(recentActivity); // daily line chart - GoogleChart chart = new GoogleLineChart("chartDaily", getString("gb.dailyActivity"), "day", + Chart chart = charts.createLineChart("chartDaily", getString("gb.dailyActivity"), "day", getString("gb.commits")); SimpleDateFormat df = new SimpleDateFormat("MMM dd"); df.setTimeZone(getTimeZone()); for (Activity metric : recentActivity) { - chart.addValue(df.format(metric.startDate), metric.getCommitCount()); + chart.addValue(metric.startDate, metric.getCommitCount()); } charts.addChart(chart); - // active repositories pie chart - chart = new GooglePieChart("chartRepositories", getString("gb.activeRepositories"), + // active repositories pie chart + chart = charts.createPieChart("chartRepositories", getString("gb.activeRepositories"), getString("gb.repository"), getString("gb.commits")); for (Metric metric : repositoryMetrics.values()) { chart.addValue(metric.name, metric.count); } chart.setShowLegend(false); + String url = urlFor(SummaryPage.class, null).toString() + "?r="; + chart.setClickUrl(url); charts.addChart(chart); // active authors pie chart - chart = new GooglePieChart("chartAuthors", getString("gb.activeAuthors"), + chart = charts.createPieChart("chartAuthors", getString("gb.activeAuthors"), getString("gb.author"), getString("gb.commits")); for (Metric metric : authorMetrics.values()) { chart.addValue(metric.name, metric.count); -- Gitblit v1.9.1