web: support ?num=N query parameter for repo list

Change-Id: I89c97bf41156dc5ff5a826c6a64ed751e5579ebd
diff --git a/web/server.go b/web/server.go
index 285c768..ef08e98 100644
--- a/web/server.go
+++ b/web/server.go
@@ -443,6 +443,19 @@
 		Stats: aggregate,
 	}
 
+	numStr := qvals.Get("num")
+	num, err := strconv.Atoi(numStr)
+	if err != nil || num <= 0 {
+		num = 0
+	}
+	if num > 0 {
+		if num > len(repos.Repos) {
+			num = len(repos.Repos)
+		}
+
+		repos.Repos = repos.Repos[:num]
+	}
+
 	for _, r := range repos.Repos {
 		t := s.getTemplate(r.Repository.CommitURLTemplate)