(bug #3051) bad support of pagination in auth_finder

This patch change the page to use GET instead of post, and use independants "input"
names for searched values. Else the args are not passed to the next page due to
rewrite rules.

Signed-off-by: Galen Charlton <galen.charlton@liblime.com>
This commit is contained in:
Nahuel ANGELINETTI 2009-03-23 13:02:14 +01:00 committed by Galen Charlton
parent 684cea4309
commit 5cf66ad6dd
3 changed files with 16 additions and 10 deletions

View file

@ -59,7 +59,7 @@ if ( $op eq "do_search" ) {
my @and_or = $query->param('and_or');
my @excluding = $query->param('excluding');
my @operator = $query->param('operator');
my @value = $query->param('value');
my @value = ($query->param('value_mainstr'), $query->param('value_main'), $query->param('value_any'));
my $orderby = $query->param('orderby');
$resultsperpage = $query->param('resultsperpage');
@ -86,9 +86,12 @@ if ( $op eq "do_search" ) {
push @field_data, { term => "and_or", val => $and_or[$i] };
push @field_data, { term => "excluding", val => $excluding[$i] };
push @field_data, { term => "operator", val => $operator[$i] };
push @field_data, { term => "value", val => $value[$i] };
}
push @field_data, { term => "value_mainstr", val => $query->param('value_mainstr') || "" };
push @field_data, { term => "value_main", val => $query->param('value_main') || "" };
push @field_data, { term => "value_any", val => $query->param('value_any') || ""};
my @numbers = ();
if ( $total > $resultsperpage ) {
@ -141,9 +144,9 @@ if ( $op eq "do_search" ) {
to => $to,
numbers => \@numbers,
authtypecode => $authtypecode,
mainmainstring => $value[0],
mainstring => $value[1],
anystring => $value[2],
value_mainstr => $query->param('value_mainstr') || "",
value_main => $query->param('value_main') || "",
value_any => $query->param('value_any') || "",
);
} else {
( $template, $loggedinuser, $cookie ) = get_template_and_user(
@ -166,6 +169,9 @@ $template->param(
index => $index,
authtypesloop => \@authtypesloop,
authtypecode => $authtypecode,
value_mainstr => $query->param('value_mainstr') || "",
value_main => $query->param('value_main') || "",
value_any => $query->param('value_any') || "",
);
# Print the page

View file

@ -1,4 +1,4 @@
<form name="f" method="post" action="auth_finder.pl">
<form name="f" method="get" action="auth_finder.pl">
<input type="hidden" name="op" value="do_search" />
<input type="hidden" name="type" value="intranet" />
<input type="hidden" name="nbstatements" value="<!-- TMPL_VAR NAME="nbstatements" -->" />
@ -18,7 +18,7 @@
<option value="start">starts with</option>
<option value="is">is exactly</option>
</select>
<input type="text" name="value" value="<!-- TMPL_VAR name="mainmainstring" -->" />
<input type="text" name="value_mainstr" value="<!-- TMPL_VAR ESCAPE="HTML" name="value_mainstr" -->" />
</li>
<li>
<label for="mainentry">Main entry</label>
@ -30,7 +30,7 @@
<option value="start">starts with</option>
<option value="is">is exactly</option>
</select>
<input type="text" name="value" value="<!-- TMPL_VAR name="mainstring" -->" />
<input type="text" name="value_main" value="<!-- TMPL_VAR ESCAPE="HTML" name="value_main" -->" />
</li>
<li>
<label for="marclist">Anywhere</label>
@ -42,7 +42,7 @@
<option value="start">starts with</option>
<option value="is">is exactly</option>
</select>
<input type="text" name="value" value="<!-- TMPL_VAR name="anystring" -->" />
<input type="text" name="value_any" value="<!-- TMPL_VAR ESCAPE="HTML" name="value_any" -->" />
</li>
<li>
<label for="orderby">Sort by </label>

View file

@ -172,7 +172,7 @@ function openAuth(tagsubfieldid,authtype) {
}
}
}
newin=window.open("../authorities/auth_finder.pl?authtypecode="+ authtype+ "&index="+tagsubfieldid+"&mainmainstring="+encodeURI(mainmainstring)+"&mainstring="+encodeURI(mainstring), "_blank",'width=700,height=550,toolbar=false,scrollbars=yes');
newin=window.open("../authorities/auth_finder.pl?authtypecode="+ authtype+ "&index="+tagsubfieldid+"&value_mainstr="+encodeURI(mainmainstring)+"&value_main="+encodeURI(mainstring), "_blank",'width=700,height=550,toolbar=false,scrollbars=yes');
}