summaryrefslogtreecommitdiff
path: root/app/Http/RequestHandlers/SubmissionPage.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Http/RequestHandlers/SubmissionPage.php')
-rw-r--r--app/Http/RequestHandlers/SubmissionPage.php69
1 files changed, 17 insertions, 52 deletions
diff --git a/app/Http/RequestHandlers/SubmissionPage.php b/app/Http/RequestHandlers/SubmissionPage.php
index 5e4e3b640f..3d90a651ea 100644
--- a/app/Http/RequestHandlers/SubmissionPage.php
+++ b/app/Http/RequestHandlers/SubmissionPage.php
@@ -21,23 +21,18 @@ namespace Fisharebest\Webtrees\Http\RequestHandlers;
use Fig\Http\Message\StatusCodeInterface;
use Fisharebest\Webtrees\Auth;
-use Fisharebest\Webtrees\Fact;
use Fisharebest\Webtrees\Http\ViewResponseTrait;
use Fisharebest\Webtrees\Registry;
-use Fisharebest\Webtrees\Submission;
use Fisharebest\Webtrees\Tree;
use Illuminate\Support\Collection;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\RequestHandlerInterface;
-use function array_search;
use function assert;
use function is_string;
use function redirect;
-use const PHP_INT_MAX;
-
/**
* Show a submission's page.
*/
@@ -45,20 +40,6 @@ class SubmissionPage implements RequestHandlerInterface
{
use ViewResponseTrait;
- // Show the submission's facts in this order:
- private const FACT_ORDER = [
- 1 => 'SUBN:SUBM',
- 'SUBN:FAMF',
- 'SUBN:TEMP',
- 'SUBN:ANCE',
- 'SUBN:DESC',
- 'SUBN:ORDI',
- 'SUBN:OBJE',
- 'SUBN:RIN',
- 'SUBN:NOTE',
- 'SUBN:CHAN',
- ];
-
/**
* @param ServerRequestInterface $request
*
@@ -72,44 +53,28 @@ class SubmissionPage implements RequestHandlerInterface
$xref = $request->getAttribute('xref');
assert(is_string($xref));
- $submission = Registry::submissionFactory()->make($xref, $tree);
- $submission = Auth::checkSubmissionAccess($submission, false);
+ $record = Registry::submissionFactory()->make($xref, $tree);
+ $record = Auth::checkSubmissionAccess($record, false);
// Redirect to correct xref/slug
- $slug = Registry::slugFactory()->make($submission);
+ $slug = Registry::slugFactory()->make($record);
- if ($submission->xref() !== $xref || $request->getAttribute('slug') !== $slug) {
- return redirect($submission->url(), StatusCodeInterface::STATUS_MOVED_PERMANENTLY);
+ if ($record->xref() !== $xref || $request->getAttribute('slug') !== $slug) {
+ return redirect($record->url(), StatusCodeInterface::STATUS_MOVED_PERMANENTLY);
}
- return $this->viewResponse('gedcom-record-page', [
- 'facts' => $this->facts($submission),
- 'record' => $submission,
- 'families' => new Collection(),
- 'individuals' => new Collection(),
- 'media_objects' => new Collection(),
- 'meta_description' => '',
- 'meta_robots' => 'index,follow',
- 'notes' => new Collection(),
- 'sources' => new Collection(),
- 'title' => $submission->fullName(),
- 'tree' => $tree,
+ return $this->viewResponse('record-page', [
+ 'clipboard_facts' => new Collection(),
+ 'linked_families' => null,
+ 'linked_individuals' => null,
+ 'linked_media_objects' => null,
+ 'linked_notes' => null,
+ 'linked_sources' => null,
+ 'meta_description' => '',
+ 'meta_robots' => 'index,follow',
+ 'record' => $record,
+ 'title' => $record->fullName(),
+ 'tree' => $tree,
]);
}
-
- /**
- * @param Submission $record
- *
- * @return Collection<Fact>
- */
- private function facts(Submission $record): Collection
- {
- return $record->facts()
- ->sort(static function (Fact $x, Fact $y): int {
- $sort_x = array_search($x->tag(), self::FACT_ORDER, true) ?: PHP_INT_MAX;
- $sort_y = array_search($y->tag(), self::FACT_ORDER, true) ?: PHP_INT_MAX;
-
- return $sort_x <=> $sort_y;
- });
- }
}