add filtering to index (using parameter filter, for now single)
[webpac] / WebPac.pm
index 5cc5f89..4afc2c2 100644 (file)
--- a/WebPac.pm
+++ b/WebPac.pm
@@ -438,6 +438,8 @@ sub show_index {
        my $field = $q->param("f$i");
        my $limit = $q->param("v$i");
 
+       my $filter = $q->param("filter");
+
        my $html;
 
        my $index = new index_DBI(
@@ -447,9 +449,9 @@ sub show_index {
                $cfg_global->val('global', 'dbi_passwd') || ''
        );
 
-       my $total = $index->count($field,$limit);
+       my $total = $index->count($field,$limit,$filter);
 
-       if (! $total) {
+       if (! defined($total)) {
                my $tmpl = $self->load_tmpl(url_ex($q,'no_index.html'));
                $tmpl->param('field',$field);
                $html = $tmpl->output;
@@ -482,7 +484,7 @@ sub show_index {
        make_pager($q, $tmpl, $pager);
        make_pager_vars($q, $tmpl, @persist_vars);
 
-       my @pager_data_list = $index->fetch($field,$limit, $pager->first - 1, $pager->entries_on_this_page);
+       my @pager_data_list = $index->fetch($field,$limit, $pager->first - 1, $pager->entries_on_this_page, $filter);
        $tmpl->param('PAGER_DATA_LIST', \@pager_data_list);
 
        return in_template($q,$tmpl->output);