#!/usr/bin/perl use strict; use CGI qw(:standard); use ExtUtils::Installed; my $script = $ENV{'SCRIPT_NAME'}; my $cpan = "http://search.cpan.org/search"; my $inst = ExtUtils::Installed->new(); my $cgi = CGI->new(); print header(), start_html(); print_form(); print_results($cgi) if $cgi->param('mod'); sub print_form { push my @modules, $inst->modules(); my $modname = $cgi->param('mod'); print start_form(-name =>"modules", -action =>"$script?mod=$modname"), popup_menu(-name =>'mod', -value =>\@modules), submit(-label=>'Module Details'), end_form; } sub print_results { my $module = $cgi->param('mod'); print p(font({-face=>'courier'}, b("Module"), ":", a({-href=>"${cpan}?query=$module&mode=module"}, "cpan://$module"))); print p(font({-face=>'courier'}, b("Version"), ":", $inst->version($module))); push my @filelist, $inst->files($module); print p(font({-face=>'courier'}, b("Files"), ":", br(), join br(), $inst->files($module))); } print end_html();