X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FHelper%2FManager.pm;h=b4d66da42953ce0ca86181ae99e2ec47eb6fe823;hb=bc524b0df0ada3c9e7b4ad08cd62ade6a498fb11;hp=8ebc362e26bf950d047a0a4471479106784cb26f;hpb=d18df453f55190d4807af324725ea82a8835d7fc;p=kivitendo-erp.git diff --git a/SL/DB/Helper/Manager.pm b/SL/DB/Helper/Manager.pm index 8ebc362e2..b4d66da42 100644 --- a/SL/DB/Helper/Manager.pm +++ b/SL/DB/Helper/Manager.pm @@ -18,6 +18,14 @@ sub find_by { return $class->get_all(query => [ @_ ], limit => 1)->[0]; } +sub find_by_or_create { + my $class = shift; + + my $found; + eval { $found = $class->find_by(@_); }; + return defined $found ? $found : $class->object_class->new; +} + sub get_first { shift->get_all( @_,