mixed work for more menu stuff
[webgit] / src / repo.h
1 /*
2     cehtehs git web frontend
3
4   Copyright (C)
5     2007, 2008,         Christian Thaeter <ct@pipapo.org>
6
7   This program is free software: you can redistribute it and/or modify
8   it under the terms of the GNU Affero General Public License as published by
9   the Free Software Foundation, either version 3 of the License, or
10   (at your option) any later version.
11
12   This program is distributed in the hope that it will be useful,
13   but WITHOUT ANY WARRANTY; without even the implied warranty of
14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   GNU Affero General Public License for more details.
16
17   You should have received a copy of the GNU Affero General Public License
18   along with this program.  If not, see <http://www.gnu.org/licenses/>.
19 */
20 #ifndef WEBGIT_REPO_H
21 #define WEBGIT_REPO_H
22
23 #include "webgit.h"
24
25 /*
26   repo options
27 */
28 #define WEBGIT_CONFS                                                            \
29  WEBGIT_CONF(name, "Set the displayed name for the repository")                 \
30  WEBGIT_CONF(description, "Set the short description for the repository")       \
31  WEBGIT_CONF(url, "Set public access url")                                      \
32  WEBGIT_CONF(logo, "URL for a project logo image")                              \
33  WEBGIT_CONF(logolink, "Link associated with the logo")                         \
34  WEBGIT_CONF(owner, "Set owner name of the repository")                         \
35  WEBGIT_CONF(skindir, "Set dir to the skins")                                   \
36  WEBGIT_CONF(webskindir, "Set dir to skins from webroot")                       \
37  WEBGIT_CONF(skin, "Set default skin")                                          \
38  WEBGIT_CONF(maxage, "Age in days to hide inactive repositories")               \
39  WEBGIT_CONF(readme, "Set a readme.html file to display")
40
41 #define WEBGIT_CONF_PREFIX "web."
42
43
44 Html
45 webgit_repo_link (struct webgit_query* query,
46                   const char* repo_prefix,
47                   int repo_prefix_len,
48                   const char* repo,
49                   int repo_len,
50                   const char* object,
51                   int object_len,
52                   const char* action,
53                   Html text);
54
55
56 Html
57 webgit_repo_logo (struct webgit_repo_info* repo);
58
59
60 //int
61 //webgit_repo_conf_cb (const char *var, const char *value);
62
63 Html
64 webgit_repo_age (struct webgit_query* query, struct webgit_repo_info* n);
65
66 struct webgit_repo_info*
67 webgit_repoinfo_new (struct webgit_query* query, const char* path);
68
69 void
70 webgit_repoinfo_free (struct webgit_repo_info* self);
71
72 void
73 webgit_repoinfo_find_last (struct webgit_repo_info* self);
74
75 struct webgit_repo_info*
76 webgit_repo_enter (struct webgit_query* query);
77
78 #endif
79
80 /*
81 //      Local Variables:
82 //      mode: C
83 //      c-file-style: "gnu"
84 //      indent-tabs-mode: nil
85 //      End:
86 */