version 1.142, 2017/01/19 13:35:02 |
version 1.143, 2017/01/19 13:55:56 |
Line 351 resp_begin_html(int code, const char *msg) |
|
Line 351 resp_begin_html(int code, const char *msg) |
|
printf("<!DOCTYPE html>\n" |
printf("<!DOCTYPE html>\n" |
"<html>\n" |
"<html>\n" |
"<head>\n" |
"<head>\n" |
"<meta charset=\"UTF-8\"/>\n" |
" <meta charset=\"UTF-8\"/>\n" |
"<link rel=\"stylesheet\" href=\"%s/mandoc.css\"" |
" <link rel=\"stylesheet\" href=\"%s/mandoc.css\"" |
" type=\"text/css\" media=\"all\">\n" |
" type=\"text/css\" media=\"all\">\n" |
"<title>%s</title>\n" |
" <title>%s</title>\n" |
"</head>\n" |
"</head>\n" |
"<body>\n", |
"<body>\n", |
CSS_DIR, CUSTOMIZE_TITLE); |
CSS_DIR, CUSTOMIZE_TITLE); |
Line 378 resp_searchform(const struct req *req, enum focus focu |
|
Line 378 resp_searchform(const struct req *req, enum focus focu |
|
int i; |
int i; |
|
|
printf("<form action=\"/%s\" method=\"get\">\n" |
printf("<form action=\"/%s\" method=\"get\">\n" |
"<fieldset>\n" |
" <fieldset>\n" |
"<legend>Manual Page Search Parameters</legend>\n", |
" <legend>Manual Page Search Parameters</legend>\n", |
scriptname); |
scriptname); |
|
|
/* Write query input box. */ |
/* Write query input box. */ |
|
|
printf("<input type=\"text\" name=\"query\" value=\""); |
printf(" <input type=\"text\" name=\"query\" value=\""); |
if (req->q.query != NULL) |
if (req->q.query != NULL) |
html_print(req->q.query); |
html_print(req->q.query); |
printf( "\" size=\"40\""); |
printf( "\" size=\"40\""); |
Line 394 resp_searchform(const struct req *req, enum focus focu |
|
Line 394 resp_searchform(const struct req *req, enum focus focu |
|
|
|
/* Write submission buttons. */ |
/* Write submission buttons. */ |
|
|
printf( "<button type=\"submit\" name=\"apropos\" value=\"0\">" |
printf( " <button type=\"submit\" name=\"apropos\" value=\"0\">" |
"man</button>\n" |
"man</button>\n" |
"<button type=\"submit\" name=\"apropos\" value=\"1\">" |
" <button type=\"submit\" name=\"apropos\" value=\"1\">" |
"apropos</button>\n<br/>\n"); |
"apropos</button>\n" |
|
" <br/>\n"); |
|
|
/* Write section selector. */ |
/* Write section selector. */ |
|
|
puts("<select name=\"sec\">"); |
puts(" <select name=\"sec\">"); |
for (i = 0; i < sec_MAX; i++) { |
for (i = 0; i < sec_MAX; i++) { |
printf("<option value=\"%s\"", sec_numbers[i]); |
printf(" <option value=\"%s\"", sec_numbers[i]); |
if (NULL != req->q.sec && |
if (NULL != req->q.sec && |
0 == strcmp(sec_numbers[i], req->q.sec)) |
0 == strcmp(sec_numbers[i], req->q.sec)) |
printf(" selected=\"selected\""); |
printf(" selected=\"selected\""); |
printf(">%s</option>\n", sec_names[i]); |
printf(">%s</option>\n", sec_names[i]); |
} |
} |
puts("</select>"); |
puts(" </select>"); |
|
|
/* Write architecture selector. */ |
/* Write architecture selector. */ |
|
|
printf( "<select name=\"arch\">\n" |
printf( " <select name=\"arch\">\n" |
"<option value=\"default\""); |
" <option value=\"default\""); |
if (NULL == req->q.arch) |
if (NULL == req->q.arch) |
printf(" selected=\"selected\""); |
printf(" selected=\"selected\""); |
puts(">All Architectures</option>"); |
puts(">All Architectures</option>"); |
for (i = 0; i < arch_MAX; i++) { |
for (i = 0; i < arch_MAX; i++) { |
printf("<option value=\"%s\"", arch_names[i]); |
printf(" <option value=\"%s\"", arch_names[i]); |
if (NULL != req->q.arch && |
if (NULL != req->q.arch && |
0 == strcmp(arch_names[i], req->q.arch)) |
0 == strcmp(arch_names[i], req->q.arch)) |
printf(" selected=\"selected\""); |
printf(" selected=\"selected\""); |
printf(">%s</option>\n", arch_names[i]); |
printf(">%s</option>\n", arch_names[i]); |
} |
} |
puts("</select>"); |
puts(" </select>"); |
|
|
/* Write manpath selector. */ |
/* Write manpath selector. */ |
|
|
if (req->psz > 1) { |
if (req->psz > 1) { |
puts("<select name=\"manpath\">"); |
puts(" <select name=\"manpath\">"); |
for (i = 0; i < (int)req->psz; i++) { |
for (i = 0; i < (int)req->psz; i++) { |
printf("<option "); |
printf(" <option "); |
if (strcmp(req->q.manpath, req->p[i]) == 0) |
if (strcmp(req->q.manpath, req->p[i]) == 0) |
printf("selected=\"selected\" "); |
printf("selected=\"selected\" "); |
printf("value=\""); |
printf("value=\""); |
Line 441 resp_searchform(const struct req *req, enum focus focu |
|
Line 442 resp_searchform(const struct req *req, enum focus focu |
|
html_print(req->p[i]); |
html_print(req->p[i]); |
puts("</option>"); |
puts("</option>"); |
} |
} |
puts("</select>"); |
puts(" </select>"); |
} |
} |
|
|
puts("</fieldset>\n" |
puts(" </fieldset>\n" |
"</form>"); |
"</form>"); |
} |
} |
|
|
Line 579 pg_searchres(const struct req *req, struct manpage *r, |
|
Line 580 pg_searchres(const struct req *req, struct manpage *r, |
|
puts("<table>"); |
puts("<table>"); |
|
|
for (i = 0; i < sz; i++) { |
for (i = 0; i < sz; i++) { |
printf("<tr>\n" |
printf(" <tr>\n" |
"<td class=\"title\">\n" |
" <td class=\"title\">" |
"<a href=\"/%s%s%s/%s", |
"<a href=\"/%s%s%s/%s", |
scriptname, *scriptname == '\0' ? "" : "/", |
scriptname, *scriptname == '\0' ? "" : "/", |
req->q.manpath, r[i].file); |
req->q.manpath, r[i].file); |
printf("\">"); |
printf("\">"); |
html_print(r[i].names); |
html_print(r[i].names); |
printf("</a>\n" |
printf("</a></td>\n" |
"</td>\n" |
" <td class=\"desc\">"); |
"<td class=\"desc\">"); |
|
html_print(r[i].output); |
html_print(r[i].output); |
puts("</td>\n" |
puts("</td>\n" |
"</tr>"); |
" </tr>"); |
} |
} |
|
|
puts("</table>\n" |
puts("</table>\n" |