From 07eb0963cae3a403f8774f65afa20c940ce7124f Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 13 Jun 2014 08:57:41 -0400 Subject: [PATCH] Merged #103 "flotr2 throws exception on small dashboards" --- src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java | 44 +++++++++++++++++++++++++------------------- 1 files changed, 25 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java b/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java index cccf8a6..00bac63 100644 --- a/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java +++ b/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java @@ -16,17 +16,17 @@ package com.gitblit.wicket.pages; import java.text.MessageFormat; -import java.util.ArrayList; import java.util.List; + +import javax.servlet.http.HttpServletRequest; import org.apache.wicket.PageParameters; import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.protocol.http.WebRequest; -import com.gitblit.GitBlit; -import com.gitblit.Keys; import com.gitblit.models.RepositoryModel; +import com.gitblit.models.RepositoryUrl; import com.gitblit.models.UserModel; -import com.gitblit.utils.ArrayUtils; import com.gitblit.wicket.GitBlitWebSession; import com.gitblit.wicket.GitblitRedirectException; import com.gitblit.wicket.WicketUtils; @@ -40,31 +40,37 @@ setVersioned(false); String repositoryName = WicketUtils.getRepositoryName(params); - RepositoryModel repository = GitBlit.self().getRepositoryModel(repositoryName); + RepositoryModel repository = app().repositories().getRepositoryModel(repositoryName); if (repository == null) { error(getString("gb.canNotLoadRepository") + " " + repositoryName, true); } - + if (repository.hasCommits) { // redirect to the summary page if this repository is not empty throw new GitblitRedirectException(SummaryPage.class, params); } - + setupPage(repositoryName, getString("gb.emptyRepository")); - List<String> repositoryUrls = new ArrayList<String>(); - - if (GitBlit.getBoolean(Keys.git.enableGitServlet, true)) { - // add the Gitblit repository url - repositoryUrls.add(getRepositoryUrl(repository)); - } UserModel user = GitBlitWebSession.get().getUser(); - repositoryUrls.addAll(GitBlit.self().getOtherCloneUrls(repositoryName, user == null ? "" : user.username)); - - String primaryUrl = ArrayUtils.isEmpty(repositoryUrls) ? "" : repositoryUrls.get(0); + if (user == null) { + user = UserModel.ANONYMOUS; + } + + HttpServletRequest req = ((WebRequest) getRequest()).getHttpServletRequest(); + List<RepositoryUrl> repositoryUrls = app().gitblit().getRepositoryUrls(req, user, repository); + RepositoryUrl primaryUrl = repositoryUrls.size() == 0 ? null : repositoryUrls.get(0); + String url = primaryUrl != null ? primaryUrl.url : ""; + add(new Label("repository", repositoryName)); - add(new RepositoryUrlPanel("pushurl", primaryUrl)); - add(new Label("cloneSyntax", MessageFormat.format("git clone {0}", repositoryUrls.get(0)))); - add(new Label("remoteSyntax", MessageFormat.format("git remote add gitblit {0}\ngit push gitblit master", primaryUrl))); + add(new RepositoryUrlPanel("pushurl", false, user, repository)); + add(new Label("cloneSyntax", MessageFormat.format("git clone {0}", url))); + add(new Label("remoteSyntax", MessageFormat.format("git remote add origin {0}\ngit push -u origin --all\ngit push -u origin --tags", url))); + add(new Label("upstreamSyntax", "git remote add upstream <upstream repository url>")); + } + + @Override + protected Class<? extends BasePage> getRootNavPageClass() { + return RepositoriesPage.class; } } -- Gitblit v1.9.1