From 301072a86cacd2620a08cf07f2cef55dffac3c2f Mon Sep 17 00:00:00 2001 From: redmatrix Date: Fri, 20 Nov 2015 00:15:48 -0800 Subject: issue #85, community tags and file tags lost during edits. This required splitting off communitytags as a separate tag type and is not backward compatible. Community tags on older posts or those federated from redmatrix clones will not be preserved during edits. --- mod/item.php | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'mod/item.php') diff --git a/mod/item.php b/mod/item.php index 1e39ca9c9..34484eff7 100644 --- a/mod/item.php +++ b/mod/item.php @@ -651,6 +651,29 @@ function item_post(&$a) { } } + if($orig_post) { + // preserve original tags + $t = q("select * from term where oid = %d and otype = %d and uid = %d and type in ( %d, %d, %d )", + intval($orig_post['id']), + intval(TERM_OBJ_POST), + intval($profile_uid), + intval(TERM_UNKNOWN), + intval(TERM_FILE), + intval(TERM_COMMUNITYTAG) + ); + if($t) { + foreach($t as $t1) { + $post_tags[] = array( + 'uid' => $profile_uid, + 'type' => $t1['type'], + 'otype' => TERM_OBJ_POST, + 'term' => $t1['term'], + 'url' => $t1['url'], + ); + } + } + } + $item_unseen = ((local_channel() != $profile_uid) ? 1 : 0); $item_wall = (($post_type === 'wall' || $post_type === 'wall-comment') ? 1 : 0); -- cgit v1.2.3