Index: Slim/Web/Pages.pm =================================================================== --- Slim/Web/Pages.pm (revision 3740) +++ Slim/Web/Pages.pm (working copy) @@ -1685,11 +1698,20 @@ for my $key (keys %fieldInfo) { +#BUG1766 + if (defined $client && defined $params->{'listref'} && exists $client->param('findhash')->{$key}) { + use Data::Dumper; + $params->{$key} = $client->param('findhash')->{$key}; + print Dumper($client->param('findhash')->{$key},$params->{$key}); + } +#END if (defined($params->{$key})) { # Populate the find criteria with all query parameters in the URL $findCriteria{$key} = $params->{$key}; - +use Data::Dumper; +print Dumper(\%findCriteria); +#ENDBUG1766-DEBUG # Pre-populate the attrs list with all query parameters that # are not part of the hierarchy. This allows a URL to put # query constraints on a hierarchy using a field that isn't @@ -1833,7 +1855,12 @@ if ($nextLevelInfo->{'allTitle'}) { $list_form{'text'} = string($nextLevelInfo->{'allTitle'}); } +#BUG1766 + $client->param('findhash',{($levelInfo->{'nameTransform'} || $levels[$level]) => $items}) if defined $client; + $params->{'listref'}='findhash'; + push @attrs, 'listref' . '=' . Slim::Web::HTTP::escape($params->{'listref'}); +#BUG1766END $list_form{'descend'} = 1; $list_form{'player'} = $player; $list_form{'odd'} = ($itemnumber + 1) % 2; @@ -1844,7 +1871,8 @@ $params->{'browse_list'} .= ${Slim::Web::HTTP::filltemplatefile("browsedb_list.html", \%list_form)}; } - + pop @attrs; #only needed for 'all' listings + # Don't bother with idle streams if we only have SB2 clients my $needIdleStreams = Slim::Player::Client::needIdleStreams();