- my $ibx = $ctx->{-inbox};
- my @items = $mset->items;
- $ctx->{search_query} = $q;
- my $srch = $ibx->search;
- PublicInbox::WwwAtomStream->response($ctx, 200, sub {
- while (my $x = shift @items) {
- $x = load_doc_retry($srch, $x);
- $x = $ibx->smsg_mime($x) and return $x;
- }
- return undef;
- });
-}
-
-package PublicInbox::SearchQuery;
-use strict;
-use warnings;
-use URI::Escape qw(uri_escape);
-use PublicInbox::Hval;
-use PublicInbox::MID qw(MID_ESC);
-
-sub new {
- my ($class, $qp) = @_;
-
- my $r = $qp->{r};
- my ($l) = (($qp->{l} || '') =~ /([0-9]+)/);
- $l = $LIM if !$l || $l > $LIM;
- bless {
- q => $qp->{'q'},
- x => $qp->{x} || '',
- o => (($qp->{o} || '0') =~ /(-?[0-9]+)/),
- l => $l,
- r => (defined $r && $r ne '0'),
- }, $class;
+ $ctx->{ids} = $ctx->{ibx}->isrch->mset_to_artnums($mset);
+ $ctx->{search_query} = $q; # used by WwwAtomStream::atom_header
+ PublicInbox::WwwAtomStream->response($ctx, 200, \&adump_i);