CGI-Application-Plugin-DevPopup-Query
view release on metacpan or search on metacpan
1.03
=head1 SUBROUTINES/METHODS
No public methods for this module exist.
=cut
sub import {
my $c = scalar caller;
$c->add_callback( 'devpopup_report', \&_runmode_report );
$c->add_callback( 'devpopup_report', \&_query_report );
goto &Exporter::import;
}
sub _runmode_report {
my $self = shift;
my $current_runmode = '<h3>' . ($self->get_current_runmode() || '<em>default</em>') . '</h3>';
return $self->devpopup->add_report(
'title' => 'Current Run Mode',
'summary' => $current_runmode,
'report' => $current_runmode,
);
}
sub _query_report {
my $self = shift;
my $cgi = _cgi_report($self);
my $current_runmode = $self->get_current_runmode() || 'default';
return $self->devpopup->add_report(
'title' => 'CGI Query',
'summary' => 'CGI request parameters',
'report' => qq!<style type="text/css">tr.even{background-color:#eee; } thead th h3 {margin: 0;}</style><table><thead><th colspan="2"><h3>CGI Query</h3></th></thead><tbody> $cgi </tbody></table>!,
);
}
sub _cgi_report {
my $self = shift;
my $r = 0;
{
package My::App;
use base qw/CGI::Application/;
use CGI;
use CGI::Application::Plugin::DevPopup;
use CGI::Application::Plugin::DevPopup::Query;
sub setup
{
my $self = shift;
$self->add_callback('devpopup_report', 'my_report');
$self->start_mode('runmode');
$self->run_modes([ qw/runmode/ ]);
my $query = CGI->new({'dinosaur' => 'barney'});
$self->query($query);
return;
}
sub runmode
{
my $self = shift;
return '<html><body>Hi there!</body></html>';
}
sub my_report
{
my $self = shift;
my $outputref = shift;
$self->devpopup->add_report(
title => 'Test 1',
report => 'Test 1 report body',
);
return;
}
}
$ENV{'CGI_APP_RETURN_ONLY'} = 1;
$ENV{'HTTP_HOST'} = undef; # RT #42315
( run in 1.205 second using v1.01-cache-2.11-cpan-364913b4093 )