# $Id: SubBrowser.pm,v 1.1 2003/10/03 12:08:19 clajac Exp $
package CPANXR::Apache::SubBrowser;
use CPANXR::Parser qw(:constants);
use strict;
sub graph {
my ($self, $r, $q) = @_;
# Fetch sub id
my $sub = $q->param('sub');
my ($sub_id, $pkg_id) = split/_/,$sub,2;
my $sub_name = CPANXR::Database->select_symbol($sub_id)->[0]->[0];
my $package = CPANXR::Database->select_symbol($pkg_id)->[0]->[0];
# Fetch type
my $type = $q->param('type') || 'svg';
if($sub_id && $pkg_id) {
$r->print("Visualizing subroutine: ${package}::${sub_name} as ");
$r->print(qq{SVG | });
$r->print(qq{PNG});
$r->print("\n
");
$r->print("
\n"); if($type eq 'svg') { $r->print(qq{}); } elsif($type eq 'png') { $r->print(qq{\n"); } else { $r->print("No such package\n"); } } 1;}); } $r->print("