diff options
Diffstat (limited to 'httemplate/autohandler')
-rw-r--r-- | httemplate/autohandler | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/httemplate/autohandler b/httemplate/autohandler new file mode 100644 index 000000000..bdea50534 --- /dev/null +++ b/httemplate/autohandler @@ -0,0 +1,35 @@ +% $m->call_next; +<%init> + dbh->{'private_profile'} = {} if UNIVERSAL::can(dbh, 'sprintProfile'); +</%init> +<%filter> + +my $profile = ''; +if ( UNIVERSAL::can(dbh, 'sprintProfile') ) { + + if ( lc($r->content_type) eq 'text/html' ) { + + ## barely worth it, just in case someone tries to use profiling on a + ## non-RT install + #eval "use Text::Wrapper;"; + #die $@ if $@; + + my $wrapper = new Text::Wrapper( columns => 80 ); + my $text = dbh->sprintProfile(); + #my $text = $wrapper->wrap( dbh->sprintProfile() ); + $text =~ s/^/ /mg; + + $profile = '<PRE>'. + encode_entities( $text ). + #"\n\n". &sprintAutoProfile(). '</PRE>'; + "\n\n". '</PRE>'; + } + + dbh->{'private_profile'} = {}; +} + +s/(<\/BODY>[\s\n]*<\/HTML>[\s\n]*)$/$profile$1/i; +</%filter> +<%cleanup> + dbh->commit(); +</%cleanup> |