summaryrefslogtreecommitdiff
path: root/app/Http/RequestHandlers/ImportGedcomAction.php
diff options
context:
space:
mode:
authorGreg Roach <greg@subaqua.co.uk>2021-11-06 09:23:00 +0000
committerGreg Roach <greg@subaqua.co.uk>2021-11-06 11:51:29 +0000
commitb5c53c7f63f0a0380aab20692cc9c5a95ac663e1 (patch)
tree1c4744decb9e23ae7107ba47fc9f72624a1bdcb4 /app/Http/RequestHandlers/ImportGedcomAction.php
parentd5e02c3af059cb8388b4ccf503317f530ca159ab (diff)
downloadwebtrees-b5c53c7f63f0a0380aab20692cc9c5a95ac663e1.tar.gz
webtrees-b5c53c7f63f0a0380aab20692cc9c5a95ac663e1.tar.bz2
webtrees-b5c53c7f63f0a0380aab20692cc9c5a95ac663e1.zip
Use exception for upload file errors
Diffstat (limited to 'app/Http/RequestHandlers/ImportGedcomAction.php')
-rw-r--r--app/Http/RequestHandlers/ImportGedcomAction.php14
1 files changed, 5 insertions, 9 deletions
diff --git a/app/Http/RequestHandlers/ImportGedcomAction.php b/app/Http/RequestHandlers/ImportGedcomAction.php
index 44603435bf..4424dd8ee9 100644
--- a/app/Http/RequestHandlers/ImportGedcomAction.php
+++ b/app/Http/RequestHandlers/ImportGedcomAction.php
@@ -19,8 +19,8 @@ declare(strict_types=1);
namespace Fisharebest\Webtrees\Http\RequestHandlers;
+use Fisharebest\Webtrees\Exceptions\FileUploadException;
use Fisharebest\Webtrees\FlashMessages;
-use Fisharebest\Webtrees\Functions\Functions;
use Fisharebest\Webtrees\I18N;
use Fisharebest\Webtrees\Registry;
use Fisharebest\Webtrees\Services\TreeService;
@@ -83,15 +83,11 @@ class ImportGedcomAction implements RequestHandlerInterface
if ($source === 'client') {
$upload = $request->getUploadedFiles()['tree_name'] ?? null;
- if ($upload instanceof UploadedFile) {
- if ($upload->getError() === UPLOAD_ERR_OK) {
- $this->tree_service->importGedcomFile($tree, $upload->getStream(), basename($upload->getClientFilename()));
- } else {
- FlashMessages::addMessage(Functions::fileUploadErrorText($upload->getError()), 'danger');
- }
- } else {
- FlashMessages::addMessage(I18N::translate('No GEDCOM file was received.'), 'danger');
+ if ($upload === null || $upload->getError() !== UPLOAD_ERR_OK) {
+ throw new FileUploadException($upload);
}
+
+ $this->tree_service->importGedcomFile($tree, $upload->getStream(), basename($upload->getClientFilename()));
}
if ($source === 'server') {