Bug fix for Wiki search pagination.

The Paginator constructor docs were backwards for the formVar and pageNumber.
Switched the order of the formVar and pageNumber variables in the Search call to the Paginator.
This commit is contained in:
Colin Kuskie 2007-02-02 06:32:36 +00:00
parent 3122e9e58f
commit d60e824ede
4 changed files with 15 additions and 8 deletions

View file

@ -53,6 +53,7 @@
error.
- fix: RSS feeds should now process HTML characters properly for RSS 2.0 standard
- fix: Corner case which could cause WeatherData.pm to fail has been fixed.
- fix: wiki pagination broken (perlDreamer Consulting, LLC)
7.3.8
- Fixed a template variable rewriting problem with HTML::Template::Expr

View file

@ -23,7 +23,7 @@ sub appendMostPopular {
my $self = shift;
my $var = shift;
my $limit = shift || $self->get("mostPopularCount");
while (my $asset = @{$self->getLineage(["children"],{returnObjects=>1, limit=>$limit, includeOnlyClasses=>["WebGUI::Asset::WikiPage"]})}) {
foreach my $asset (@{$self->getLineage(["children"],{returnObjects=>1, limit=>$limit, includeOnlyClasses=>["WebGUI::Asset::WikiPage"]})}) {
if (defined $asset) {
push(@{$var->{mostPopular}}, {
title=>$asset->getTitle,
@ -421,13 +421,19 @@ sub www_search {
addPageUrl=>$self->getUrl("func=add;class=WebGUI::Asset::WikiPage"),
};
my $queryString = $self->session->form->process('query', 'text');
if (defined $queryString) {
$self->session->scratch->set('wikiSearchQueryString', $queryString);
}
else {
$queryString = $self->session->scratch->get('wikiSearchQueryString');
}
$self->appendSearchBoxVars($var, $queryString);
if (length $queryString) {
my $search = WebGUI::Search->new($self->session);
$search->search({ keywords => $queryString,
lineage => [$self->get('lineage')],
classes => ['WebGUI::Asset::WikiPage'] });
my $rs = $search->getPaginatorResultSet;
my $rs = $search->getPaginatorResultSet($self->getUrl("func=search"),5);
$rs->appendTemplateVars($var);
my @results = ();
foreach my $row (@{$rs->getPageData}) {

View file

@ -461,7 +461,7 @@ sub getRowCount {
#-------------------------------------------------------------------
=head2 new ( session, currentURL [, paginateAfter, pageNumber, formVar ] )
=head2 new ( session, currentURL [, paginateAfter, formVar, pageNumber ] )
Constructor.
@ -477,14 +477,14 @@ The URL of the current page including attributes. The page number will be append
The number of rows to display per page. If left blank it defaults to 25.
=head3 pageNumber
By default the page number will be determined by looking at $self->session->form->process("pn"). If that is empty the page number will be defaulted to "1". If you'd like to override the page number specify it here.
=head3 formVar
Specify the form variable the paginator should use in it's links. Defaults to "pn".
=head3 pageNumber
By default the page number will be determined by looking at $self->session->form->process("pn"). If that is empty the page number will be defaulted to "1". If you'd like to override the page number specify it here.
=cut
sub new {

View file

@ -151,7 +151,7 @@ sub getPaginatorResultSet {
if $self->{_columns};
my $query = $self->_getQuery(\@columns);
my $paginator = WebGUI::Paginator->new($self->session, $url, $paginate, $pageNumber, $formVar);
my $paginator = WebGUI::Paginator->new($self->session, $url, $paginate, $formVar, $pageNumber);
$paginator->setDataByQuery($query, undef, undef, $self->{_params});
return $paginator;
}