add query parameters for user accounts
[webgit] / src / query.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_QUERY_H
21 #define WEBGIT_QUERY_H
22
23 #include "webgit.h"
24
25 #include "cwa.h"
26
27
28 /*
29   parameters for cgi requests
30 */
31 #define WEBGIT_PARAMS                                                   \
32  WEBGIT_PARAM(repo, "Repository to be queried")                         \
33  WEBGIT_PARAM(action, "Action to be performed")                         \
34  WEBGIT_PARAM(ref, "Selected ref (branch, tag, ..) for query")          \
35  WEBGIT_PARAM(path, "Path and filename for the queried object")         \
36  WEBGIT_PARAM(object, "Object to perform on")                           \
37  WEBGIT_PARAM(blob, "Data recieved from an edit")                       \
38  WEBGIT_PARAM(user, "Account name for the editing user")                \
39  WEBGIT_PARAM(name, "Real name of the editing user")                    \
40  WEBGIT_PARAM(email, "Email of the editing user")                       \
41  WEBGIT_PARAM(ssign, "Server signature over user/name/email")           \
42  WEBGIT_PARAM(skin, "Set skin")                                         \
43  WEBGIT_PARAM(maxage, "Age in days to hide inactive repositories")      \
44  WEBGIT_PARAM(login, "Login cookie")                                    \
45  WEBGIT_PARAM(prefs, "Preferences cookie")                              \
46  WEBGIT_PARAM(count, "How many things to display")
47
48
49 void
50 webgit_query_init (struct webgit_query* q);
51
52 struct webgit_query*
53 webgit_query_destroy (struct webgit_query* q);
54
55 void
56 webgit_query_add_repo (struct webgit_query* q, const char* path);
57
58
59 void
60 webgit_param_dispatch (const Cgi self,
61                       const char* name,
62                       const char* value,
63                       size_t value_len,
64                       void* user_data);
65
66 #endif
67
68 /*
69 //      Local Variables:
70 //      mode: C
71 //      c-file-style: "gnu"
72 //      indent-tabs-mode: nil
73 //      End:
74 */