diff options
| author | Greg Roach <greg@subaqua.co.uk> | 2022-03-09 12:37:11 +0000 |
|---|---|---|
| committer | Greg Roach <greg@subaqua.co.uk> | 2022-03-09 12:37:11 +0000 |
| commit | 4991f2057a6647447a648c5d6743dab00378e98e (patch) | |
| tree | 7cfc1009de6737eee183e04fd540e2358f59193d /app/Http/RequestHandlers/DeleteRecord.php | |
| parent | 2c7d07c0a3ac029511242a2dacb6c2b86b0e145b (diff) | |
| download | webtrees-4991f2057a6647447a648c5d6743dab00378e98e.tar.gz webtrees-4991f2057a6647447a648c5d6743dab00378e98e.tar.bz2 webtrees-4991f2057a6647447a648c5d6743dab00378e98e.zip | |
Fix: #4250 - refactor linked-records and use consistently
Diffstat (limited to 'app/Http/RequestHandlers/DeleteRecord.php')
| -rw-r--r-- | app/Http/RequestHandlers/DeleteRecord.php | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/app/Http/RequestHandlers/DeleteRecord.php b/app/Http/RequestHandlers/DeleteRecord.php index 1eda700238..2fc13e983d 100644 --- a/app/Http/RequestHandlers/DeleteRecord.php +++ b/app/Http/RequestHandlers/DeleteRecord.php @@ -26,6 +26,7 @@ use Fisharebest\Webtrees\Gedcom; use Fisharebest\Webtrees\I18N; use Fisharebest\Webtrees\Individual; use Fisharebest\Webtrees\Registry; +use Fisharebest\Webtrees\Services\LinkedRecordService; use Fisharebest\Webtrees\Validator; use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; @@ -38,10 +39,20 @@ use function response; use function sprintf; /** - * Controller for edit forms and responses. + * Delete a record. */ class DeleteRecord implements RequestHandlerInterface { + private LinkedRecordService $linked_record_service; + + /** + * @param LinkedRecordService $linked_record_service + */ + public function __construct(LinkedRecordService $linked_record_service) + { + $this->linked_record_service = $linked_record_service; + } + /** * Delete a record. * @@ -58,7 +69,7 @@ class DeleteRecord implements RequestHandlerInterface if (Auth::isEditor($record->tree()) && $record->canShow() && $record->canEdit()) { // Delete links to this record - foreach ($record->linkingRecords() as $linker) { + foreach ($this->linked_record_service->allLinkedRecords($record) as $linker) { $old_gedcom = $linker->gedcom(); $new_gedcom = $this->removeLinks($old_gedcom, $record->xref()); if ($old_gedcom !== $new_gedcom) { |
