about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2007-05-16 10:45:45 +0200
committerLars Hjemli <hjemli@gmail.com>2007-05-16 10:46:59 +0200
commitc1ad6cb77889880ad0189a689840fbfa6e5cbc80 (patch)
tree352c32898316a388b582385a5fb3c6c534eaa30a
parentDon't die when diffing trees with subprojects (diff)
downloadcgit-pink-c1ad6cb77889880ad0189a689840fbfa6e5cbc80.tar.gz
cgit-pink-c1ad6cb77889880ad0189a689840fbfa6e5cbc80.zip
Restrict length of repo description on repolist page
If any repo has a very long description, all repos suffer since the
repo-links in the right-most column gets pushed out of sight.

Fix it by introducing max-repodesc-length parameter in cgitrc, and default
to 60 chars.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r--cgit.h1
-rw-r--r--cgitrc4
-rw-r--r--shared.c3
-rw-r--r--ui-repolist.c2
4 files changed, 9 insertions, 1 deletions
diff --git a/cgit.h b/cgit.h
index 764225d..290401f 100644
--- a/cgit.h
+++ b/cgit.h
@@ -89,6 +89,7 @@ extern int cgit_cache_static_ttl;
 extern int cgit_cache_max_create_time;
 
 extern int cgit_max_msg_len;
+extern int cgit_max_repodesc_len;
 extern int cgit_max_commit_count;
 
 extern char *cgit_repo_name;
diff --git a/cgitrc b/cgitrc
index e7e731c..f923cc4 100644
--- a/cgitrc
+++ b/cgitrc
@@ -51,6 +51,10 @@
 #module-link=./?repo=%s&page=commit&id=%s
 
 
+## Number of chars shown of repo description (in repolist view)
+#max-repodesc-length=60
+
+
 ## Number of chars shown of commit subject message (in log view)
 #max-message-length=60
 
diff --git a/shared.c b/shared.c
index a1e1acd..752ceac 100644
--- a/shared.c
+++ b/shared.c
@@ -30,6 +30,7 @@ int cgit_cache_static_ttl      = -1;
 int cgit_cache_max_create_time =  5;
 
 int cgit_max_msg_len = 60;
+int cgit_max_repodesc_len = 60;
 int cgit_max_commit_count = 50;
 
 int cgit_query_has_symref = 0;
@@ -118,6 +119,8 @@ void cgit_global_config_cb(const char *name, const char *value)
 		cgit_cache_dynamic_ttl = atoi(value);
 	else if (!strcmp(name, "max-message-length"))
 		cgit_max_msg_len = atoi(value);
+	else if (!strcmp(name, "max-repodesc-length"))
+		cgit_max_repodesc_len = atoi(value);
 	else if (!strcmp(name, "max-commit-count"))
 		cgit_max_commit_count = atoi(value);
 	else if (!strcmp(name, "repo.url"))
diff --git a/ui-repolist.c b/ui-repolist.c
index d341193..d7311e4 100644
--- a/ui-repolist.c
+++ b/ui-repolist.c
@@ -30,7 +30,7 @@ void cgit_print_repolist(struct cacheitem *item)
 		html_txt(repo->name);
 		html_link_close();
 		html("</td><td>");
-		html_txt(repo->desc);
+		html_ntxt(cgit_max_repodesc_len, repo->desc);
 		html("</td><td>");
 		html_txt(repo->owner);
 		html("</td><td>");