Changeset 818


Ignore:
Timestamp:
Jul 6, 2006, 6:01:05 PM (15 years ago)
Author:
nick
Message:

Support (+test) searching as a feed

Location:
trunk
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/MANIFEST

    r797 r818  
    6767t/22_feed_recent_changes.t
    6868t/23_feed_node_all_versions.t
     69t/24_feed_node_listings.t
    6970t/25_write_geo_data.t
    7071t/26_geo_data_search_form.t
     
    8182t/38_search_params.t
    8283t/39_search_form.t
     84t/40_search_as_feed.t
    8385t/41_deletion.t
    8486t/51_display_node.t
  • trunk/lib/OpenGuides/Search.pm

    r799 r818  
    150150
    151151    my %tt_vars = (
     152                   format      => $args{'vars'}->{'format'},
    152153                   ss_version  => $VERSION,
    153154                   ss_info_url => 'http://openguides.org/page/search_help'
     
    694695}
    695696
    696 # thin wrapper around OpenGuides::Template
     697# thin wrapper around OpenGuides::Template, or OpenGuides::Feed
    697698sub process_template {
    698699    my ($self, %args) = @_;
     
    702703    $tt_vars->{not_deletable} = 1;
    703704    return %$tt_vars if $self->{return_tt_vars};
    704     my $output =  OpenGuides::Template->output(
     705
     706    # Do we want a feed, or TT html?
     707    my $output;
     708    if($tt_vars->{'format'}) {
     709        my $format = $tt_vars->{'format'};
     710        my @nodes = @{$tt_vars->{'results'}};
     711
     712        my $feed = OpenGuides::Feed->new(
     713                                               wiki       => $self->wiki,
     714                                               config     => $self->config,
     715                                               og_version => $VERSION,
     716                                        );
     717        $output  = "Content-Type: ".$feed->default_content_type($format)."\n";
     718        $output .= $feed->build_mini_feed_for_nodes($format,@nodes);
     719    } else {
     720        $output =  OpenGuides::Template->output(
    705721                                                wiki     => $self->wiki,
    706722                                                config   => $self->config,
     
    708724                                                vars     => $tt_vars,
    709725                                              );
     726    }
     727
    710728    return $output if $self->{return_output};
    711729
Note: See TracChangeset for help on using the changeset viewer.