Apache2-HTML-Detergent
view release on metacpan or search on metacpan
lib/Apache2/HTML/Detergent.pm view on Meta::CPAN
$r->log->crit("Cannot find config from $class!");
return Apache2::Const::DECLINED;
}
# store the context; initial content type, payload
my $ctx;
unless ($ctx = $f->ctx) {
# turns out some things don't have a type!
my $x = $r->content_type || '';
my ($t, $c) =
($x =~ /^\s*([^;]*)(?:;.*?charset\s*=\s*['"]*([^'"]+)['"]*?)?/i);
$ctx = [$t || 'application/octet-stream', ''];
$f->ctx($ctx);
}
# get this before changing it
my $type = $ctx->[0];
unless ($config->type_matches($type)) {
$r->log->debug("$type doesn't match");
return Apache2::Const::DECLINED;
}
#$r->headers_out->set('Transfer-Encoding', 'chunked');
# application/xml is the most reliable content type to
# deliver to browsers that use XSLT.
if ($config->xslt) {
$r->log->debug("forcing $type -> application/xml");
$r->content_type('application/xml; charset=utf-8');
}
# XXX will we need to restore $r->status == 200 to this condition?
if ($r->is_initial_req) {
# BEGIN BUCKET
until ($bb->is_empty) {
my $b = $bb->first;
if ($b->is_eos) {
# no further processing if the brigade only contains EOS
lib/Apache2/HTML/Detergent.pm view on Meta::CPAN
my $pi = $doc->createProcessingInstruction
('xml-stylesheet', sprintf 'type="text/xsl" href="%s"',
$config->xslt);
if ($root) {
$doc->insertBefore($pi, $root);
}
}
}
else {
$r->content_type(sprintf '%s; charset=utf-8', $type);
}
#$r->log->debug($r->content_encoding || 'identity');
#$r->log->debug($r->headers_in->get('Content-Encoding'));
# reuse content
$content = $doc->toString(1);
# explicitly get rid of these big objects
undef $scrubber;
undef $doc;
t/htdocs/about.html view on Meta::CPAN
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head>
<title>Information Architecture Institute > About Us - Information Architecture Institute</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Language" content="en-us" />
<meta http-equiv="imagetoolbar" content="false" />
<meta name="MSSmartTagsPreventParsing" content="true" />
<meta name="google-site-verification" content="lKF0xMZ8xxuNdr8KfR9FmJe2gkZChc0LNR_Q7swbZQo" />
<link rel="stylesheet" type="text/css" href="/css/base.css" />
<link rel="stylesheet" type="text/css" href="/css/layout.css" />
<link rel="stylesheet" type="text/css" href="/css/styles.css" />
<script src="http://iainstitute.org/js/norobotmail.js">
</script>
<!-- start Google Analytics tracking script -->
( run in 0.233 second using v1.01-cache-2.11-cpan-4d50c553e7e )