default to a session cookie instead of setting an explicit timeout, weird timezone...
[freeside.git] / httemplate / autohandler
index 3a24417..3cc8e10 100644 (file)
@@ -1,13 +1,18 @@
 % $m->call_next;
 <%init>
+
+  $FS::Maketext::lh = '';
+
   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'
+  my $profile = '';
+
+  if ( $r && lc($r->content_type) =~ /^text\/html/
        && $FS::CurrentUser::CurrentUser->option('show_db_profile')
      )
   {
@@ -29,16 +34,17 @@ if ( UNIVERSAL::can(dbh, 'sprintProfile') ) {
   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;
+    $file .= "dbix_profile.$$.". time;
     dbh->setLogFile($file);
     dbh->printProfile();
   }
 
   dbh->{'private_profile'} = {};
+
+  s/(<\/BODY>[\s\n]*<\/HTML>[\s\n]*)/$profile$1/i;
 }
 
-s/(<\/BODY>[\s\n]*<\/HTML>[\s\n]*)$/$profile$1/i;
 </%filter>
 <%cleanup>
-   dbh->commit();
+   dbh->commit() if dbh;
 </%cleanup>