From 73c76b8f7ecaa43c7b5d60ade1c2273af525e8f1 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 20 Jun 2013 17:31:41 -0400
Subject: [PATCH] Added WindowsUserService using Waffle

---
 src/main/java/com/gitblit/wicket/pages/RootPage.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/pages/RootPage.java b/src/main/java/com/gitblit/wicket/pages/RootPage.java
index 3025151..8760f5c 100644
--- a/src/main/java/com/gitblit/wicket/pages/RootPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/RootPage.java
@@ -27,6 +27,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.TreeSet;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.regex.Pattern;
 
@@ -118,8 +119,8 @@
 		// navigation links
 		List<PageRegistration> pages = new ArrayList<PageRegistration>();
 		if (!authenticateView || (authenticateView && GitBlitWebSession.get().isLoggedIn())) {
-//			pages.add(new PageRegistration("gb.home", HomePage.class,
-//					getRootPageParameters()));
+			pages.add(new PageRegistration(GitBlitWebSession.get().isLoggedIn() ? "gb.myDashboard" : "gb.dashboard", MyDashboardPage.class,
+					getRootPageParameters()));
 			pages.add(new PageRegistration("gb.repositories", RepositoriesPage.class,
 					getRootPageParameters()));
 			pages.add(new PageRegistration("gb.activity", ActivityPage.class, getRootPageParameters()));
@@ -178,7 +179,7 @@
 
 				// remove days back parameter if it is the default value
 				if (params.containsKey("db")
-						&& params.getInt("db") == GitBlit.getInteger(Keys.web.activityDuration, 14)) {
+						&& params.getInt("db") == GitBlit.getInteger(Keys.web.activityDuration, 7)) {
 					params.remove("db");
 				}
 				return params;
@@ -295,18 +296,32 @@
 
 	protected List<DropDownMenuItem> getTimeFilterItems(PageParameters params) {
 		// days back choices - additive parameters
-		int daysBack = GitBlit.getInteger(Keys.web.activityDuration, 14);
+		int daysBack = GitBlit.getInteger(Keys.web.activityDuration, 7);
 		if (daysBack < 1) {
-			daysBack = 14;
+			daysBack = 7;
 		}
+		PageParameters clonedParams;;
+		if (params == null) {
+			clonedParams = new PageParameters();
+		} else {
+			clonedParams = new PageParameters(params);
+		}
+		
+		if (!clonedParams.containsKey("db")) {
+			clonedParams.put("db",  daysBack);
+		}
+		
 		List<DropDownMenuItem> items = new ArrayList<DropDownMenuItem>();
-		Set<Integer> choicesSet = new HashSet<Integer>(Arrays.asList(daysBack, 14, 28, 60, 90, 180));
+		Set<Integer> choicesSet = new TreeSet<Integer>(GitBlit.getIntegers(Keys.web.activityDurationChoices));
+		if (choicesSet.isEmpty()) {
+			 choicesSet.addAll(Arrays.asList(7, 14, 28, 60, 90, 180));
+		}
 		List<Integer> choices = new ArrayList<Integer>(choicesSet);
 		Collections.sort(choices);
 		String lastDaysPattern = getString("gb.lastNDays");
 		for (Integer db : choices) {
 			String txt = MessageFormat.format(lastDaysPattern, db);
-			items.add(new DropDownMenuItem(txt, "db", db.toString(), params));
+			items.add(new DropDownMenuItem(txt, "db", db.toString(), clonedParams));
 		}
 		items.add(new DropDownMenuItem());
 		return items;
@@ -507,7 +522,10 @@
 			}
 
 			add(new Label("displayName", user.getDisplayName()));
-			
+
+			add(new BookmarkablePageLink<Void>("newRepository",
+					EditRepositoryPage.class).setVisible(user.canAdmin() || user.canCreate()));
+
 			add(new BookmarkablePageLink<Void>("myProfile", 
 					UserPage.class, WicketUtils.newUsernameParameter(user.username)));
 

--
Gitblit v1.9.1