X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/80b313fae445a6aa45a26561c0fd4ab364cb99ce..c2efdba2dfa10e76937e4bdf5a18e5483d0cddb0:/SL/File.pm 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; }