Rechnungsmaske: "Drucken und Buchen" und Browser-Zurück entschärfen
[kivitendo-erp.git] / SL / DB / Helper / Presenter.pm
index 240d18f..1dae8cc 100644 (file)
@@ -17,7 +17,19 @@ sub AUTOLOAD {
 
   return if $method eq 'DESTROY';
 
-  return $self->[0]->$method($self->[1], @args);
+  eval "require $self->[0]";
+
+  splice @args, -1, 1, %{ $args[-1] } if @args && (ref($args[-1]) eq 'HASH');
+
+  if (my $sub = $self->[0]->can($method)) {
+    return $sub->($self->[1], @args);
+  }
+}
+
+sub can {
+  my ($self, $method) = @_;
+  eval "require $self->[0]";
+  $self->[0]->can($method);
 }
 
 1;