From 4fcac9d2cbdafb51e3ee9ca3b3da64fd86103174 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 26 Nov 2013 15:58:15 -0500
Subject: [PATCH] Remove artifact setting from manager dialog

---
 src/main/java/com/gitblit/wicket/GitBlitWebApp.java |   59 +++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 47 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/GitBlitWebApp.java b/src/main/java/com/gitblit/wicket/GitBlitWebApp.java
index 2300d0f..70aa1a6 100644
--- a/src/main/java/com/gitblit/wicket/GitBlitWebApp.java
+++ b/src/main/java/com/gitblit/wicket/GitBlitWebApp.java
@@ -15,6 +15,10 @@
  */
 package com.gitblit.wicket;
 
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
+
 import org.apache.wicket.Application;
 import org.apache.wicket.Page;
 import org.apache.wicket.Request;
@@ -25,13 +29,17 @@
 
 import com.gitblit.GitBlit;
 import com.gitblit.Keys;
+import com.gitblit.utils.StringUtils;
 import com.gitblit.wicket.pages.ActivityPage;
+import com.gitblit.wicket.pages.BasePage;
 import com.gitblit.wicket.pages.BlamePage;
 import com.gitblit.wicket.pages.BlobDiffPage;
 import com.gitblit.wicket.pages.BlobPage;
 import com.gitblit.wicket.pages.BranchesPage;
 import com.gitblit.wicket.pages.CommitDiffPage;
 import com.gitblit.wicket.pages.CommitPage;
+import com.gitblit.wicket.pages.ComparePage;
+import com.gitblit.wicket.pages.DocPage;
 import com.gitblit.wicket.pages.DocsPage;
 import com.gitblit.wicket.pages.FederationRegistrationPage;
 import com.gitblit.wicket.pages.ForkPage;
@@ -42,24 +50,28 @@
 import com.gitblit.wicket.pages.LogPage;
 import com.gitblit.wicket.pages.LogoutPage;
 import com.gitblit.wicket.pages.LuceneSearchPage;
-import com.gitblit.wicket.pages.MarkdownPage;
 import com.gitblit.wicket.pages.MetricsPage;
+import com.gitblit.wicket.pages.MyDashboardPage;
+import com.gitblit.wicket.pages.OverviewPage;
 import com.gitblit.wicket.pages.PatchPage;
 import com.gitblit.wicket.pages.ProjectPage;
 import com.gitblit.wicket.pages.ProjectsPage;
 import com.gitblit.wicket.pages.RawPage;
+import com.gitblit.wicket.pages.ReflogPage;
 import com.gitblit.wicket.pages.RepositoriesPage;
 import com.gitblit.wicket.pages.ReviewProposalPage;
 import com.gitblit.wicket.pages.SummaryPage;
 import com.gitblit.wicket.pages.TagPage;
 import com.gitblit.wicket.pages.TagsPage;
-import com.gitblit.wicket.pages.TicketPage;
-import com.gitblit.wicket.pages.TicketsPage;
 import com.gitblit.wicket.pages.TreePage;
 import com.gitblit.wicket.pages.UserPage;
 import com.gitblit.wicket.pages.UsersPage;
 
 public class GitBlitWebApp extends WebApplication {
+
+	public final static Class<? extends BasePage> HOME_PAGE_CLASS = MyDashboardPage.class;
+
+	private final Map<String, CacheControl> cacheablePages = new HashMap<String, CacheControl>();
 
 	@Override
 	public void init() {
@@ -85,7 +97,11 @@
 		}
 
 		// setup the standard gitweb-ish urls
+		mount("/repositories", RepositoriesPage.class);
+		mount("/overview", OverviewPage.class, "r", "h");
 		mount("/summary", SummaryPage.class, "r");
+		mount("/reflog", ReflogPage.class, "r", "h");
+		mount("/commits", LogPage.class, "r", "h");
 		mount("/log", LogPage.class, "r", "h");
 		mount("/tags", TagsPage.class, "r");
 		mount("/branches", BranchesPage.class, "r");
@@ -96,6 +112,7 @@
 		mount("/raw", RawPage.class, "r", "h", "f");
 		mount("/blobdiff", BlobDiffPage.class, "r", "h", "f");
 		mount("/commitdiff", CommitDiffPage.class, "r", "h");
+		mount("/compare", ComparePage.class, "r", "h");
 		mount("/patch", PatchPage.class, "r", "h", "f");
 		mount("/history", HistoryPage.class, "r", "h", "f");
 		mount("/search", GitSearchPage.class);
@@ -104,13 +121,9 @@
 		mount("/users", UsersPage.class);
 		mount("/logout", LogoutPage.class);
 
-		// setup ticket urls
-		mount("/tickets", TicketsPage.class, "r");
-		mount("/ticket", TicketPage.class, "r", "f");
-
-		// setup the markdown urls
+		// setup the markup document urls
 		mount("/docs", DocsPage.class, "r");
-		mount("/markdown", MarkdownPage.class, "r", "h", "f");
+		mount("/doc", DocPage.class, "r", "h", "f");
 
 		// federation urls
 		mount("/proposal", ReviewProposalPage.class, "t");
@@ -124,6 +137,8 @@
 		mount("/user", UserPage.class, "user");
 		mount("/forks", ForksPage.class, "r");
 		mount("/fork", ForkPage.class, "r");
+		
+		getMarkupSettings().setDefaultMarkupEncoding("UTF-8");
 	}
 
 	private void mount(String location, Class<? extends WebPage> clazz, String... parameters) {
@@ -134,16 +149,36 @@
 			parameters = new String[] {};
 		}
 		mount(new GitblitParamUrlCodingStrategy(location, clazz, parameters));
+
+		// map the mount point to the cache control definition
+		if (clazz.isAnnotationPresent(CacheControl.class)) {
+			CacheControl cacheControl = clazz.getAnnotation(CacheControl.class);
+			cacheablePages.put(location.substring(1), cacheControl);
+		}
 	}
 
 	@Override
 	public Class<? extends Page> getHomePage() {
-		return RepositoriesPage.class;
+		return HOME_PAGE_CLASS;
 	}
-	
+
+	public boolean isCacheablePage(String mountPoint) {
+		return cacheablePages.containsKey(mountPoint);
+	}
+
+	public CacheControl getCacheControl(String mountPoint) {
+		return cacheablePages.get(mountPoint);
+	}
+
 	@Override
 	public final Session newSession(Request request, Response response) {
-		return new GitBlitWebSession(request);
+		GitBlitWebSession gitBlitWebSession = new GitBlitWebSession(request);
+
+		String forcedLocale = GitBlit.getString(Keys.web.forceDefaultLocale, null);
+		if (!StringUtils.isEmpty(forcedLocale)) {
+			gitBlitWebSession.setLocale(new Locale(forcedLocale));
+		}
+		return gitBlitWebSession;
 	}
 
 	@Override

--
Gitblit v1.9.1