diff options
-rw-r--r-- | lib/Db/Item.php | 25 | ||||
-rw-r--r-- | lib/Service/ShareService.php | 1 |
2 files changed, 26 insertions, 0 deletions
diff --git a/lib/Db/Item.php b/lib/Db/Item.php index 86508ea72..730e387d1 100644 --- a/lib/Db/Item.php +++ b/lib/Db/Item.php @@ -96,6 +96,31 @@ class Item extends Entity implements IAPI, \JsonSerializable $this->addType('sharedBy', 'string'); } + public function __clone() + { + $this->resetUpdatedFields(); + $this->markFieldUpdated('contentHash'); + $this->markFieldUpdated('guidHash'); + $this->markFieldUpdated('guid'); + $this->markFieldUpdated('url'); + $this->markFieldUpdated('title'); + $this->markFieldUpdated('author'); + $this->markFieldUpdated('pubDate'); + $this->markFieldUpdated('body'); + $this->markFieldUpdated('enclosureMime'); + $this->markFieldUpdated('enclosureLink'); + $this->markFieldUpdated('mediaThumbnail'); + $this->markFieldUpdated('mediaDescription'); + $this->markFieldUpdated('feedId'); + $this->markFieldUpdated('lastModified'); + $this->markFieldUpdated('searchIndex'); + $this->markFieldUpdated('rtl'); + $this->markFieldUpdated('fingerprint'); + $this->markFieldUpdated('unread'); + $this->markFieldUpdated('starred'); + $this->markFieldUpdated('sharedBy'); + } + /** * @return int */ diff --git a/lib/Service/ShareService.php b/lib/Service/ShareService.php index 3127488a0..e88675a21 100644 --- a/lib/Service/ShareService.php +++ b/lib/Service/ShareService.php @@ -85,6 +85,7 @@ class ShareService $sharedItem = clone $item; // initialize fields + $sharedItem->setId(null); $sharedItem->setUnread(true); $sharedItem->setStarred(false); $sharedItem->setSharedBy($userId); |