From 8ca2452dd05f614d55d2fd3ce188d9d04f44d285 Mon Sep 17 00:00:00 2001 From: winter Date: Fri, 20 Dec 2024 17:57:36 +0000 Subject: implement deletion/tombstones? --- Digitigrade/Model/FetchableModel.php | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'Digitigrade/Model/FetchableModel.php') diff --git a/Digitigrade/Model/FetchableModel.php b/Digitigrade/Model/FetchableModel.php index 5e4d1e8..e14cc2e 100644 --- a/Digitigrade/Model/FetchableModel.php +++ b/Digitigrade/Model/FetchableModel.php @@ -62,6 +62,16 @@ abstract class FetchableModel extends Model implements RemoteFetchable { if ($data === null) return null; + if (($data->type ?? null) == 'tombstone') { + // handle deletes + $obj = static::findWhere('uri = ?', [$data->self]); + if ($obj == null) + return null; + $obj->deleted = true; + $obj->save(); + return null; + } + $obj = static::createFromJson($data, $autoSave, $uri); $obj->finaliseAfterFetch($uri); -- cgit v1.3