summaryrefslogtreecommitdiff
path: root/app/Http/RequestHandlers/ExportGedcomClient.php
diff options
context:
space:
mode:
authorGreg Roach <greg@subaqua.co.uk>2022-02-22 11:28:26 +0000
committerGreg Roach <greg@subaqua.co.uk>2022-02-23 10:22:28 +0000
commitb55cbc6b43247e8b2ad14af6f6d24dc6747195ff (patch)
tree7c48ed3c99e4c7887dee5e923035c862fdff92cd /app/Http/RequestHandlers/ExportGedcomClient.php
parent709c7e1a4da00208ea2ab538eb0a1f2d46f63629 (diff)
downloadwebtrees-b55cbc6b43247e8b2ad14af6f6d24dc6747195ff.tar.gz
webtrees-b55cbc6b43247e8b2ad14af6f6d24dc6747195ff.tar.bz2
webtrees-b55cbc6b43247e8b2ad14af6f6d24dc6747195ff.zip
Update and use Validation class
Diffstat (limited to 'app/Http/RequestHandlers/ExportGedcomClient.php')
-rw-r--r--app/Http/RequestHandlers/ExportGedcomClient.php15
1 files changed, 6 insertions, 9 deletions
diff --git a/app/Http/RequestHandlers/ExportGedcomClient.php b/app/Http/RequestHandlers/ExportGedcomClient.php
index 9d42cbcd37..c284cd8517 100644
--- a/app/Http/RequestHandlers/ExportGedcomClient.php
+++ b/app/Http/RequestHandlers/ExportGedcomClient.php
@@ -29,7 +29,6 @@ use Fisharebest\Webtrees\GedcomRecord;
use Fisharebest\Webtrees\Http\ViewResponseTrait;
use Fisharebest\Webtrees\Registry;
use Fisharebest\Webtrees\Services\GedcomExportService;
-use Fisharebest\Webtrees\Tree;
use Fisharebest\Webtrees\Validator;
use Illuminate\Database\Capsule\Manager as DB;
use League\Flysystem\Filesystem;
@@ -43,7 +42,6 @@ use Psr\Http\Message\StreamFactoryInterface;
use Psr\Http\Server\RequestHandlerInterface;
use function addcslashes;
-use function assert;
use function fclose;
use function pathinfo;
use function strtolower;
@@ -89,16 +87,15 @@ class ExportGedcomClient implements RequestHandlerInterface
*/
public function handle(ServerRequestInterface $request): ResponseInterface
{
- $tree = $request->getAttribute('tree');
- assert($tree instanceof Tree);
+ $tree = Validator::attributes($request)->tree();
$data_filesystem = Registry::filesystem()->data();
- $format = Validator::parsedBody($request)->isInArray(['gedcom', 'zip'])->requiredString('format');
- $privacy = Validator::parsedBody($request)->isInArray(['none', 'gedadmin', 'user', 'visitor'])->requiredString('privacy');
- $encoding = Validator::parsedBody($request)->isInArray([UTF8::NAME, UTF16BE::NAME, ANSEL::NAME, ASCII::NAME, Windows1252::NAME])->requiredString('encoding');
- $line_endings = Validator::parsedBody($request)->isInArray(['CRLF', 'LF'])->requiredString('line_endings');
- $media_path = Validator::parsedBody($request)->string('media_path') ?? '';
+ $format = Validator::parsedBody($request)->isInArray(['gedcom', 'zip'])->string('format');
+ $privacy = Validator::parsedBody($request)->isInArray(['none', 'gedadmin', 'user', 'visitor'])->string('privacy');
+ $encoding = Validator::parsedBody($request)->isInArray([UTF8::NAME, UTF16BE::NAME, ANSEL::NAME, ASCII::NAME, Windows1252::NAME])->string('encoding');
+ $line_endings = Validator::parsedBody($request)->isInArray(['CRLF', 'LF'])->string('line_endings');
+ $media_path = Validator::parsedBody($request)->optionalString('media_path') ?? '';
$access_levels = [
'gedadmin' => Auth::PRIV_NONE,