chiark / gitweb /
routesearch: support circular routes
[ypp-sc-tools.main.git] / yarrg / web / lookup
index 8475f689d4bb31b3bc452d5a99eccf163a7895f9..2f67760c487d6f1281b37bcb819ca6a7b2dd3d01 100755 (executable)
@@ -57,6 +57,8 @@ my %styles;
                Before => 'Query: ',
                Values => [     [ 'route', 'Trades for route' ],
                                [ 'commod', 'Prices for commodity' ],
+                               [ 'offers', 'Offers at location' ],
+                               [ 'routesearch', 'Find profitable route' ],
                                [ 'age', 'Data age' ] ]
        }, {    Name => 'BuySell',
                Before => '',
@@ -74,10 +76,16 @@ my %styles;
                QuerySpecific => 1,
        }, {    Name => 'ShowStalls',
                Before => '',
-               Values => [     [ 0, 'Show amount at each price' ],
+               Values => [     [ 0, 'Show total quantity at each price' ],
                                [ 1, 'Show individual stalls' ],
                        ],
                QuerySpecific => 1,
+       }, {    Name => 'RouteSearchType',
+               Before => 'Type of routes to search for: ',
+               Values => [     [ 0, 'Open-ended' ],
+                               [ 1, 'Circular' ],
+                       ],
+               QuerySpecific => 1,
        });
 
 foreach my $var (@vars) {
@@ -118,12 +126,34 @@ $ours
 % }
 </%method>
 
-<html><head><title><% ucfirst $ahtml{Query} %> - YARRG</title></head><body>
+<html lang="en"><head><title><% ucfirst $ahtml{Query} %> - YARRG</title>
+<style type="text/css">
+body {
+  color: #000000;
+  background: #ffffff;
+}
+tr.datarow0 { background: #e3e3e3; }
+tr.datarow1 { background: #ffffff; }
+</style>
+<&| script &>
+  function register_onload(f) {
+    var previous_onload= window.onload;
+    window.onload= function() {
+      if (previous_onload) previous_onload();
+      f();
+    };
+  }
+</&script>
+</head><body>
 
 <a href="<% $m->current_comp()->name() |u %>">YARRG</a> -
  Yet Another Revenue Research Gatherer
 |
+<a href="intro">introduction</a>
+|
 <a href="docs">documentation</a>
+|
+<a href="devel">development</a>
 <p>
 <%perl>
 
@@ -135,11 +165,13 @@ foreach my $var (@vars) {
 
 foreach my $var (keys %ARGS) {
        next unless $var =~
-               m/^(?: (?:route|commod)string |
+               m/^(?: (?:route|commod|capacity|capital|island)string |
+                       lossperleague | distance |
+                       commodid |
                        islandid \d |
                        archipelago \d |
                        debug |
-                       rtsel[ag]_\w+
+                       [RT]\w+
                    )$/x;
        my $val= $ARGS{$var};
        next if $val eq 'none';
@@ -209,7 +241,9 @@ my $results_head_done=0;
 my $someresults= sub {
        return if $results_head_done;
        $results_head_done=1;
-       print "\n<h1>Results</h1>\n";
+       my ($h)= @_;
+       $h= 'Results' if !$h;
+       print "\n<h1>$h</h1>\n";
 };
 
 </%perl>
@@ -220,7 +254,7 @@ $debug => 0
 <hr>
 
 <& "query_$styles{Query}", %baseqf, %queryqf, %styles,
-    quri => $quri, dbh => $dbh,
+    quri => $quri, dbh => $dbh, queryqf => \%queryqf, allargs => \%ARGS,
     prselector => $prselector,
     someresults => $someresults,
     emsgokorprint => sub {