Merge pull request #2233 from fabrixxm/issue_api

API: fix item activities count
This commit is contained in:
Michael Vogel 2016-01-03 00:38:57 +01:00
commit 01e20cded3
2 changed files with 23 additions and 18 deletions

View File

@ -2277,21 +2277,26 @@
*/
function api_format_items_likes(&$item) {
$activities = array(
ACTIVITY_LIKE => 'like',
ACTIVITY_DISLIKE => 'dislike',
ACTIVITY_ATTEND => 'attendyes',
ACTIVITY_ATTENDNO => 'attendno',
ACTIVITY_ATTENDMAYBE => 'attendmaybe'
'like' => array(),
'dislike' => array(),
'attendyes' => array(),
'attendno' => array(),
'attendmaybe' => array()
);
$r = q("SELECT verb, count(verb) as n FROM item WHERE parent=%d GROUP BY verb",
intval($item['id']));
$items = q('SELECT * FROM item
WHERE uid=%d AND `thr-parent`="%s" AND visible AND NOT deleted',
intval($item['uid']),
dbesc($item['uri']));
foreach ($items as $i){
builtin_activity_puller($i, $activities);
}
$res = array();
foreach($r as $row) {
if (x($activities, $row['verb'])) {
$res[$activities[$row['verb']]] = $row['n'];
}
$uri = $item['uri'];
foreach($activities as $k => $v) {
$res[$k] = (x($v,$uri)?$v[$uri]:0);
}
return $res;
}
@ -3395,8 +3400,9 @@
function api_friendica_activity(&$a, $type) {
if (api_user()===false) throw new ForbiddenException();
#$verb = (x($_REQUEST, 'verb') ? strtolower($_REQUEST['verb']) : '');
$verb = strtolower($a->argv[3]);
$verb = preg_replace("|\..*$|", "", $verb);
$id = (x($_REQUEST, 'id') ? $_REQUEST['id'] : 0);
$res = do_like($id, $verb);
@ -3406,7 +3412,7 @@
$ok = "true";
else
$ok = "ok";
return api_apply_template('test', $type, array("$ok" => $ok));
return api_apply_template('test', $type, array('ok' => $ok));
} else {
throw new BadRequestException('Error adding activity');
}

View File

@ -946,7 +946,6 @@ function item_photo_menu($item){
* @brief Checks item to see if it is one of the builtin activities (like/dislike, event attendance, consensus items, etc.)
* Increments the count of each matching activity and adds a link to the author as needed.
*
* @param array $a (not used)
* @param array $item
* @param array &$conv_responses (already created with builtin activity structure)
* @return void