]> git.decadent.org.uk Git - maypole.git/blobdiff - lib/Maypole/View/TT.pm
fixed bug with multiple template roots in TT, fixed bug with frontpage path of /...
[maypole.git] / lib / Maypole / View / TT.pm
index 7c30777382d5bd151d3e5c2a5b64bc9e2c1e9364..936fcc51fc8fa7668a3a5a29b3a7d8bfb4cedc41 100644 (file)
@@ -5,7 +5,7 @@ use Maypole::Constants;
 use Template;
 use File::Spec::Functions qw(catdir tmpdir);
 
-our $error_template; 
+our $error_template;
 { local $/; $error_template = <DATA>; }
 
 our $VERSION = '2.11';
@@ -37,11 +37,13 @@ sub template {
     return OK;
   } else {
     if ($@) {
-      warn "fatal error in template '$template_file' : $@\n";
-      $r->{error} = "fatal error in template '$template_file' : $@";
+      my $error = "fatal error in template '$template_file' : $@\nTT paths : " . join(', ',$self->paths($r)) . "\n";
+      $r->warn($error);
+      $r->{error} = $error;
     } else {
-      warn "TT error for template '$template_file'\n" . $self->{tt}->error;
-      $r->{error} = "TT error for template '$template_file'\n" . $self->{tt}->error;
+      my $error = "TT error for template '$template_file'\n" . $self->{tt}->error . "\nTT paths : " . join(', ',$self->paths($r)) . "\n";
+      $r->warn($error);
+      $r->{error} = $error;
     }
     return ERROR;
   }
@@ -52,8 +54,6 @@ sub report_error {
     my ($self, $r, $error, $type) = @_;
     my $output;
 
-    warn "self : $self, r : $r, error : $error, type : $type\n";
-
     # Need to be very careful here.
     my $tt = Template->new;
     unless (ref $r->{config}) {
@@ -61,11 +61,14 @@ sub report_error {
       $error .= '<br> There was a problem finding configuration for this request';
       $r->{config} ||= {};
     }
+
+    $r->warn("report_error - reporting error to user : $error\n");
+
     if ($tt->process(\$error_template,
                     { err_type => $type, error => $error,
                       config => $r->{config},
                       request => $r,
-                      paths => $self->paths($r),
+                      paths => [ $self->paths($r) ],
                       eval{$self->vars($r)} }, \$output )) {
         $r->{output} = $output;
         if ($tt->error) { $r->{output} = "<html><body>Even the error template