#!/usr/local/bin/perl use XML::LibXSLT; use CGI; use CGI::Carp qw(fatalsToBrowser); use DBI; push (@INC, $ENV{'DOCUMENT_ROOT'}.'/cgi-local/util'); require ('cgi-lib.pl'); require ('database.pl'); &ReadParse(*input); print "Content-type: text/html\n\n"; print "\n"; use XML::LibXSLT; use XML::LibXML; $translate_filename=$ENV{'DOCUMENT_ROOT'}."/dictionary/list/translate.xsl"; $dictionary_filename=$ENV{'DOCUMENT_ROOT'}."/dictionary/list/dictionary.xml"; $template_filename="index.html"; # use query string parameter by default $lang=$input{'l'}; # if none then use the browser setting if (!$lang) { $lang=$ENV{'HTTP_ACCEPT_LANGUAGE'}; # check for multiple languages e.g. en-us;de etc } # Else use us english if (!$lang) { $lang="en-us"; } $url=$input{'url'}; if ($url) { $template_filename=$ENV{'DOCUMENT_ROOT'}.$url } my $parser = XML::LibXML->new(); my $xslt = XML::LibXSLT->new(); my $source = $parser->parse_file($template_filename); my $style_doc = $parser->parse_file($translate_filename); my $stylesheet = $xslt->parse_stylesheet($style_doc); my $results = $stylesheet->transform($source, currentLocale => "'$lang'",dictionary-file => "'$dictionary_filename'"); print $stylesheet->output_string($results);