blob: b457c9756e366ed2e78a094b592fff7916b42866 [file] [log] [blame]
Lars Hjemlia4d1ca12008-03-24 16:50:57 +01001#ifndef UI_SHARED_H
2#define UI_SHARED_H
3
Peter Colberg4c692412016-01-13 17:25:07 -05004extern const char *cgit_httpscheme(void);
5extern char *cgit_hosturl(void);
6extern const char *cgit_rooturl(void);
7extern char *cgit_currenturl(void);
8extern const char *cgit_loginurl(void);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +01009extern char *cgit_repourl(const char *reponame);
10extern char *cgit_fileurl(const char *reponame, const char *pagename,
11 const char *filename, const char *query);
12extern char *cgit_pageurl(const char *reponame, const char *pagename,
13 const char *query);
14
John Keepingbbfa0062014-08-01 22:14:17 +010015extern void cgit_add_clone_urls(void (*fn)(const char *));
16
Johan Herlandc3f23d42010-06-10 01:09:24 +020017extern void cgit_index_link(const char *name, const char *title,
Jason A. Donenfeld2e4a41e2015-03-03 17:23:40 +010018 const char *class, const char *pattern, const char *sort, int ofs, int always_root);
Johan Herlandc3f23d42010-06-10 01:09:24 +020019extern void cgit_summary_link(const char *name, const char *title,
20 const char *class, const char *head);
21extern void cgit_tag_link(const char *name, const char *title,
John Keepingc422b9b2015-01-15 22:18:14 +000022 const char *class, const char *tag);
Johan Herlandc3f23d42010-06-10 01:09:24 +020023extern void cgit_tree_link(const char *name, const char *title,
24 const char *class, const char *head,
25 const char *rev, const char *path);
26extern void cgit_plain_link(const char *name, const char *title,
27 const char *class, const char *head,
28 const char *rev, const char *path);
29extern void cgit_log_link(const char *name, const char *title,
30 const char *class, const char *head, const char *rev,
31 const char *path, int ofs, const char *grep,
John Keeping30304d82015-08-12 15:55:28 +010032 const char *pattern, int showmsg, int follow);
Johan Herlandc3f23d42010-06-10 01:09:24 +020033extern void cgit_commit_link(char *name, const char *title,
34 const char *class, const char *head,
John Keepingeeddb5b2014-10-05 10:59:02 +010035 const char *rev, const char *path);
Johan Herlandc3f23d42010-06-10 01:09:24 +020036extern void cgit_patch_link(const char *name, const char *title,
37 const char *class, const char *head,
Johan Herlandeac1b672010-06-10 01:09:33 +020038 const char *rev, const char *path);
Johan Herlandc3f23d42010-06-10 01:09:24 +020039extern void cgit_refs_link(const char *name, const char *title,
40 const char *class, const char *head,
41 const char *rev, const char *path);
42extern void cgit_snapshot_link(const char *name, const char *title,
43 const char *class, const char *head,
44 const char *rev, const char *archivename);
45extern void cgit_diff_link(const char *name, const char *title,
46 const char *class, const char *head,
47 const char *new_rev, const char *old_rev,
John Keeping03f537f2014-10-05 10:59:03 +010048 const char *path);
Johan Herlandc3f23d42010-06-10 01:09:24 +020049extern void cgit_stats_link(const char *name, const char *title,
50 const char *class, const char *head,
51 const char *path);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010052extern void cgit_object_link(struct object *obj);
53
Lars Hjemli6857bec2011-06-15 10:04:13 +020054extern void cgit_submodule_link(const char *class, char *path,
55 const char *rev);
56
John Keeping76498792015-08-14 12:47:11 +010057extern void cgit_print_layout_start(void);
58extern void cgit_print_layout_end(void);
59
John Keepinged5bd302013-04-06 11:23:52 +010060__attribute__((format (printf,1,2)))
61extern void cgit_print_error(const char *fmt, ...);
62__attribute__((format (printf,1,0)))
63extern void cgit_vprint_error(const char *fmt, va_list ap);
John Keeping9c15f3c2016-02-08 15:05:54 +000064extern const struct date_mode *cgit_date_mode(enum date_mode_type type);
John Keepingf2a901d2016-01-19 19:33:05 +000065extern void cgit_print_age(time_t t, int tz, time_t max_relative);
Lukas Fleischerf60ffa12014-01-15 21:53:15 +010066extern void cgit_print_http_headers(void);
Jason A. Donenfeldd7034802015-08-12 14:50:09 +020067extern void cgit_redirect(const char *url, bool permanent);
Lukas Fleischerf60ffa12014-01-15 21:53:15 +010068extern void cgit_print_docstart(void);
Peter Colberg4c692412016-01-13 17:25:07 -050069extern void cgit_print_docend(void);
John Keepingaec12042015-08-14 12:47:01 +010070__attribute__((format (printf,3,4)))
71extern void cgit_print_error_page(int code, const char *msg, const char *fmt, ...);
Lukas Fleischerf60ffa12014-01-15 21:53:15 +010072extern void cgit_print_pageheader(void);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010073extern void cgit_print_filemode(unsigned short mode);
74extern void cgit_print_snapshot_links(const char *repo, const char *head,
75 const char *hex, int snapshots);
Lars Hjemlic3c925f2008-12-07 15:52:35 +010076extern void cgit_add_hidden_formfields(int incl_head, int incl_search,
Johan Herlandc3f23d42010-06-10 01:09:24 +020077 const char *page);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010078#endif /* UI_SHARED_H */