summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/Db/Item.php25
-rw-r--r--lib/Service/ShareService.php1
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);