Lingua-NATools
view release on metacpan or search on metacpan
cgis/nat-dict.cgi view on Meta::CPAN
function go(l,c) {
if (parseInt(navigator.appVersion)>=4)
if (navigator.userAgent.indexOf("MSIE")>0) { //IE 4+
var sel=document.selection.createRange();
sel.expand("word");
window.location="nat-dict.cgi?corpus=" + c + "&" + l + "=" + escape(sel.text)
} else // NS4+
window.location="nat-dict.cgi?corpus=" + c + "&" + l + "=" + escape(document.getSelection())
}
function help() {
window.open('nat-dict.cgi?HELP=1','NAT-QI Quick Help',
'menubar=no,height=600,width=800,resizable=yes,toolbar=no,location=no,status=no');
}
EOS
print Lingua::NATools::CGI::my_header(jscript => $JSCRIPT);
print <<'EOH';
<style>
div.right { text-align: right }
td.color { font-weight: bold; text-align: right; width: 10%; border: solid 1px #000; padding: 2px }
td.oc { text-align: right; width: 10%; border: solid 1px #000; padding: 2px; }
a { font-weight: bold; text-decoration: none; }
a:visited { color: #009; }
a:hover { text-decoration: underline; }
.body { margin-left: 10%; margin-right: 10%; }
.form { background-color: #efe;
margin-bottom: 10px;
margin-left: 10%;
margin-right: 10%;
border: solid 1px #000;
text-align: center;
}
</style>
EOH
if (param("HELP")) {
print Lingua::NATools::CGI::close_window();
print_help();
print Lingua::NATools::CGI::my_footer();
exit;
}
print div({-class=>"hlpbt",
-onclick=>"help()"}, "Help");
print h1("NATools Probabilistic Dictionaries Browsing Interface");
print start_form({-class=>"main"});;
print "<table>";
print Tr(td({-rowspan=>'2'},submit("Search")),
td({-rowspan=>'2'},"  "),
td({-style=>"text-align: left"},"corpus",popup_menu(-onchange=>"changeLanguages();",
-name=>'crp',
-id => 'crp',
-default => $name,
-values=>[keys %$corpora]) ),
td({-rowspan=>'2'},"  "),
td(["search ".span({id=>"source"}, $corpora->{$name}{source})." language: ", textfield("l1")]));
print Tr(td({-align=>'left'},label(checkbox(-name=>'compact', -checked=>1,
-value=>'ON', -label=>' compact mode'))),
td([
"search ".span({id=>"target"}, $corpora->{$name}{target})." language: ",
textfield("l2"),
]));
print "</table>";
print end_form;
if ($crp) {
if (param("compact")) {
if ((param("l1") || param("l2"))) {
my $results;
my $word;
my $dir;
if (param("l1")) {
$dir = "~>";
$word = param("l1");
}
if (param("l2")) {
$word = param("l2");
$dir = "<~";
}
$word = lc($word);
$results = $server->ptd({crp=>$crp,direction => $dir},$word);
# FIXME
exit if (!$results);
print h1($name);
print div({-style=>"text-align: center"},
a({-style=>"font-size: small;", -href=>"nat-about.cgi?corpus=$crp"},"meta-information")).br;
print h2({-style=>"text-align: center"},"$word ($results->[0])");
print div({-style=>"text-align: center"},
"[", a({-href=>"nat-ngrams.cgi?corpus=$crp&".(($dir eq "~>")?"l1":"l2")."=$word"},"n-grams"), "]");
print "<div style=\"text-align: center\"><table class='results' cellspacing='0'>\n";
print Tr(th({-class=>'first'},"Level 1"), th({colspan => 8},"Level 2"));
for (sort {$results->[1]{$b} <=> $results->[1]{$a}} keys %{$results->[1]}) {
my $od = $dir eq "~>"?"<~":"~>";
my $l1 = $dir eq "~>"?"l2":"l1";
my $l2 = $l1 eq "l1"?"l2":"l1";
my $or = $server->ptd({crp=>$crp,direction => $od}, $_);
print "<tr>\n";
print td({style=>'background-color: #eeeeee; border-bottom: dotted 1px #999999; border-right: dotted 1px #999999'},
[table(Tr(td(small(sprintf("%.2f %%",
defined($results->[1]{$_})?100*$results->[1]{$_}:0)))),
( run in 1.251 second using v1.01-cache-2.11-cpan-364913b4093 )