communigate (phase 2): rules. RT#7514
[freeside.git] / httemplate / autohandler
index ad0ab8b..ae04d42 100644 (file)
@@ -7,23 +7,38 @@
 my $profile = '';
 if ( UNIVERSAL::can(dbh, 'sprintProfile') ) {
 
-  if ( lc($r->content_type) eq 'text/html' ) {
+  if ( lc($r->content_type) eq 'text/html'
+       && $FS::CurrentUser::CurrentUser->option('show_db_profile')
+     )
+  {
 
-    # barely worth it, just in case someone tries to use profiling on a
-    # non-RT install
-    eval "use Text::Wrapper;";
-    die $@ if $@;
+    ## 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();
+    #$text =~ s/^/                                                          /mg;
 
-    $profile = '<PRE>'.
-               encode_entities( $wrapper->wrap( dbh->sprintProfile() ) ).
-               #"\n\n". &sprintAutoProfile(). '</PRE>';
-               "\n\n".                        '</PRE>';
-  } 
+    $profile = '<PRE>'.  encode_entities( $text ). "\n\n". '</PRE>';
+
+  }
+
+  #well, could do this without sprintProfile, but definiately don't want it on
+  #unless DBIx::Profile is loaded
+  if ( $FS::CurrentUser::CurrentUser->option('save_db_profile') ) {
+    #my $file = %%%FREESIDE_LOG%%%; #substitute here?  maybe get from FS.pm?
+    my $file = '/usr/local/etc/freeside/'; #bah
+    $file .= "dbix_profile.$$.". time;
+    dbh->setLogFile($file);
+    dbh->printProfile();
+  }
 
   dbh->{'private_profile'} = {};
 }
 
 s/(<\/BODY>[\s\n]*<\/HTML>[\s\n]*)$/$profile$1/i;
 </%filter>
+<%cleanup>
+   dbh->commit();
+</%cleanup>