From a502d96a860456ec5e8c96761db70f7cabb74751 Mon Sep 17 00:00:00 2001 From: Paul Martin <paul@paulsputer.com> Date: Sat, 30 Apr 2016 04:19:14 -0400 Subject: [PATCH] Merge pull request #1073 from gitblit/1062-DocEditorUpdates --- src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java | 50 +++++++++++++++++++++++++++++--------------------- 1 files changed, 29 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java b/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java index be0dad9..72d1e1a 100644 --- a/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java +++ b/src/main/java/com/gitblit/wicket/pages/EmptyRepositoryPage.java @@ -15,22 +15,23 @@ */ 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.utils.ArrayUtils; +import com.gitblit.models.RepositoryUrl; +import com.gitblit.models.UserModel; +import com.gitblit.wicket.GitBlitWebSession; import com.gitblit.wicket.GitblitRedirectException; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.panels.RepositoryUrlPanel; -public class EmptyRepositoryPage extends RootPage { +public class EmptyRepositoryPage extends RepositoryPage { public EmptyRepositoryPage(PageParameters params) { super(params); @@ -38,30 +39,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(); + if (user == null) { + user = UserModel.ANONYMOUS; } - repositoryUrls.addAll(GitBlit.self().getOtherCloneUrls(repositoryName)); - - String primaryUrl = ArrayUtils.isEmpty(repositoryUrls) ? "" : repositoryUrls.get(0); + + HttpServletRequest req = ((WebRequest) getRequest()).getHttpServletRequest(); + List<RepositoryUrl> repositoryUrls = app().services().getRepositoryUrls(req, user, repository); + RepositoryUrl primaryUrl = repositoryUrls.size() == 0 ? null : repositoryUrls.get(0); + String url = primaryUrl != null ? primaryUrl.url : ""; + + String createSyntax = readResource("create_git.md").replace("${primaryUrl}", url); + String existingSyntax = readResource("existing_git.md").replace("${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("createSyntax", createSyntax)); + add(new Label("existingSyntax", existingSyntax)); + } + + @Override + protected String getPageName() { + return getString("gb.summary"); } } -- Gitblit v1.9.1