From 7838fc5486571e1e4c206a234df4fcd2b7fc52af Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 21 Aug 2013 14:16:51 -0400
Subject: [PATCH] Documentation
---
src/main/java/com/gitblit/wicket/pages/RepositoryPage.java | 38 ++++++++++++++++++++++++++++++++++----
1 files changed, 34 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java b/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java
index 9657301..f5b8c96 100644
--- a/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/RepositoryPage.java
@@ -19,6 +19,7 @@
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Date;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
@@ -63,6 +64,7 @@
import com.gitblit.utils.RefLogUtils;
import com.gitblit.utils.StringUtils;
import com.gitblit.utils.TicgitUtils;
+import com.gitblit.wicket.CacheControl;
import com.gitblit.wicket.GitBlitWebSession;
import com.gitblit.wicket.PageRegistration;
import com.gitblit.wicket.PageRegistration.OtherPageLink;
@@ -226,9 +228,6 @@
isOwner = GitBlitWebSession.get().isLoggedIn()
&& (model.isOwner(GitBlitWebSession.get()
.getUsername()));
- if (showAdmin || isOwner) {
- pages.put("edit", new PageRegistration("gb.edit", EditRepositoryPage.class, params));
- }
return pages;
}
@@ -334,6 +333,13 @@
String url = getRequestCycle().urlFor(ForkPage.class, WicketUtils.newRepositoryParameter(model.name)).toString();
add(new ExternalLink("forkLink", url));
}
+ }
+
+ if (showAdmin || isOwner) {
+ String url = getRequestCycle().urlFor(EditRepositoryPage.class, WicketUtils.newRepositoryParameter(model.name)).toString();
+ add(new ExternalLink("editLink", url));
+ } else {
+ add(new Label("editLink").setVisible(false));
}
super.setupPage(repositoryName, pageName);
@@ -442,7 +448,7 @@
if (submoduleName.lastIndexOf('/') > -1) {
String name = submoduleName.substring(submoduleName.lastIndexOf('/') + 1);
candidates.add(currentPath + StringUtils.stripDotGit(name));
- candidates.add(currentPath + candidates.get(candidates.size() - 1) + ".git");
+ candidates.add(candidates.get(candidates.size() - 1) + ".git");
}
// absolute
@@ -568,6 +574,30 @@
setupPage(repositoryName, "/ " + getPageName());
super.onBeforeRender();
}
+
+ @Override
+ protected void setLastModified() {
+ if (getClass().isAnnotationPresent(CacheControl.class)) {
+ CacheControl cacheControl = getClass().getAnnotation(CacheControl.class);
+ switch (cacheControl.value()) {
+ case REPOSITORY:
+ RepositoryModel repository = getRepositoryModel();
+ if (repository != null) {
+ setLastModified(repository.lastChange);
+ }
+ break;
+ case COMMIT:
+ RevCommit commit = getCommit();
+ if (commit != null) {
+ Date commitDate = JGitUtils.getCommitDate(commit);
+ setLastModified(commitDate);
+ }
+ break;
+ default:
+ super.setLastModified();
+ }
+ }
+ }
protected PageParameters newRepositoryParameter() {
return WicketUtils.newRepositoryParameter(repositoryName);
--
Gitblit v1.9.1