| | |
| | | package com.gitblit.wicket.panels;
|
| | |
|
| | | import java.text.MessageFormat;
|
| | | import java.util.ArrayList;
|
| | | import java.util.List;
|
| | | import java.util.Map;
|
| | |
|
| | | import org.apache.wicket.Component;
|
| | |
| | | import com.gitblit.utils.StringUtils;
|
| | | import com.gitblit.wicket.GitBlitWebSession;
|
| | | import com.gitblit.wicket.WicketUtils;
|
| | | import com.gitblit.wicket.pages.BasePage;
|
| | | import com.gitblit.wicket.pages.DocsPage;
|
| | | import com.gitblit.wicket.pages.EditRepositoryPage;
|
| | | import com.gitblit.wicket.pages.LogPage;
|
| | | import com.gitblit.wicket.pages.SummaryPage;
|
| | | import com.gitblit.wicket.pages.TicketsPage;
|
| | | import com.gitblit.wicket.pages.TreePage;
|
| | |
|
| | | public class ProjectRepositoryPanel extends BasePanel {
|
| | |
| | | super(wicketId);
|
| | |
|
| | | final boolean showSwatch = GitBlit.getBoolean(Keys.web.repositoryListSwatches, true);
|
| | | final boolean gitServlet = GitBlit.getBoolean(Keys.git.enableGitServlet, true);
|
| | | final boolean showSize = GitBlit.getBoolean(Keys.web.showRepositorySizes, true);
|
| | |
|
| | | // repository swatch
|
| | |
| | | add(new Label("originRepository").setVisible(false));
|
| | | } else {
|
| | | Fragment forkFrag = new Fragment("originRepository", "originFragment", this);
|
| | | forkFrag.add(new LinkPanel("originRepository", null, StringUtils.stripDotGit(entry.originRepository), |
| | | forkFrag.add(new LinkPanel("originRepository", null, StringUtils.stripDotGit(entry.originRepository),
|
| | | SummaryPage.class, WicketUtils.newRepositoryParameter(entry.originRepository)));
|
| | | add(forkFrag);
|
| | | }
|
| | |
| | | add(WicketUtils.newClearPixel("sparkleshareIcon").setVisible(false));
|
| | | }
|
| | |
|
| | | add(new BookmarkablePageLink<Void>("tickets", TicketsPage.class, pp).setVisible(entry.useTickets));
|
| | | add(new BookmarkablePageLink<Void>("docs", DocsPage.class, pp).setVisible(entry.useDocs));
|
| | | if (entry.isMirror) {
|
| | | add(WicketUtils.newImage("mirrorIcon", "mirror_16x16.png", localizer.getString("gb.isMirror", parent)));
|
| | | } else {
|
| | | add(WicketUtils.newClearPixel("mirrorIcon").setVisible(false));
|
| | | }
|
| | |
|
| | | if (entry.isFrozen) {
|
| | | add(WicketUtils.newImage("frozenIcon", "cold_16x16.png", localizer.getString("gb.isFrozen", parent)));
|
| | |
| | | } else {
|
| | | add(WicketUtils.newClearPixel("federatedIcon").setVisible(false));
|
| | | }
|
| | | switch (entry.accessRestriction) {
|
| | | case NONE:
|
| | | add(WicketUtils.newBlankImage("accessRestrictionIcon").setVisible(false));
|
| | | break;
|
| | | case PUSH:
|
| | | add(WicketUtils.newImage("accessRestrictionIcon", "lock_go_16x16.png",
|
| | | accessRestrictions.get(entry.accessRestriction)));
|
| | | break;
|
| | | case CLONE:
|
| | | add(WicketUtils.newImage("accessRestrictionIcon", "lock_pull_16x16.png",
|
| | | accessRestrictions.get(entry.accessRestriction)));
|
| | | break;
|
| | | case VIEW:
|
| | | add(WicketUtils.newImage("accessRestrictionIcon", "shield_16x16.png",
|
| | | accessRestrictions.get(entry.accessRestriction)));
|
| | | break;
|
| | | default:
|
| | | add(WicketUtils.newBlankImage("accessRestrictionIcon"));
|
| | | }
|
| | |
|
| | | if (ArrayUtils.isEmpty(entry.owners)) {
|
| | | add(new Label("repositoryOwner").setVisible(false));
|
| | |
| | | String owner = "";
|
| | | for (String username : entry.owners) {
|
| | | UserModel ownerModel = GitBlit.self().getUserModel(username);
|
| | | |
| | |
|
| | | if (ownerModel != null) {
|
| | | owner = ownerModel.getDisplayName();
|
| | | } |
| | | }
|
| | | }
|
| | | if (entry.owners.size() > 1) {
|
| | | owner += ", ...";
|
| | |
| | | }
|
| | |
|
| | | add(new ExternalLink("syndication", SyndicationServlet.asLink("", entry.name, null, 0)));
|
| | |
|
| | | List<String> repositoryUrls = new ArrayList<String>();
|
| | | if (gitServlet) {
|
| | | // add the Gitblit repository url
|
| | | repositoryUrls.add(BasePage.getRepositoryUrl(entry));
|
| | | }
|
| | | repositoryUrls.addAll(GitBlit.self().getOtherCloneUrls(entry.name));
|
| | |
|
| | | String primaryUrl = ArrayUtils.isEmpty(repositoryUrls) ? "" : repositoryUrls.remove(0);
|
| | | add(new RepositoryUrlPanel("repositoryCloneUrl", primaryUrl));
|
| | | }
|
| | | }
|