Blame


1 2c251c14 2020-01-15 tracey /*
2 9460dac0 2020-01-15 tracey * Copyright (c) 2019, 2020 Tracey Emery <tracey@traceyemery.net>
3 2c251c14 2020-01-15 tracey *
4 2c251c14 2020-01-15 tracey * Permission to use, copy, modify, and distribute this software for any
5 2c251c14 2020-01-15 tracey * purpose with or without fee is hereby granted, provided that the above
6 2c251c14 2020-01-15 tracey * copyright notice and this permission notice appear in all copies.
7 2c251c14 2020-01-15 tracey *
8 2c251c14 2020-01-15 tracey * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 2c251c14 2020-01-15 tracey * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 2c251c14 2020-01-15 tracey * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 2c251c14 2020-01-15 tracey * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 2c251c14 2020-01-15 tracey * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 2c251c14 2020-01-15 tracey * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 2c251c14 2020-01-15 tracey * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 2c251c14 2020-01-15 tracey */
16 2c251c14 2020-01-15 tracey
17 2c251c14 2020-01-15 tracey #ifndef GOTWEB_UI_H
18 2c251c14 2020-01-15 tracey #define GOTWEB_UI_H
19 2c251c14 2020-01-15 tracey
20 2c251c14 2020-01-15 tracey /* general html */
21 2c251c14 2020-01-15 tracey
22 2c251c14 2020-01-15 tracey char *head =
23 2c251c14 2020-01-15 tracey "<meta name='viewport' content='initial-scale=1.0," \
24 2c251c14 2020-01-15 tracey " user-scalable=no' />" \
25 2c251c14 2020-01-15 tracey "<meta charset='utf-8' />" \
26 2c251c14 2020-01-15 tracey "<meta name='msapplication-TileColor' content='#da532c' />" \
27 2c251c14 2020-01-15 tracey "<meta name='theme-color' content='#ffffff' />" \
28 2c251c14 2020-01-15 tracey "<link rel='apple-touch-icon' sizes='180x180'" \
29 2c251c14 2020-01-15 tracey " href='/apple-touch-icon.png' />" \
30 2c251c14 2020-01-15 tracey "<link rel='icon' type='image/png' sizes='32x32'" \
31 2c251c14 2020-01-15 tracey " href='/favicon-32x32.png' />" \
32 2c251c14 2020-01-15 tracey "<link rel='icon' type='image/png' sizes='16x16'" \
33 2c251c14 2020-01-15 tracey " href='/favicon-16x16.png' />" \
34 2c251c14 2020-01-15 tracey "<link rel='manifest' href='/site.webmanifest' />" \
35 2c251c14 2020-01-15 tracey "<link rel='mask-icon' href='/safari-pinned-tab.svg'" \
36 2c251c14 2020-01-15 tracey " color='#5bbad5' />" \
37 2c251c14 2020-01-15 tracey "<link rel='stylesheet' type='text/css' href='/gotweb.css' />";
38 2c251c14 2020-01-15 tracey
39 2c251c14 2020-01-15 tracey char *got_link =
40 2c251c14 2020-01-15 tracey "<div id='got_link'>" \
41 2c251c14 2020-01-15 tracey "<a href='%s' target='_sotd'><img src='/%s' alt='logo' /></a>" \
42 2c251c14 2020-01-15 tracey "</div>";
43 2c251c14 2020-01-15 tracey
44 2c251c14 2020-01-15 tracey char *site_link =
45 2c251c14 2020-01-15 tracey "<div id='site_link'>" \
46 2c251c14 2020-01-15 tracey "<a href='%s'>%s</a> %s %s" \
47 2c251c14 2020-01-15 tracey "</div>";
48 2c251c14 2020-01-15 tracey
49 2c251c14 2020-01-15 tracey char *search =
50 87f9ebf5 2020-01-15 tracey "<!--/* <div id='search'>" \
51 2c251c14 2020-01-15 tracey "<form method='POST'>" \
52 2c251c14 2020-01-15 tracey "<input type='search' id='got-search' name='got-search' size='15'" \
53 2c251c14 2020-01-15 tracey " maxlength='50' />" \
54 2c251c14 2020-01-15 tracey "<button>Search</button>" \
55 2c251c14 2020-01-15 tracey "</form>" \
56 87f9ebf5 2020-01-15 tracey "</div> */-->";
57 2c251c14 2020-01-15 tracey
58 2c251c14 2020-01-15 tracey char *np_wrapper_start =
59 2c251c14 2020-01-15 tracey "<div id='np_wrapper'>" \
60 2c251c14 2020-01-15 tracey "<div id='nav_prev'>";
61 2c251c14 2020-01-15 tracey
62 ec46ccd7 2020-01-15 tracey char *div_diff_line =
63 ec46ccd7 2020-01-15 tracey "<div id='diff_line' class='%s'>";
64 ec46ccd7 2020-01-15 tracey
65 2c251c14 2020-01-15 tracey char *div_end =
66 2c251c14 2020-01-15 tracey "</div>";
67 2c251c14 2020-01-15 tracey
68 2c251c14 2020-01-15 tracey char *nav_next =
69 2c251c14 2020-01-15 tracey "<div id='nav_next'>" \
70 2c251c14 2020-01-15 tracey "<a href='?page=%d'>Next<a/>" \
71 2c251c14 2020-01-15 tracey "</div>";
72 2c251c14 2020-01-15 tracey
73 2c251c14 2020-01-15 tracey char *nav_prev =
74 2c251c14 2020-01-15 tracey "<a href='?page=%d'>Previous<a/>";
75 2c251c14 2020-01-15 tracey
76 46b9c89b 2020-01-15 tracey char *repo_owner =
77 46b9c89b 2020-01-15 tracey "<div id='repo_owner_title'>Owner: </div>" \
78 46b9c89b 2020-01-15 tracey "<div id='repo_owner'>%s</div>";
79 46b9c89b 2020-01-15 tracey
80 8d4d2453 2020-01-15 tracey char *tags_row =
81 8d4d2453 2020-01-15 tracey "<div id='tags_wrapper'>" \
82 8d4d2453 2020-01-15 tracey "<div id='tags_age'>%s</div>" \
83 4ff7391f 2020-01-28 tracey "<div id='tags'>tag %s</div>" \
84 4ff7391f 2020-01-28 tracey "<div id='tags_name'>%s</div>" \
85 8d4d2453 2020-01-15 tracey "</div>" \
86 8d4d2453 2020-01-15 tracey "<div id='navs_wrapper'>" \
87 8d4d2453 2020-01-15 tracey "<div id='navs'>%s</div>" \
88 8d4d2453 2020-01-15 tracey "</div>" \
89 8d4d2453 2020-01-15 tracey "</div>" \
90 8d4d2453 2020-01-15 tracey "<div id='dotted_line'></div>";
91 8d4d2453 2020-01-15 tracey
92 8d4d2453 2020-01-15 tracey char *tags_navs =
93 4ff7391f 2020-01-28 tracey "<a href='?path=%s&action=tag&commit=%s'>tag</a> | " \
94 f2f46662 2020-01-23 tracey "<a href='?path=%s&action=briefs&commit=%s'>commit briefs</a> | " \
95 f2f46662 2020-01-23 tracey "<a href='?path=%s&action=commits&commit=%s'>commits</a>";
96 bcbc97d8 2020-01-15 tracey
97 8d4d2453 2020-01-15 tracey char *heads_row =
98 8d4d2453 2020-01-15 tracey "<div id='heads_wrapper'>" \
99 8d4d2453 2020-01-15 tracey "<div id='heads_age'>%s</div>" \
100 8d4d2453 2020-01-15 tracey "<div id='head'>%s</div>" \
101 8d4d2453 2020-01-15 tracey "</div>" \
102 8d4d2453 2020-01-15 tracey "<div id='navs_wrapper'>" \
103 8d4d2453 2020-01-15 tracey "<div id='navs'>%s</div>" \
104 8d4d2453 2020-01-15 tracey "</div>" \
105 8d4d2453 2020-01-15 tracey "</div>" \
106 8d4d2453 2020-01-15 tracey "<div id='dotted_line'></div>";
107 8d4d2453 2020-01-15 tracey
108 8d4d2453 2020-01-15 tracey char *heads_navs =
109 87f9ebf5 2020-01-15 tracey "<a href='?path=%s&action=summary&headref=%s'>summary</a> | " \
110 f2f46662 2020-01-23 tracey "<a href='?path=%s&action=briefs&headref=%s'>commit briefs</a> | " \
111 f2f46662 2020-01-23 tracey "<a href='?path=%s&action=commits&headref=%s'>commits</a>";
112 8d4d2453 2020-01-15 tracey
113 f2f46662 2020-01-23 tracey char *folder_html =
114 6a821328 2020-01-29 tracey "<a href='?path=%s&action=%s&commit=%s&folder=%s' " \
115 f2f46662 2020-01-23 tracey "class='diff_directory'>%s%s</a>";
116 8087c3c5 2020-01-15 tracey
117 f2f46662 2020-01-23 tracey char *file_html =
118 6a821328 2020-01-29 tracey "<a href='?path=%s&action=%s&commit=%s&file=%s&folder=%s'>%s%s</a>";
119 8087c3c5 2020-01-15 tracey
120 f2f46662 2020-01-23 tracey /* headers */
121 8087c3c5 2020-01-15 tracey
122 f2f46662 2020-01-23 tracey char *header_commit_html =
123 f2f46662 2020-01-23 tracey "<div id='header_commit_title'>Commit:</div>" \
124 f2f46662 2020-01-23 tracey "<div id='header_commit'>%s %s</div>";
125 8087c3c5 2020-01-15 tracey
126 f2f46662 2020-01-23 tracey char *header_diff_html =
127 f2f46662 2020-01-23 tracey "<div id='header_diff_title'>Diff:</div>" \
128 f2f46662 2020-01-23 tracey "<div id='header_diff'>%s %s</div>";
129 8087c3c5 2020-01-15 tracey
130 f2f46662 2020-01-23 tracey char *header_author_html =
131 f2f46662 2020-01-23 tracey "<div id='header_author_title'>Author:</div>" \
132 f2f46662 2020-01-23 tracey "<div id='header_author'>%s</div>";
133 8087c3c5 2020-01-15 tracey
134 f2f46662 2020-01-23 tracey char *header_committer_html =
135 f2f46662 2020-01-23 tracey "<div id='header_committer_title'>Committer:</div>" \
136 f2f46662 2020-01-23 tracey "<div id='header_committer'>%s</div>";
137 87f9ebf5 2020-01-15 tracey
138 f2f46662 2020-01-23 tracey char *header_age_html =
139 f2f46662 2020-01-23 tracey "<div id='header_age_title'>Date:</div>" \
140 f2f46662 2020-01-23 tracey "<div id='header_age'>%s</div>";
141 ec46ccd7 2020-01-15 tracey
142 f2f46662 2020-01-23 tracey char *header_commit_msg_html =
143 f2f46662 2020-01-23 tracey "<div id='header_commit_msg_title'>Message:</div>" \
144 f2f46662 2020-01-23 tracey "<div id='header_commit_msg'>%s</div>";
145 ec46ccd7 2020-01-15 tracey
146 f2f46662 2020-01-23 tracey char *header_tree_html =
147 f2f46662 2020-01-23 tracey "<div id='header_tree_title'>Tree:</div>" \
148 f2f46662 2020-01-23 tracey "<div id='header_tree'>%s</div>";
149 4ceb8155 2020-01-15 tracey
150 f2f46662 2020-01-23 tracey /* commit.tmpl */
151 4ceb8155 2020-01-15 tracey
152 f2f46662 2020-01-23 tracey char *commits_wrapper =
153 f2f46662 2020-01-23 tracey "<div id='commits_title_wrapper'>" \
154 f2f46662 2020-01-23 tracey "<div id='commits_title'>Commits</div></div>" \
155 f2f46662 2020-01-23 tracey "<div id='commits_content'>";
156 f2f46662 2020-01-23 tracey
157 f2f46662 2020-01-23 tracey char *commits_line =
158 f2f46662 2020-01-23 tracey "<div id='commits_line_wrapper'>%s%s%s%s</div>" \
159 4ceb8155 2020-01-15 tracey "<div id='dotted_line'></div>" \
160 f2f46662 2020-01-23 tracey "<div id='commit'>%s</div>" \
161 4ceb8155 2020-01-15 tracey "<div id='navs_wrapper'>" \
162 4ceb8155 2020-01-15 tracey "<div id='navs'>%s</div>" \
163 4ceb8155 2020-01-15 tracey "</div>" \
164 4ceb8155 2020-01-15 tracey "</div>" \
165 8087c3c5 2020-01-15 tracey "<div id='solid_line'></div>";
166 4ceb8155 2020-01-15 tracey
167 f2f46662 2020-01-23 tracey char *commits_navs =
168 f2f46662 2020-01-23 tracey "<a href='?path=%s&action=diff&commit=%s'>diff</a> | " \
169 87f9ebf5 2020-01-15 tracey "<a href='?path=%s&action=tree&commit=%s'>tree</a><!--/* | " \
170 87f9ebf5 2020-01-15 tracey "<a href='?path=%s&action=snapshot&commit=%s'>snapshot</a> */-->";
171 8087c3c5 2020-01-15 tracey
172 ec46ccd7 2020-01-15 tracey /* blame.tmpl */
173 ec46ccd7 2020-01-15 tracey
174 f2f46662 2020-01-23 tracey char *blame_wrapper =
175 f2f46662 2020-01-23 tracey "<div id='blame_title_wrapper'>" \
176 f2f46662 2020-01-23 tracey "<div id='blame_title'>Blame</div></div>" \
177 f2f46662 2020-01-23 tracey "<div id='blame_content'>%s</div>";
178 ec46ccd7 2020-01-15 tracey
179 f2f46662 2020-01-23 tracey char *blame_header =
180 f2f46662 2020-01-23 tracey "<div id='blame_header_wrapper'>" \
181 f2f46662 2020-01-23 tracey "<div id='blame_header'>%s%s</div>" \
182 ec46ccd7 2020-01-15 tracey "</div>" \
183 ec46ccd7 2020-01-15 tracey "<div id='dotted_line'></div>" \
184 f2f46662 2020-01-23 tracey "<div id='blame'>%s</div>" \
185 ec46ccd7 2020-01-15 tracey "</div>";
186 ec46ccd7 2020-01-15 tracey
187 f2f46662 2020-01-23 tracey char *blame_line =
188 2e676fc5 2020-01-15 tracey "<div id='blame_wrapper'>" \
189 119bf4ed 2020-01-15 tracey "<div id='blame_number'>%.*d</div>" \
190 10d47faf 2020-01-31 tracey "<div id='blame_hash'>" \
191 1d28db1e 2020-02-03 stsp "<a href='?path=%s&action=diff&commit=%s&file=%s&folder=%s'>%.8s</a>" \
192 10d47faf 2020-01-31 tracey "</div>" \
193 119bf4ed 2020-01-15 tracey "<div id='blame_date'>%s</div>" \
194 119bf4ed 2020-01-15 tracey "<div id='blame_author'>%-8s</div>" \
195 119bf4ed 2020-01-15 tracey "<div id='blame_code'>%s</div>" \
196 2e676fc5 2020-01-15 tracey "</div>";
197 2e676fc5 2020-01-15 tracey
198 8087c3c5 2020-01-15 tracey /* tree.tmpl */
199 8087c3c5 2020-01-15 tracey
200 f2f46662 2020-01-23 tracey char *tree_wrapper =
201 f2f46662 2020-01-23 tracey "<div id='tree_title_wrapper'>" \
202 f2f46662 2020-01-23 tracey "<div id='tree_title'>Tree</div></div>" \
203 f2f46662 2020-01-23 tracey "<div id='tree_content'>%s</div>";
204 8087c3c5 2020-01-15 tracey
205 f2f46662 2020-01-23 tracey char *tree_header =
206 f2f46662 2020-01-23 tracey "<div id='tree_header_wrapper'>" \
207 f2f46662 2020-01-23 tracey "<div id='tree_header'>%s%s</div>" \
208 8087c3c5 2020-01-15 tracey "</div>" \
209 8087c3c5 2020-01-15 tracey "<div id='dotted_line'></div>" \
210 f2f46662 2020-01-23 tracey "<div id='tree'>%s</div>" \
211 8087c3c5 2020-01-15 tracey "</div>";
212 8087c3c5 2020-01-15 tracey
213 f2f46662 2020-01-23 tracey char *tree_line =
214 f2f46662 2020-01-23 tracey "<div id='tree_wrapper'>" \
215 c3bcdfd5 2020-01-29 tracey "<div id='tree_line' class='%s'>%s</div>" \
216 e46f587c 2020-01-29 tracey "<div id='tree_line_blank' class='%s'>&nbsp;</div>" \
217 4ff7391f 2020-01-28 tracey "</div>";
218 4ff7391f 2020-01-28 tracey
219 e46f587c 2020-01-29 tracey char *tree_line_with_navs =
220 e46f587c 2020-01-29 tracey "<div id='tree_wrapper'>" \
221 e46f587c 2020-01-29 tracey "<div id='tree_line' class='%s'>%s</div>" \
222 e46f587c 2020-01-29 tracey "<div id='tree_line_navs' class='%s'>" \
223 6a821328 2020-01-29 tracey "<a href='?path=%s&action=%s&commit=%s&file=%s&folder=%s'>%s</a> | " \
224 6a821328 2020-01-29 tracey "<a href='?path=%s&action=%s&commit=%s&file=%s&folder=%s'>%s</a>" \
225 e46f587c 2020-01-29 tracey "</div>" \
226 e46f587c 2020-01-29 tracey "</div>";
227 e46f587c 2020-01-29 tracey
228 4ff7391f 2020-01-28 tracey /* tag.tmpl */
229 4ff7391f 2020-01-28 tracey
230 4ff7391f 2020-01-28 tracey char *tag_wrapper =
231 4ff7391f 2020-01-28 tracey "<div id='tag_title_wrapper'>" \
232 4ff7391f 2020-01-28 tracey "<div id='tag_title'>Tag</div></div>" \
233 4ff7391f 2020-01-28 tracey "<div id='tag_content'>%s</div>";
234 4ff7391f 2020-01-28 tracey
235 4ff7391f 2020-01-28 tracey char *tag_header =
236 4ff7391f 2020-01-28 tracey "<div id='tag_header_wrapper'>" \
237 4ff7391f 2020-01-28 tracey "<div id='tag_header'>%s%s</div>" \
238 4ff7391f 2020-01-28 tracey "</div>" \
239 4ff7391f 2020-01-28 tracey "<div id='dotted_line'></div>" \
240 4ff7391f 2020-01-28 tracey "<div id='tag'>%s</div>" \
241 8087c3c5 2020-01-15 tracey "</div>";
242 8087c3c5 2020-01-15 tracey
243 4ff7391f 2020-01-28 tracey char *tag_line =
244 4ff7391f 2020-01-28 tracey "<div id='tag_wrapper'>" \
245 4ff7391f 2020-01-28 tracey "<div id='tag_line'>%s</div>" \
246 4ff7391f 2020-01-28 tracey "</div>";
247 4ff7391f 2020-01-28 tracey
248 4ff7391f 2020-01-28 tracey char *tag_info =
249 4ff7391f 2020-01-28 tracey "<div id='tag_info_date_title'>Tag Date:</div>" \
250 4ff7391f 2020-01-28 tracey "<div id='tag_info_date'>%s</div>" \
251 4ff7391f 2020-01-28 tracey "<div id='tag_info_tagger_title'>Tagger:</div>" \
252 4ff7391f 2020-01-28 tracey "<div id='tag_info_tagger'>%s</div>" \
253 4ff7391f 2020-01-28 tracey "<div id='tag_info'>%s</div>";
254 4ff7391f 2020-01-28 tracey
255 87f9ebf5 2020-01-15 tracey /* diff.tmpl */
256 87f9ebf5 2020-01-15 tracey
257 f2f46662 2020-01-23 tracey char *diff_wrapper =
258 f2f46662 2020-01-23 tracey "<div id='diff_title_wrapper'>" \
259 f2f46662 2020-01-23 tracey "<div id='diff_title'>Commit Diff</div></div>" \
260 f2f46662 2020-01-23 tracey "<div id='diff_content'>%s</div>";
261 87f9ebf5 2020-01-15 tracey
262 f2f46662 2020-01-23 tracey char *diff_header =
263 f2f46662 2020-01-23 tracey "<div id='diff_header_wrapper'>" \
264 f2f46662 2020-01-23 tracey "<div id='diff_header'>%s%s%s%s%s%s%s</div>" \
265 87f9ebf5 2020-01-15 tracey "</div>" \
266 87f9ebf5 2020-01-15 tracey "<div id='dotted_line'></div>" \
267 f2f46662 2020-01-23 tracey "<div id='diff'>%s</div>" \
268 87f9ebf5 2020-01-15 tracey "</div>";
269 87f9ebf5 2020-01-15 tracey
270 2c251c14 2020-01-15 tracey /* index.tmpl */
271 2c251c14 2020-01-15 tracey
272 2c251c14 2020-01-15 tracey char *index_projects_header =
273 2c251c14 2020-01-15 tracey "<div id='index_header'>" \
274 2c251c14 2020-01-15 tracey "<div id='index_header_project'>Project</div>" \
275 2c251c14 2020-01-15 tracey "<div id='index_header_description'>Description</div>" \
276 2c251c14 2020-01-15 tracey "<div id='index_header_owner'>Owner</div>" \
277 2c251c14 2020-01-15 tracey "<div id='index_header_age'>Last Change</div>" \
278 2c251c14 2020-01-15 tracey "</div>";
279 2c251c14 2020-01-15 tracey
280 2c251c14 2020-01-15 tracey char *index_projects =
281 2c251c14 2020-01-15 tracey "<div id='index_wrapper'>" \
282 2c251c14 2020-01-15 tracey "<div id='index_project'>" \
283 2c251c14 2020-01-15 tracey "<a href='?path=%s&action=summary'>%s</a>" \
284 2c251c14 2020-01-15 tracey "</div>" \
285 2c251c14 2020-01-15 tracey "<div id='index_project_description'>%s</div>" \
286 2c251c14 2020-01-15 tracey "<div id='index_project_owner'>%s</div>" \
287 2c251c14 2020-01-15 tracey "<div id='index_project_age'>%s</div>" \
288 2c251c14 2020-01-15 tracey "<div id='navs_wrapper'>" \
289 8d4d2453 2020-01-15 tracey "<div id='navs'>%s</div>" \
290 2c251c14 2020-01-15 tracey "</div>" \
291 bce5dac1 2020-01-28 stsp "</div>" \
292 bce5dac1 2020-01-28 stsp "<div id='dotted_line'></div>";
293 bce5dac1 2020-01-28 stsp
294 bce5dac1 2020-01-28 stsp char *index_projects_empty =
295 bce5dac1 2020-01-28 stsp "<div id='index_wrapper'>" \
296 bce5dac1 2020-01-28 stsp "No repositories found in %s" \
297 2c251c14 2020-01-15 tracey "</div>" \
298 2c251c14 2020-01-15 tracey "<div id='dotted_line'></div>";
299 2c251c14 2020-01-15 tracey
300 2c251c14 2020-01-15 tracey char *index_navs =
301 2c251c14 2020-01-15 tracey "<a href='?path=%s&action=summary'>summary</a> | " \
302 f2f46662 2020-01-23 tracey "<a href='?path=%s&action=briefs'>commit briefs</a> | " \
303 f2f46662 2020-01-23 tracey "<a href='?path=%s&action=commits'>commits</a> | " \
304 2c251c14 2020-01-15 tracey "<a href='?path=%s&action=tree'>tree</a>";
305 2c251c14 2020-01-15 tracey
306 2c251c14 2020-01-15 tracey #endif /* GOTWEB_UI_H */