blob: 43d0fa619726543e58ce624fab59517437e43e7f [file] [log] [blame]
Lars Hjemlia4d1ca12008-03-24 16:50:57 +01001#ifndef UI_SHARED_H
2#define UI_SHARED_H
3
Jason A. Donenfeldd7034802015-08-12 14:50:09 +02004#include <stdbool.h>
5
Lukas Fleischer996f86e2013-04-01 17:11:13 +02006extern const char *cgit_httpscheme();
7extern const char *cgit_hosturl();
8extern const char *cgit_rooturl();
Jason A. Donenfeld6bcda2f2015-03-03 17:18:42 +01009extern const char *cgit_currenturl();
Jason A. Donenfelda4313262014-01-16 23:21:54 +010010extern const char *cgit_loginurl();
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010011extern char *cgit_repourl(const char *reponame);
12extern char *cgit_fileurl(const char *reponame, const char *pagename,
13 const char *filename, const char *query);
14extern char *cgit_pageurl(const char *reponame, const char *pagename,
15 const char *query);
16
John Keepingbbfa0062014-08-01 22:14:17 +010017extern void cgit_add_clone_urls(void (*fn)(const char *));
18
Johan Herlandc3f23d42010-06-10 01:09:24 +020019extern void cgit_index_link(const char *name, const char *title,
Jason A. Donenfeld2e4a41e2015-03-03 17:23:40 +010020 const char *class, const char *pattern, const char *sort, int ofs, int always_root);
Johan Herlandc3f23d42010-06-10 01:09:24 +020021extern void cgit_summary_link(const char *name, const char *title,
22 const char *class, const char *head);
23extern void cgit_tag_link(const char *name, const char *title,
John Keepingc422b9b2015-01-15 22:18:14 +000024 const char *class, const char *tag);
Johan Herlandc3f23d42010-06-10 01:09:24 +020025extern void cgit_tree_link(const char *name, const char *title,
26 const char *class, const char *head,
27 const char *rev, const char *path);
28extern void cgit_plain_link(const char *name, const char *title,
29 const char *class, const char *head,
30 const char *rev, const char *path);
31extern void cgit_log_link(const char *name, const char *title,
32 const char *class, const char *head, const char *rev,
33 const char *path, int ofs, const char *grep,
34 const char *pattern, int showmsg);
35extern void cgit_commit_link(char *name, const char *title,
36 const char *class, const char *head,
John Keepingeeddb5b2014-10-05 10:59:02 +010037 const char *rev, const char *path);
Johan Herlandc3f23d42010-06-10 01:09:24 +020038extern void cgit_patch_link(const char *name, const char *title,
39 const char *class, const char *head,
Johan Herlandeac1b672010-06-10 01:09:33 +020040 const char *rev, const char *path);
Johan Herlandc3f23d42010-06-10 01:09:24 +020041extern void cgit_refs_link(const char *name, const char *title,
42 const char *class, const char *head,
43 const char *rev, const char *path);
44extern void cgit_snapshot_link(const char *name, const char *title,
45 const char *class, const char *head,
46 const char *rev, const char *archivename);
47extern void cgit_diff_link(const char *name, const char *title,
48 const char *class, const char *head,
49 const char *new_rev, const char *old_rev,
John Keeping03f537f2014-10-05 10:59:03 +010050 const char *path);
Johan Herlandc3f23d42010-06-10 01:09:24 +020051extern void cgit_stats_link(const char *name, const char *title,
52 const char *class, const char *head,
53 const char *path);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010054extern void cgit_object_link(struct object *obj);
55
Lars Hjemli6857bec2011-06-15 10:04:13 +020056extern void cgit_submodule_link(const char *class, char *path,
57 const char *rev);
58
John Keepinged5bd302013-04-06 11:23:52 +010059__attribute__((format (printf,1,2)))
60extern void cgit_print_error(const char *fmt, ...);
61__attribute__((format (printf,1,0)))
62extern void cgit_vprint_error(const char *fmt, va_list ap);
Johan Herlandc3f23d42010-06-10 01:09:24 +020063extern void cgit_print_date(time_t secs, const char *format, int local_time);
64extern void cgit_print_age(time_t t, time_t max_relative, const char *format);
Lukas Fleischerf60ffa12014-01-15 21:53:15 +010065extern void cgit_print_http_headers(void);
Jason A. Donenfeldd7034802015-08-12 14:50:09 +020066extern void cgit_redirect(const char *url, bool permanent);
Lukas Fleischerf60ffa12014-01-15 21:53:15 +010067extern void cgit_print_docstart(void);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010068extern void cgit_print_docend();
Lukas Fleischerf60ffa12014-01-15 21:53:15 +010069extern void cgit_print_pageheader(void);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010070extern void cgit_print_filemode(unsigned short mode);
71extern void cgit_print_snapshot_links(const char *repo, const char *head,
72 const char *hex, int snapshots);
Lars Hjemlic3c925f2008-12-07 15:52:35 +010073extern void cgit_add_hidden_formfields(int incl_head, int incl_search,
Johan Herlandc3f23d42010-06-10 01:09:24 +020074 const char *page);
Lars Hjemlia4d1ca12008-03-24 16:50:57 +010075#endif /* UI_SHARED_H */