X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FFile.pm;h=5efb403bd52619a24b0b36c9a5b0a7bbc9ef6cc3;hb=397e706b4c72c9fe818b8c549b7ae59fe7671d95;hp=28604249e37123f8b8bccf9e599eba70e0642d89;hpb=80b313fae445a6aa45a26561c0fd4ab364cb99ce;p=kivitendo-erp.git diff --git a/SL/File.pm b/SL/File.pm index 28604249e..5efb403bd 100644 --- a/SL/File.pm +++ b/SL/File.pm @@ -122,7 +122,7 @@ sub delete_all { sub delete { my ($self, %params) = @_; - die "no id or dbfile" unless $params{id} || $params{dbfile}; + die "no id or dbfile in delete" unless $params{id} || $params{dbfile}; my $rc = 0; eval { $rc = SL::DB->client->with_transaction(\&_delete, $self, %params); @@ -307,7 +307,7 @@ sub sync_from_backend { return unless $params{file_type}; my $file = SL::DB::File->new; $file->file_type($params{file_type}); - my $backend = $self->_get_backend(dbfile => $file->backend); + my $backend = $self->_get_backend($self->_get_backend_by_file_type($file)); return unless $backend; $backend->sync_from_backend(%params); } @@ -319,13 +319,18 @@ sub _get_backend { my ($self, $backend_name) = @_; my $class = 'SL::File::Backend::' . $backend_name; my $obj = undef; + die $::locale->text('no backend enabled') if $backend_name eq 'None'; eval { eval "require $class"; $obj = $class->new; - die 'backend not enabled' unless $obj->enabled; + die $::locale->text('backend "#1" not enabled',$backend_name) unless $obj->enabled; 1; } or do { - die 'backend class not found'; + if ( $obj ) { + die $@; + } else { + die $::locale->text('backend "#1" not found',$backend_name); + } }; return $obj; }