The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
#!/usr/bin/perl -w

require "Languages.inc"; # ïîëó÷èëè @AvailableLangs
print "content-type: text/plain\n\n";
( $ScriptPath )=( $ENV{SCRIPT_NAME} =~ m|(/.*/)(.*)$| );
if ( $ScriptPath eq "") { $ScriptPath = "/"; }
# Ïðåäïîëàãàåòñÿ, ÷òî âòîðîé ýëåìåíò ìàðøðóòà - óêàçàíèå íà ÿçûê, òèïà /en/, /ru/ è ò.ï.
( $DocLanguage, $DocPathAfterLang)= ( $ENV{DOCUMENT_URI} =~ m|$ScriptPath(.*)/(.*)| );

# Çäåñü - ãëîáàëüíîå ìåíþ, íå çàâèñÿùåå îò êàòàëîãà. Ýòî ÿçûêè è êîäèðîâêà
my %DocVersions;
# Ïåðåáèðàåì êàòàëîãè-ÿçûêè
for ( @{$AvailableLangs} ) {
    #Ñìîòðèì, åñòü ëè â ýòîì êàòàëîãå ôàéë ñ òî÷íî òàêèì æå íàçâàíèåì
    $OtherVersion="$_/$DocPathAfterLang";
    if (-e $OtherVersion) {  $DocVersions{$_}=$ScriptPath.$OtherVersion;  }
}

#Ýòî - ëîêàëüíîå ìåíþ
( $DocPath )= ( $ENV{DOCUMENT_URI} =~ m|(.*/)$ENV{DOCUMENT_NAME}|i );
$MenuInc=$ENV{DOCUMENT_ROOT}.$DocPath."Menu.inc";
# Åñëè ëîêàëüíîå ìåíþ ïðèñóòñòâóåò, ïå÷àòàåì åãî íà÷àëî, èíà÷å - ñàìè
if ( -e $MenuInc ) {  require $MenuInc;  print $LocalMenuStart; }
if ( !$LocalMenuStart ) {  print "<td width=100><td>Language:</td>"; }

#Òåïåðü ôîðìèðóåì ìåíþ.
foreach $key (keys (%DocVersions)){
  if ( $DocVersions{$key} eq $ENV{DOCUMENT_URI} )
  { print  "<td class=SelectedLanguage>$key</td>" ;} else
  { print "<td><a href=$DocVersions{$key}>$key</a></td>";}
}

my %Codings;
my $DecodingScript="http://www.bible.ru/cgi-bin/code.pl";
my $DocUri="http://$ENV{HTTP_HOST}$ENV{DOCUMENT_URI}";
print <<EOD;
<td nowrap>
Coding:
<a href="$DecodingScript/vol/$DocUri">trans</a>
<a href="$DecodingScript/win/$DocUri">win</a>
<a href="$DecodingScript/koi/$DocUri">koi</a>
<a href="$DecodingScript/utf8/$DocUri">utf</a>
</td>

EOD

if ($LocalMenuEnd) { print $LocalMenuEnd; }
if (!$LocalMenuEnd) { print "</tr></table>"; }

# Áëîêèðîâàòü ôîðìèðîâàíèå ìåíþ JavaScript
print "<script language=javascript>var MenuBuiltOnServer=1;</script>";

__END__
#
print join ("<br>\n", @INC);
print "<table border=1> " ;
for $key (sort  keys (%ENV) ) {
	print "<tr><td>$key </td><td> " .$ENV{$key} ."</td></tr>\n";
}
print "</table> " ;