#!/usr/bin/perl
use strict;

my $name = $ENV{PATH_INFO};
$name =~ s!^/!!;
$name =~ s/%([0-9A-Fa-f]{2})/pack 'C', hex $1/ge;
$name =~ s/[\x00-\x1F]/ /g;

my $name_c = $name;
$name_c =~ s/[\\";\x20\x7F-\xFF]//g;

print "Content-Type: text/html; charset=$name_c

";


my $s = q[<!DOCTYPE HTML>].
($ENV{QUERY_STRING} =~ /c1/ ? q[<meta charset=iso-8859-3>] :
 $ENV{QUERY_STRING} =~ /c2/ ? q[<meta charset=iso-8859-4>] : q[]) .
q[<script charset=utf-8 src="../../../support/result0.js"></script>
<script charset=utf-8 src="../../../support/result.js"></script>

<h1>Before <code>onload</code></h1>
<noscript>FAIL (noscript)</noscript>
<script>
  document.write ('<p><code>document.charset</code>: ');
  writeResult (document.charset);

  document.write ('<p><code>document.characterSet</code>: ');
  writeResult (document.characterSet);

  document.write ('<p><code>document.inputEncoding</code>: ');
  writeResult (document.inputEncoding);

  document.write ('<hr>');

  document.write ('<p><code>document.defaultCharset</code>: ');
  writeResult (document.defaultCharset);

  document.write ('<p><code>document.xmlEncoding</code>: ');
  writeResult (document.xmlEncoding);

window.onload = function () {
  setResult ('result-charset', document.charset);
  setResult ('result-characterSet', document.characterSet);
  setResult ('result-inputEncoding', document.inputEncoding);
  setResult ('result-defaultCharset', document.defaultCharset);
  setResult ('result-xmlEncoding', document.xmlEncoding);
};
</script>

<h1>After <code>onload</code></h1>

<p><code>document.charset</code>: <span id=result-charset></span>
<p><code>document.characterSet</code>: <span id=result-characterSet></span>
<p><code>document.inputEncoding</code>: <span id=result-inputEncoding></span>
<hr>
<p><code>document.defaultCharset</code>: <span id=result-defaultCharset></span>
<p><code>document.xmlEncoding</code>: <span id=result-xmlEncoding></span>
];


print $s;