278 |
$self->html ('</ul>'); |
$self->html ('</ul>'); |
279 |
} # nav_list |
} # nav_list |
280 |
|
|
281 |
|
sub http_header ($) { |
282 |
|
shift->html (qq[Content-Type: text/html; charset=utf-8\n\n]); |
283 |
|
} # http_header |
284 |
|
|
285 |
|
sub http_error ($$) { |
286 |
|
my $self = shift; |
287 |
|
my $code = 0+shift; |
288 |
|
my $text = { |
289 |
|
404 => 'Not Found', |
290 |
|
}->{$code}; |
291 |
|
$self->html (qq[Status: $code $text\nContent-Type: text/html ; charset=us-ascii\n\n$code $text]); |
292 |
|
} # http_error |
293 |
|
|
294 |
|
sub html_header ($) { |
295 |
|
my $self = shift; |
296 |
|
$self->html (q[<!DOCTYPE html> |
297 |
|
<html lang="en"> |
298 |
|
<head> |
299 |
|
<title>Web Document Conformance Checker (BETA)</title> |
300 |
|
<link rel="stylesheet" href="../cc-style.css" type="text/css"> |
301 |
|
</head> |
302 |
|
<body> |
303 |
|
<h1><a href="../cc-interface">Web Document Conformance Checker</a> |
304 |
|
(<em>beta</em>)</h1> |
305 |
|
]); |
306 |
|
} # html_header |
307 |
|
|
308 |
sub encode_url_component ($$) { |
sub encode_url_component ($$) { |
309 |
shift; |
shift; |