summaryrefslogtreecommitdiff
path: root/lib/Plack/Middleware/Debug/Dancer/Settings.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Plack/Middleware/Debug/Dancer/Settings.pm')
-rw-r--r--lib/Plack/Middleware/Debug/Dancer/Settings.pm30
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/Plack/Middleware/Debug/Dancer/Settings.pm b/lib/Plack/Middleware/Debug/Dancer/Settings.pm
new file mode 100644
index 0000000..cf10748
--- /dev/null
+++ b/lib/Plack/Middleware/Debug/Dancer/Settings.pm
@@ -0,0 +1,30 @@
+package Plack::Middleware::Debug::Dancer::Settings;
+use 5.008;
+use strict;
+use warnings;
+use parent qw(Plack::Middleware::Debug::Base);
+use Class::Method::Modifiers qw/install_modifier/;
+use Dancer::Config;
+
+#my $psgi_env;
+# install_modifier 'Dancer', 'around', 'start' => sub {
+# my $orig = shift;
+# my $self = shift;
+# $psgi_env->{'plack.middleware.dancer_settings'} = $self->config;
+# $self->$orig(@_);
+# };
+
+sub run {
+ my ( $self, $env, $panel ) = @_;
+# $psgi_env = $env;
+
+ return sub {
+ my $res = shift;
+ my $settings = Dancer::Config->settings();
+# my $settings = $env->{'plack.middleware.dancer_settings'};
+ my @settings = map { $_ => $settings->{$_}} keys %$settings;
+ $panel->content( sub { $self->render_list_pairs( \@settings ) } );
+ };
+}
+
+1;