Exceptions während Template-Ausführung ausgeben lassen
authorMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 6 Sep 2012 07:21:35 +0000 (09:21 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 6 Sep 2012 07:21:35 +0000 (09:21 +0200)
SL/Controller/Base.pm
SL/Form.pm
locale/de/all
templates/webpages/generic/exception.html [new file with mode: 0644]

index ac2f32d..6d879e8 100644 (file)
@@ -245,6 +245,7 @@ sub _template_obj {
                     INCLUDE_PATH => '.:templates/webpages',
                     COMPILE_EXT  => '.tcc',
                     COMPILE_DIR  => $::lx_office_conf{paths}->{userspath} . '/templates-cache',
+                    ERROR        => 'templates/webpages/generic/exception.html',
                   }) || croak;
 
   return $self->{__basepriv_template_obj};
index 547611d..55ee46d 100644 (file)
@@ -695,6 +695,8 @@ sub init_template {
 
   return $self->template if $self->template;
 
+  # Force scripts/locales.pl to pick up the exception handling template.
+  # parse_html_template('generic/exception')
   return $self->template(Template->new({
      'INTERPOLATE'  => 0,
      'EVAL_PERL'    => 0,
@@ -704,6 +706,7 @@ sub init_template {
      'INCLUDE_PATH' => '.:templates/webpages',
      'COMPILE_EXT'  => '.tcc',
      'COMPILE_DIR'  => $::lx_office_conf{paths}->{userspath} . '/templates-cache',
+     'ERROR'        => 'templates/webpages/generic/exception.html',
   })) || die;
 }
 
index b4b6628..0314c49 100644 (file)
@@ -178,6 +178,7 @@ $self->{texts} = {
   'Amount has to be greater then zero! Wrong row number: ' => 'Leere Eingabe oder Werte kleiner, gleich null eingegeben. Fehler in Reihe Nummer: ',
   'Amount payable'              => 'Noch zu bezahlender Betrag',
   'Amount payable less discount' => 'Noch zu bezahlender Betrag abzüglich Skonto',
+  'An exception occurred during execution.' => 'Während der Ausführung trat eine Ausnahme auf.',
   'An invalid character was used (invalid characters: #1).' => 'Ein ungültiges Zeichen wurde benutzt (ungültige Zeichen: #1).',
   'An invalid character was used (valid characters: #1).' => 'Ein ungültiges Zeichen wurde benutzt (gültige Zeichen: #1).',
   'An upper-case character is required.' => 'Ein Großbuchstabe ist vorgeschrieben.',
@@ -1080,7 +1081,6 @@ $self->{texts} = {
   'Last Transaction'            => 'Letzte Buchung',
   'Last Vendor Number'          => 'Letzte Lieferantennummer',
   'Last command output'         => 'Ausgabe des letzten Befehls',
-  'Last run at'                 => 'Zeitpunkt letzter Ausführung',
   'Lastcost (with X being a number)' => 'Einkaufspreis (X ist eine fortlaufende Zahl)',
   'Lead'                        => 'Kundenquelle',
   'Leave host and port field empty unless you want to make a remote connection.' => 'F&uuml;r lokale Verbindungen "Rechner" und "Port" freilassen.',
@@ -1169,7 +1169,6 @@ $self->{texts} = {
   'Missing amount'              => 'Fehlbetrag',
   'Missing parameter #1 in call to sub #2.' => 'Fehlernder Parameter \'#1\' in Funktionsaufruf \'#2\'.',
   'Missing parameter (at least one of #1) in call to sub #2.' => 'Fehlernder Parameter (mindestens einer aus \'#1\') in Funktionsaufruf \'#2\'.',
-  'Missing qty'                 => 'Fehlende Stückzahl',
   'Missing taxkeys in invoices with taxes.' => 'Fehlende Steuerschl&uuml;ssel in Rechnungen mit Steuern',
   'Missing user id!'            => 'Benutzer ID fehlt!',
   'Mitarbeiter'                 => 'Mitarbeiter',
@@ -1213,7 +1212,6 @@ $self->{texts} = {
   'New vendor'                  => 'Neuer Lieferant',
   'New window/tab'              => 'Neues Fenster/Tab',
   'Next Dunning Level'          => 'Nächste Mahnstufe',
-  'Next run at'                 => 'Zeitpunkt nächster Ausführung',
   'No'                          => 'Nein',
   'No %s was found matching the search parameters.' => 'Es wurde kein %s gefunden, auf den die Suchparameter zutreffen.',
   'No Company Address given'    => 'Keine Firmenadresse hinterlegt!',
diff --git a/templates/webpages/generic/exception.html b/templates/webpages/generic/exception.html
new file mode 100644 (file)
index 0000000..7c6deb9
--- /dev/null
@@ -0,0 +1,24 @@
+[%- USE LxERP %][% USE HTML %]<body>
+
+ <h1 class="message_error">[%- LxERP.t8('Error!') %]</h1>
+
+ <p>
+  [%- LxERP.t8('An exception occurred during execution.') %]
+ </p>
+
+ <div>
+  <table>
+   <tr>
+    <td valign="top">[%- LxERP.t8('Type') %]:</td>
+    <td valign="top">[%- HTML.escape(error.type) %]</td>
+   </tr>
+
+   <tr>
+    <td valign="top">[%- LxERP.t8('Information') %]:</td>
+    <td valign="top"><pre>[%- HTML.escape(error.info) %]</pre></td>
+   </tr>
+  </table>
+ </div>
+
+</body>
+</html>