]> wagnertech.de Git - mfinanz.git/blobdiff - SL/Form.pm
API-Anpassung für $form->show_generic_error(): Man kann einen JavaScript-"Zurück...
[mfinanz.git] / SL / Form.pm
index 4c630f119503a8649b79285d8c1ced6fe2a2a065..db73725390fc78e5db42fb7aa667d7073986774b 100644 (file)
@@ -772,23 +772,26 @@ sub parse_html_template {
 }
 
 sub show_generic_error {
 }
 
 sub show_generic_error {
-  my ($self, $error, $title, $action) = @_;
+  my ($self, $error, %params) = @_;
 
   my $add_params = {
 
   my $add_params = {
-    'title_error' => $title,
+    'title_error' => $params{title},
     'label_error' => $error,
   };
 
     'label_error' => $error,
   };
 
-  my @vars;
-  if ($action) {
-    map({ delete($self->{$_}); } qw(action));
-    map({ push(@vars, { "name" => $_, "value" => $self->{$_} })
-            if (!ref($self->{$_})); }
-        keys(%{$self}));
-    $add_params->{"SHOW_BUTTON"} = 1;
-    $add_params->{"BUTTON_LABEL"} = $action;
+  if ($params{action}) {
+    my @vars;
+
+    map { delete($self->{$_}); } qw(action);
+    map { push @vars, { "name" => $_, "value" => $self->{$_} } if (!ref($self->{$_})); } keys %{ $self };
+
+    $add_params->{SHOW_BUTTON}  = 1;
+    $add_params->{BUTTON_LABEL} = $params{label} || $params{action};
+    $add_params->{VARIABLES}    = \@vars;
+
+  } elsif ($params{back_button}) {
+    $add_params->{SHOW_BACK_BUTTON} = 1;
   }
   }
-  $add_params->{"VARIABLES"} = \@vars;
 
   $self->{title} = $title if ($title);
 
 
   $self->{title} = $title if ($title);