Diaspora will introduce "like on comment" so we doing it as well
This commit is contained in:
parent
1600d8e2a6
commit
6e196a6afd
|
@ -1182,7 +1182,7 @@ class Diaspora {
|
||||||
* @return array the item record
|
* @return array the item record
|
||||||
*/
|
*/
|
||||||
private static function parent_item($uid, $guid, $author, $contact) {
|
private static function parent_item($uid, $guid, $author, $contact) {
|
||||||
$r = q("SELECT `id`, `body`, `wall`, `uri`, `private`, `origin`,
|
$r = q("SELECT `id`, `parent`, `body`, `wall`, `uri`, `private`, `origin`,
|
||||||
`author-name`, `author-link`, `author-avatar`,
|
`author-name`, `author-link`, `author-avatar`,
|
||||||
`owner-name`, `owner-link`, `owner-avatar`
|
`owner-name`, `owner-link`, `owner-avatar`
|
||||||
FROM `item` WHERE `uid` = %d AND `guid` = '%s' LIMIT 1",
|
FROM `item` WHERE `uid` = %d AND `guid` = '%s' LIMIT 1",
|
||||||
|
@ -1776,8 +1776,16 @@ class Diaspora {
|
||||||
logger("Stored like ".$datarray["guid"]." with message id ".$message_id, LOGGER_DEBUG);
|
logger("Stored like ".$datarray["guid"]." with message id ".$message_id, LOGGER_DEBUG);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// like on comments have the comment as parent. So we need to fetch the toplevel parent
|
||||||
|
if ($parent_item["id"] != $parent_item["parent"]) {
|
||||||
|
$toplevel = dba::select('item', array('origin'), array('id' => $parent_item["parent"]), array('limit' => 1));
|
||||||
|
$origin = $toplevel["origin"];
|
||||||
|
} else {
|
||||||
|
$origin = $parent_item["origin"];
|
||||||
|
}
|
||||||
|
|
||||||
// If we are the origin of the parent we store the original data and notify our followers
|
// If we are the origin of the parent we store the original data and notify our followers
|
||||||
if ($message_id && $parent_item["origin"]) {
|
if ($message_id && $origin) {
|
||||||
|
|
||||||
// Formerly we stored the signed text, the signature and the author in different fields.
|
// Formerly we stored the signed text, the signature and the author in different fields.
|
||||||
// We now store the raw data so that we are more flexible.
|
// We now store the raw data so that we are more flexible.
|
||||||
|
|
|
@ -68,6 +68,11 @@ class Item extends BaseObject {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// You can always comment on Diaspora items
|
||||||
|
if (($item['network'] == NETWORK_DIASPORA) && (local_user() == $item['uid'])) {
|
||||||
|
$item['writable'] = true;
|
||||||
|
}
|
||||||
|
|
||||||
$item['pagedrop'] = $data['pagedrop'];
|
$item['pagedrop'] = $data['pagedrop'];
|
||||||
$child = new Item($item);
|
$child = new Item($item);
|
||||||
$this->add_child($child);
|
$this->add_child($child);
|
||||||
|
@ -319,18 +324,6 @@ class Item extends BaseObject {
|
||||||
unset($buttons["like"]);
|
unset($buttons["like"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Diaspora isn't able to do likes on comments - but Hubzilla does
|
|
||||||
/// @todo When Diaspora will pass this information we will remove these lines
|
|
||||||
if (($item["item_network"] == NETWORK_DIASPORA) && ($indent == 'comment') &&
|
|
||||||
!Diaspora::is_redmatrix($item["owner-link"]) && isset($buttons["like"])) {
|
|
||||||
unset($buttons["like"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Facebook can like comments - but it isn't programmed in the connector yet.
|
|
||||||
if (($item["item_network"] == NETWORK_FACEBOOK) && ($indent == 'comment') && isset($buttons["like"])) {
|
|
||||||
unset($buttons["like"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
$tmp_item = array(
|
$tmp_item = array(
|
||||||
'template' => $this->get_template(),
|
'template' => $this->get_template(),
|
||||||
'type' => implode("",array_slice(explode("/",$item['verb']),-1)),
|
'type' => implode("",array_slice(explode("/",$item['verb']),-1)),
|
||||||
|
|
Loading…
Reference in a new issue