From f3fdcfd6d9e7d88fbc97f9294c302c338d2500b5 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Wed, 26 Aug 2009 01:49:33 +0100 Subject: [PATCH] Use POST for routetrade update to avoid overly long URLs due to many tickyboxes --- yarrg/TODO | 2 -- yarrg/web/query_route | 19 +++++++++++++++++-- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/yarrg/TODO b/yarrg/TODO index 6c9e31c..e3ecc68 100644 --- a/yarrg/TODO +++ b/yarrg/TODO @@ -28,8 +28,6 @@ circular routes are treated as complex eg onload thing broken, need proper framework -use POST for routetrade update - dropdowns are broken sometimes initial/final stocks feature diff --git a/yarrg/web/query_route b/yarrg/web/query_route index be1196e..ee457f5 100644 --- a/yarrg/web/query_route +++ b/yarrg/web/query_route @@ -49,6 +49,16 @@ my @islandids; my %islandid2; my $qa= \%ARGS; + +my $be_post; +my $startform= sub { + ($be_post)= @_; + +
+<%perl> +}; +my $goupdate= sub { $be_post ? 'Update' : 'Go' }; +

Specify route

@@ -61,7 +71,7 @@ my $qa= \%ARGS; Enter route (islands, or archipelagoes, separated by |s or commas; abbreviations are OK):
- +% $startform->($routestring =~ m/\S/); <&| qtextstring, qa => $qa, dbh => $dbh, thingstring => 'routestring', emsgstore => \$emsg, @@ -76,6 +86,11 @@ Enter route (islands, or archipelagoes, separated by |s or commas; % } else { #---------- dropdowns, user selects from menus ---------- +$startform->(grep { + defined %ARGS{"archipelago$dd"} || + defined %ARGS{"islandid$dd"} + } (0..$qa->{Dropdowns}-1)); + <%perl> my ($sth,$row); my @archlistdata; @@ -165,7 +180,7 @@ function ms_Setarch(dd) { % } #---------- end of dropdowns, now common middle of page code ---------- - + % my $ours= sub { $_[0] =~ m/^island|^archipelago|^routestring|^[RT]/; }; <& "lookup:formhidden", ours => $ours &> -- 2.30.2