WebServer: Use table tags in directory listings
Use tables to align stuff instead of putting everything in a <pre>.
This commit is contained in:
parent
efa117f801
commit
5c7d54d50d
Notes:
sideshowbarker
2024-07-19 04:33:20 +09:00
Author: https://github.com/awesomekling Commit: https://github.com/SerenityOS/serenity/commit/5c7d54d50d2
1 changed files with 8 additions and 9 deletions
|
@ -167,18 +167,16 @@ void Client::handle_directory_listing(const String& requested_path, const String
|
|||
builder.append(escape_html_entities(requested_path));
|
||||
builder.append("</h1>\n");
|
||||
builder.append("<hr>\n");
|
||||
builder.append("<pre>\n");
|
||||
builder.append("<table>\n");
|
||||
|
||||
Core::DirIterator dt(real_path);
|
||||
while (dt.has_next()) {
|
||||
auto name = dt.next_path();
|
||||
builder.append("<a href=\"");
|
||||
builder.append("<tr><td><a href=\"");
|
||||
builder.append(urlencode(name));
|
||||
builder.append("\">");
|
||||
builder.append(escape_html_entities(name));
|
||||
builder.append("</a>");
|
||||
for (size_t i = 0; i < (40 - name.length()); ++i)
|
||||
builder.append(' ');
|
||||
builder.append("</a></td>");
|
||||
|
||||
StringBuilder path_builder;
|
||||
path_builder.append(real_path);
|
||||
|
@ -190,13 +188,14 @@ void Client::handle_directory_listing(const String& requested_path, const String
|
|||
if (rc < 0) {
|
||||
perror("stat");
|
||||
}
|
||||
builder.appendf(" %10d", st.st_size);
|
||||
builder.appendf(" ");
|
||||
builder.appendf("<td>%10d</td>", st.st_size);
|
||||
builder.append("<td>");
|
||||
builder.append(Core::DateTime::from_timestamp(st.st_mtime).to_string());
|
||||
builder.append("\n");
|
||||
builder.append("</td>");
|
||||
builder.append("</tr>\n");
|
||||
}
|
||||
|
||||
builder.append("</pre>\n");
|
||||
builder.append("</table>\n");
|
||||
builder.append("<hr>\n");
|
||||
builder.append("<i>Generated by WebServer (SerenityOS)</i>\n");
|
||||
builder.append("</body>\n");
|
||||
|
|
Loading…
Add table
Reference in a new issue