Blob


1 /*
2 * Copyright (c) 2019 Tracey Emery <tracey@traceyemery.net>
3 *
4 * Permission to use, copy, modify, and distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 */
17 #ifndef GOTWEB_UI_H
18 #define GOTWEB_UI_H
20 /* general html */
22 char *head =
23 "<meta name='viewport' content='initial-scale=1.0," \
24 " user-scalable=no' />" \
25 "<meta charset='utf-8' />" \
26 "<meta name='msapplication-TileColor' content='#da532c' />" \
27 "<meta name='theme-color' content='#ffffff' />" \
28 "<link rel='apple-touch-icon' sizes='180x180'" \
29 " href='/apple-touch-icon.png' />" \
30 "<link rel='icon' type='image/png' sizes='32x32'" \
31 " href='/favicon-32x32.png' />" \
32 "<link rel='icon' type='image/png' sizes='16x16'" \
33 " href='/favicon-16x16.png' />" \
34 "<link rel='manifest' href='/site.webmanifest' />" \
35 "<link rel='mask-icon' href='/safari-pinned-tab.svg'" \
36 " color='#5bbad5' />" \
37 "<link rel='stylesheet' type='text/css' href='/gotweb.css' />";
39 char *got_link =
40 "<div id='got_link'>" \
41 "<a href='%s' target='_sotd'><img src='/%s' alt='logo' /></a>" \
42 "</div>";
44 char *site_link =
45 "<div id='site_link'>" \
46 "<a href='%s'>%s</a> %s %s" \
47 "</div>";
49 char *site_owner =
50 "<div id='site_owner_wrapper'><div id='site_owner'>%s</div></div>";
52 char *search =
53 "<div id='search'>" \
54 "<form method='POST'>" \
55 "<input type='search' id='got-search' name='got-search' size='15'" \
56 " maxlength='50' />" \
57 "<button>Search</button>" \
58 "</form>" \
59 "</div>";
61 char *np_wrapper_start =
62 "<div id='np_wrapper'>" \
63 "<div id='nav_prev'>";
65 char *div_end =
66 "</div>";
68 char *nav_next =
69 "<div id='nav_next'>" \
70 "<a href='?page=%d'>Next<a/>" \
71 "</div>";
73 char *nav_prev =
74 "<a href='?page=%d'>Previous<a/>";
76 char *description =
77 "<div id='description_title'>Description: </div>" \
78 "<div id='description'>%s</div>";
80 char *repo_owner =
81 "<div id='repo_owner_title'>Owner: </div>" \
82 "<div id='repo_owner'>%s</div>";
84 char *last_change =
85 "<div id='last_change_title'>Last Change: </div>" \
86 "<div id='last_change'>%s</div>";
88 char *cloneurl =
89 "<div id='cloneurl_title'>Clone URL: </div>" \
90 "<div id='cloneurl'>%s</div>";
92 char *logbriefs_row =
93 "<div id='logbriefs_wrapper'>" \
94 "<div id='logbriefs_age'>%s</div>" \
95 "<div id='logbriefs_author'>%s</div>" \
96 "<div id='logbriefs_log'>%s</div>" \
97 "</div>" \
98 "<div id='navs_wrapper'>" \
99 "<div id='navs'>%s</div>" \
100 "</div>" \
101 "</div>" \
102 "<div id='dotted_line'></div>";
104 char *logbriefs_navs =
105 "<a href='?path=%s&action=commit&commit=%s'>commit</a> | " \
106 "<a href='?path=%s&action=commitdiff&commit=%s'>diff</a> | " \
107 "<a href='?path=%s&action=tree&commit=%s'>tree</a> | " \
108 "<a href='?path=%s&action=snapshot&commit=%s'>snapshot</a>";
110 char *tags_row =
111 "<div id='tags_wrapper'>" \
112 "<div id='tags_age'>%s</div>" \
113 "<div id='tag'>%s</div>" \
114 "<div id='tag_name'>%s</div>" \
115 "</div>" \
116 "<div id='navs_wrapper'>" \
117 "<div id='navs'>%s</div>" \
118 "</div>" \
119 "</div>" \
120 "<div id='dotted_line'></div>";
122 char *tags_navs =
123 "<a href='?path=%s&action=tagt&commit=%s'>tag</a> | " \
124 "<a href='?path=%s&action=commit&commit=%s'>commit</a> | " \
125 "<a href='?path=%s&action=logbriefs&commit=%s'>log briefs</a> | " \
126 "<a href='?path=%s&action=log&commit=%s'>log</a>";
128 char *heads_row =
129 "<div id='heads_wrapper'>" \
130 "<div id='heads_age'>%s</div>" \
131 "<div id='head'>%s</div>" \
132 "</div>" \
133 "<div id='navs_wrapper'>" \
134 "<div id='navs'>%s</div>" \
135 "</div>" \
136 "</div>" \
137 "<div id='dotted_line'></div>";
139 char *heads_navs =
140 "<a href='?path=%s&action=logbriefs&headref=%s'>log briefs</a> | " \
141 "<a href='?path=%s&action=log&headref=%s'>log</a> | " \
142 "<a href='?path=%s&action=tree&headref=%s'>commit</a>";
144 /* log.tmpl */
146 char *logs_wrapper =
147 "<div id='logs_wrapper'>";
149 char *logs =
150 "<div id='logs_title_wrapper'>" \
151 "<div id='logs_title'>Commits</div></div>" \
152 "<div id='logs_content'>%s</div>";
154 char *logs_row =
155 "<div id='logs_row_wrapper'>" \
156 "<div id='logs_commit'>Commit: %s</div>" \
157 "<div id='logs_author'>From: %s</div>" \
158 "<div id='logs_age'>Date: %s</div>" \
159 "</div>" \
160 "<div id='dotted_line'></div>" \
161 "<div id='log'>%s</div>" \
162 "<div id='navs_wrapper'>" \
163 "<div id='navs'>%s</div>" \
164 "</div>" \
165 "</div>" \
166 "<div id='dotted_line'></div>";
168 char *logs_navs =
169 "<a href='?path=%s&action=commit&commit=%s'>commit</a> | " \
170 "<a href='?path=%s&action=commitdiff&commit=%s'>diff</a> | " \
171 "<a href='?path=%s&action=tree&commit=%s'>tree</a> | " \
172 "<a href='?path=%s&action=snapshot&commit=%s'>snapshot</a>";
174 /* index.tmpl */
176 char *index_projects_header =
177 "<div id='index_header'>" \
178 "<div id='index_header_project'>Project</div>" \
179 "<div id='index_header_description'>Description</div>" \
180 "<div id='index_header_owner'>Owner</div>" \
181 "<div id='index_header_age'>Last Change</div>" \
182 "</div>";
184 char *index_projects =
185 "<div id='index_wrapper'>" \
186 "<div id='index_project'>" \
187 "<a href='?path=%s&action=summary'>%s</a>" \
188 "</div>" \
189 "<div id='index_project_description'>%s</div>" \
190 "<div id='index_project_owner'>%s</div>" \
191 "<div id='index_project_age'>%s</div>" \
192 "<div id='navs_wrapper'>" \
193 "<div id='navs'>%s</div>" \
194 "</div>" \
195 "</div>" \
196 "<div id='dotted_line'></div>";
198 char *index_navs =
199 "<a href='?path=%s&action=summary'>summary</a> | " \
200 "<a href='?path=%s&action=logbriefs'>log briefs</a> | " \
201 "<a href='?path=%s&action=log'>log</a> | " \
202 "<a href='?path=%s&action=tree'>tree</a>";
204 /* summary.tmpl */
206 char *summary_wrapper =
207 "<div id='summary_wrapper'>";
209 char *summary_logbriefs =
210 "<div id='summary_logbriefs_title_wrapper'>" \
211 "<div id='summary_logbriefs_title'>Log Briefs</div></div>" \
212 "<div id='summary_logbriefs_content'>%s</div>";
214 char *summary_tags =
215 "<div id='summary_tags_title_wrapper'>" \
216 "<div id='summary_tags_title'>Tags</div></div>" \
217 "<div id='summary_tags_content'>%s</div>";
219 char *summary_heads =
220 "<div id='summary_heads_title_wrapper'>" \
221 "<div id='summary_heads_title'>Heads</div></div>" \
222 "<div id='summary_heads_content'>%s</div>";
224 #endif /* GOTWEB_UI_H */