From 1a3fc5e8f150ff73be27c67006a10bbab0c585b4 Mon Sep 17 00:00:00 2001 From: James Moger Date: Mon, 11 Apr 2011 09:39:15 -0400 Subject: Refactored more link panels into fragments. --- src/com/gitblit/wicket/pages/CommitPage.html | 2 +- src/com/gitblit/wicket/pages/CommitPage.java | 7 ++++--- src/com/gitblit/wicket/pages/RepositoriesPage.html | 7 +++++++ src/com/gitblit/wicket/pages/RepositoriesPage.java | 8 ++++++-- src/com/gitblit/wicket/pages/TreePage.html | 16 ++++++++++++++- src/com/gitblit/wicket/pages/TreePage.java | 24 +++++++++++++++------- 6 files changed, 50 insertions(+), 14 deletions(-) (limited to 'src/com/gitblit/wicket/pages') diff --git a/src/com/gitblit/wicket/pages/CommitPage.html b/src/com/gitblit/wicket/pages/CommitPage.html index e49cd576..e3434c45 100644 --- a/src/com/gitblit/wicket/pages/CommitPage.html +++ b/src/com/gitblit/wicket/pages/CommitPage.html @@ -12,7 +12,7 @@ diff --git a/src/com/gitblit/wicket/pages/CommitPage.java b/src/com/gitblit/wicket/pages/CommitPage.java index b0a92b06..7de03457 100644 --- a/src/com/gitblit/wicket/pages/CommitPage.java +++ b/src/com/gitblit/wicket/pages/CommitPage.java @@ -9,6 +9,7 @@ import org.apache.wicket.markup.html.link.BookmarkablePageLink; import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.markup.repeater.data.ListDataProvider; +import org.apache.wicket.model.StringResourceModel; import org.eclipse.jgit.lib.Repository; import org.eclipse.jgit.revwalk.RevCommit; @@ -25,10 +26,8 @@ public class CommitPage extends RepositoryPage { public CommitPage(PageParameters params) { super(params); - final String commitId = params.getString("h", ""); - Repository r = getRepository(); - RevCommit c = JGitUtils.getCommit(r, commitId); + RevCommit c = JGitUtils.getCommit(r, objectId); List parents = new ArrayList(); if (c.getParentCount() > 0) { @@ -40,8 +39,10 @@ public class CommitPage extends RepositoryPage { // commit page links if (parents.size() == 0) { add(new Label("parentLink", "none")); + add(new Label("commitdiffLink", getString("gb.commitdiff"))); } else { add(new LinkPanel("parentLink", null, parents.get(0).substring(0, 8), CommitPage.class, newCommitParameter(parents.get(0)))); + add(new LinkPanel("commitdiffLink", null, new StringResourceModel("gb.commitdiff", this, null), DiffPage.class, WicketUtils.newObjectParameter(repositoryName, objectId))); } add(new Label("patchLink", getString("gb.patch"))); diff --git a/src/com/gitblit/wicket/pages/RepositoriesPage.html b/src/com/gitblit/wicket/pages/RepositoriesPage.html index 5a84ee29..9bcb9b80 100644 --- a/src/com/gitblit/wicket/pages/RepositoriesPage.html +++ b/src/com/gitblit/wicket/pages/RepositoriesPage.html @@ -26,6 +26,13 @@ + + + + + \ No newline at end of file diff --git a/src/com/gitblit/wicket/pages/RepositoriesPage.java b/src/com/gitblit/wicket/pages/RepositoriesPage.java index 83d67520..47d45122 100644 --- a/src/com/gitblit/wicket/pages/RepositoriesPage.java +++ b/src/com/gitblit/wicket/pages/RepositoriesPage.java @@ -10,6 +10,8 @@ import org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByBorder import org.apache.wicket.extensions.markup.html.repeater.util.SortParam; import org.apache.wicket.extensions.markup.html.repeater.util.SortableDataProvider; import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.link.BookmarkablePageLink; +import org.apache.wicket.markup.html.panel.Fragment; import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.model.IModel; @@ -22,7 +24,6 @@ import com.gitblit.wicket.GitBlitWebApp; import com.gitblit.wicket.LinkPanel; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.models.RepositoryModel; -import com.gitblit.wicket.panels.AdminLinksPanel; public class RepositoriesPage extends BasePage { @@ -31,7 +32,10 @@ public class RepositoriesPage extends BasePage { super(); setupPage("", ""); - add(new AdminLinksPanel("adminPanel").setVisible(StoredSettings.getBoolean("allowAdministration", false))); + Fragment adminLinks = new Fragment("adminPanel", "adminLinks", this); + adminLinks.add(new BookmarkablePageLink("newRepository", RepositoriesPage.class)); + adminLinks.add(new BookmarkablePageLink("newUser", RepositoriesPage.class)); + add(adminLinks.setVisible(StoredSettings.getBoolean("allowAdministration", false))); add(new Label("repositoriesMessage", StoredSettings.getString("repositoriesMessage", "")).setEscapeModelStrings(false)); diff --git a/src/com/gitblit/wicket/pages/TreePage.html b/src/com/gitblit/wicket/pages/TreePage.html index 2bfbb992..3eda96b7 100644 --- a/src/com/gitblit/wicket/pages/TreePage.html +++ b/src/com/gitblit/wicket/pages/TreePage.html @@ -27,10 +27,24 @@ [path size] [path permissions] - [path links] + [path links] + + + + + + + + + + \ No newline at end of file diff --git a/src/com/gitblit/wicket/pages/TreePage.java b/src/com/gitblit/wicket/pages/TreePage.java index 493313ee..e24033e4 100644 --- a/src/com/gitblit/wicket/pages/TreePage.java +++ b/src/com/gitblit/wicket/pages/TreePage.java @@ -4,6 +4,8 @@ import java.util.List; import org.apache.wicket.PageParameters; import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.link.BookmarkablePageLink; +import org.apache.wicket.markup.html.panel.Fragment; import org.apache.wicket.markup.repeater.Item; import org.apache.wicket.markup.repeater.data.DataView; import org.apache.wicket.markup.repeater.data.ListDataProvider; @@ -17,8 +19,6 @@ import com.gitblit.wicket.RepositoryPage; import com.gitblit.wicket.WicketUtils; import com.gitblit.wicket.models.PathModel; import com.gitblit.wicket.panels.PathBreadcrumbsPanel; -import com.gitblit.wicket.panels.TreeBlobLinksPanel; -import com.gitblit.wicket.panels.TreeLinksPanel; public class TreePage extends RepositoryPage { @@ -59,22 +59,32 @@ public class TreePage extends RepositoryPage { // parent .. path item.add(new Label("pathSize", "")); item.add(new LinkPanel("pathName", null, entry.name, TreePage.class, newPathParameter(entry.path))); - item.add(new Label("treeLinks", "")); + item.add(new Label("pathLinks", "")); } else { if (entry.isTree()) { // folder/tree link item.add(new Label("pathSize", "")); item.add(new LinkPanel("pathName", null, entry.name, TreePage.class, newPathParameter(entry.path))); - item.add(new TreeLinksPanel("treeLinks", repositoryName, entry)); + + // links + Fragment links = new Fragment("pathLinks", "treeLinks", this); + links.add(new BookmarkablePageLink("tree", TreePage.class, WicketUtils.newPathParameter(repositoryName, entry.commitId, entry.path))); + links.add(new BookmarkablePageLink("history", TreePage.class).setEnabled(false)); + item.add(links); } else { // blob link item.add(new Label("pathSize", byteFormat.format(entry.size))); item.add(new LinkPanel("pathName", "list", entry.name, BlobPage.class, newPathParameter(entry.path))); - item.add(new TreeBlobLinksPanel("treeLinks", repositoryName, entry)); + + // links + Fragment links = new Fragment("pathLinks", "blobLinks", this); + links.add(new BookmarkablePageLink("view", BlobPage.class, WicketUtils.newPathParameter(repositoryName, entry.commitId, entry.path))); + links.add(new BookmarkablePageLink("raw", BlobPage.class).setEnabled(false)); + links.add(new BookmarkablePageLink("history", BlobPage.class).setEnabled(false)); + item.add(links); } } - String clazz = counter % 2 == 0 ? "dark" : "light"; - WicketUtils.setCssClass(item, clazz); + WicketUtils.setAlternatingBackground(item, counter); counter++; } }; -- cgit v1.2.3