From 3a7e0a8da5b1aa6b63b15f49df223b1e7796bfd3 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 12 Jun 2013 17:23:03 -0400
Subject: [PATCH] Differentiate dashboard page link for authenticated vs. anonymous users

---
 src/main/java/com/gitblit/GitBlit.java |   24 ++++++++++++++++++++++--
 1 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/gitblit/GitBlit.java b/src/main/java/com/gitblit/GitBlit.java
index 71f33b4..c538ace 100644
--- a/src/main/java/com/gitblit/GitBlit.java
+++ b/src/main/java/com/gitblit/GitBlit.java
@@ -312,6 +312,19 @@
 	public static int getInteger(String key, int defaultValue) {
 		return self().settings.getInteger(key, defaultValue);
 	}
+
+	/**
+	 * Returns the integer list for the specified key. If the key does not
+	 * exist or the value for the key can not be interpreted as an integer, an
+	 * empty list is returned.
+	 * 
+	 * @see IStoredSettings.getIntegers(String key)
+	 * @param key
+	 * @return key value or defaultValue
+	 */
+	public static List<Integer> getIntegers(String key) {
+		return self().settings.getIntegers(key);
+	}
 	
 	/**
 	 * Returns the value in bytes for the specified key. If the key does not
@@ -1926,6 +1939,8 @@
 					Constants.CONFIG_GITBLIT, null, "mailingList")));
 			model.indexedBranches = new ArrayList<String>(Arrays.asList(config.getStringList(
 					Constants.CONFIG_GITBLIT, null, "indexBranch")));
+			model.metricAuthorExclusions = new ArrayList<String>(Arrays.asList(config.getStringList(
+					Constants.CONFIG_GITBLIT, null, "metricAuthorExclusions")));
 			
 			// Custom defined properties
 			model.customFields = new LinkedHashMap<String, String>();
@@ -2452,6 +2467,7 @@
 		updateList(config, "postReceiveScript", repository.postReceiveScripts);
 		updateList(config, "mailingList", repository.mailingLists);
 		updateList(config, "indexBranch", repository.indexedBranches);
+		updateList(config, "metricAuthorExclusions", repository.metricAuthorExclusions);
 		
 		// User Defined Properties
 		if (repository.customFields != null) {
@@ -2993,7 +3009,9 @@
 		if (repository != null) {
 			for (String teamname : userService.getTeamnamesForRepositoryRole(repository.name)) {
 				TeamModel team = userService.getTeamModel(teamname);
-				scripts.addAll(team.preReceiveScripts);
+				if (!ArrayUtils.isEmpty(team.preReceiveScripts)) {
+					scripts.addAll(team.preReceiveScripts);
+				}
 			}
 		}
 		return new ArrayList<String>(scripts);
@@ -3043,7 +3061,9 @@
 		if (repository != null) {
 			for (String teamname : userService.getTeamnamesForRepositoryRole(repository.name)) {
 				TeamModel team = userService.getTeamModel(teamname);
-				scripts.addAll(team.postReceiveScripts);
+				if (!ArrayUtils.isEmpty(team.postReceiveScripts)) {
+					scripts.addAll(team.postReceiveScripts);
+				}
 			}
 		}
 		return new ArrayList<String>(scripts);

--
Gitblit v1.9.1