Ticket #154: index.cgi.json.patch

File index.cgi.json.patch, 1.1 kB (added by perigrin, 2 years ago)
  • .cgi

    old new  
    1515use OpenGuides::CGI; 
    1616use OpenGuides::Config; 
    1717use OpenGuides::RDF; 
     18use OpenGuides::JSON; 
    1819use OpenGuides::Utils; 
    1920use OpenGuides::Template; 
    2021use Time::Piece; 
     
    178179    } else { # Default is to display a node. 
    179180        if ( $format and $format eq "rdf" ) { 
    180181            display_node_rdf( node => $node ); 
     182        } elsif ($format and $format eq 'json') { 
     183            display_node_json( node => $node ); 
    181184        } elsif ( $format and $format eq 'raw' ) { 
    182185            $guide->display_node( 
    183186                                  id       => $node, 
     
    348351    print $rdf_writer->emit_rdfxml( node => $args{node} ); 
    349352} 
    350353 
     354sub display_node_json { 
     355        my %args = @_; 
     356        my $json_writer = OpenGuides::JSON->new( wiki => $wiki, config => $config ); 
     357        print "Content-type: text/javascript\n\n"; 
     358        print $json_writer->emit_json( node => $args{node} ); 
     359} 
     360 
    351361sub process_template { 
    352362    my ($template, $node, $vars, $conf, $omit_header) = @_; 
    353363