chiark / gitweb /
Put webcopyright in autohandler
[ypp-sc-tools.web-live.git] / yarrg / web / lookup
old mode 100644 (file)
new mode 100755 (executable)
index ae22b33..931594a
@@ -1,3 +1,39 @@
+<%doc>
+
+ This is part of the YARRG website.  YARRG is a tool and website
+ for assisting players of Yohoho Puzzle Pirates.
+
+ Copyright (C) 2009 Ian Jackson <ijackson@chiark.greenend.org.uk>
+ Copyright (C) 2009 Clare Boothby
+
+  YARRG's client code etc. is covered by the ordinary GNU GPL (v3 or later).
+  The YARRG website is covered by the GNU Affero GPL v3 or later, which
+   basically means that every installation of the website will let you
+   download the source.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Affero General Public License as
+ published by the Free Software Foundation, either version 3 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU Affero General Public License for more details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+ Yohoho and Puzzle Pirates are probably trademarks of Three Rings and
+ are used without permission.  This program is not endorsed or
+ sponsored by Three Rings.
+
+
+ This Mason component generates the main `lookup' page, including
+ all the entry boxes etc. for every query.
+
+
+</%doc>
 <%perl>
 my %a;
 my %ahtml;
@@ -50,8 +86,10 @@ foreach my $var (@vars) {
 </%perl>
 <html><head><title><% ucfirst $ahtml{Query} %> - YARRG</title></head><body>
 
-<a href="<% $m->current_comp()->name() %>">YARRG</a> -
+<a href="<% $m->current_comp()->name() |u %>">YARRG</a> -
  Yet Another Revenue Research Gatherer
+|
+<a href="docs">documentation</a>
 <p>
 <%perl>
 
@@ -72,7 +110,7 @@ foreach my $var (keys %ARGS) {
 }
 
 my $quri= sub {
-       my $uri= URI->new($m->current_comp()->name());
+       my $uri= URI->new('lookup');
        $uri->query_form(@_);
        $uri->path_query();
 };
@@ -95,7 +133,9 @@ foreach my $var (@vars) {
                        my %qf= (%baseqf,%queryqf);
                        delete $qf{$lname};
                        $qf{$lname}= $value if $cvalix;
-                       print '<a href="',$quri->(%qf),'">';
+</%perl>
+<a href="<% $quri->(%qf) |h %>">
+<%perl>
                        $after= '</a>';
                }
                print $html, $after;
@@ -114,19 +154,21 @@ $debug => 0
 $routestring => ''
 </%args>
 
+<hr>
+
 %########### query `route' ##########
 % if ($a{Query} eq 'route') {
 
 <h1>Specify route</h1>
-<form action="<% $quri->() %>" method="get">
+<form action="<% $quri->() |h %>" method="get">
 
 %#---------- textbox, user enters route as string ----------
 % if (!$a{Dropdowns}) {
 
 Enter route (islands, or archipelagoes, separated by |s or commas;
- abbreviations are OK):<br/>
+ abbreviations are OK):<br>
 
-<script type="text/javascript">
+<&| script &>
 tr_uri= "routetextstring?format=json&type=text/xml"
                + "&ocean=<% uri_escape($a{Ocean}) %>";
 
@@ -165,13 +207,13 @@ function tr_Ready() {
   tr_Request();
 }
 window.onload= tr_Needed;
-</script>
+</&script>
 
 <input type="text" id="routestring" name="routestring" size=80
  value="<% $routestring |h %>"
  onchange="tr_Needed();"
  onkeyup="tr_Later();"><br>
-<div id="routeresults">&nbsp;</div><br/>
+<div id="routeresults">&nbsp;</div><br>
 
 % } else { #---------- dropdowns, user selects from menus ----------
 
@@ -226,10 +268,10 @@ foreach my $arch (keys %islandlistdata) {
 
 </%perl>
 
-<input type=hidden name=dropdowns value="<% $a{Dropdowns} %>">
+<input type=hidden name=dropdowns value="<% $a{Dropdowns} |h %>">
 
-<script type="text/javascript">
-ms_lists= <% to_json(\%resetislandlistdata) %>;
+<&| script &>
+ms_lists= <% to_json_protecttags(\%resetislandlistdata) %>;
 function ms_Setarch(dd) {
   debug('ms_SetArch '+dd+' arch='+arch);
   var arch= document.getElementsByName('archipelago'+dd).item(0).value;
@@ -240,7 +282,7 @@ function ms_Setarch(dd) {
   select.innerHTML= got;
   debug('ms_SetArch '+dd+' arch='+arch+' innerHTML set');
 }
-</script>
+</&script>
 
 <table style="table-layout:fixed; width:90%;">
 
@@ -344,6 +386,7 @@ for my $dd (0..$a{Dropdowns}-1) {
 % ########### query `age' ##########
 
 <h1>Market data age</h1>
+<& dataage, %baseqf, %queryqf &>
 
 % } ########## end of `age' query ##########
 
@@ -356,19 +399,20 @@ Debug log:
 </pre>
 % }
 
-<script type="text/javascript">
+<&| script &>
 function debug (m) {
 % if ($debug) {
   var node= document.getElementById('debug_log');
   node.innerHTML += "\n" + m + "\n";
 % }
 }
-</script>
+</&script>
+
+<& footer &>
 
 <%init>
 use CommodsWeb;
 use HTML::Entities;
 use URI::Escape;
-use JSON;
 
 </%init>