Merge pull request #2233 from fabrixxm/issue_api
API: fix item activities count
This commit is contained in:
commit
01e20cded3
2 changed files with 23 additions and 18 deletions
|
@ -1336,7 +1336,7 @@
|
||||||
intval($since_id),
|
intval($since_id),
|
||||||
intval($start), intval($count)
|
intval($start), intval($count)
|
||||||
);
|
);
|
||||||
|
|
||||||
$ret = api_format_items($r,$user_info);
|
$ret = api_format_items($r,$user_info);
|
||||||
|
|
||||||
// Set all posts from the query above to seen
|
// Set all posts from the query above to seen
|
||||||
|
@ -2277,21 +2277,26 @@
|
||||||
*/
|
*/
|
||||||
function api_format_items_likes(&$item) {
|
function api_format_items_likes(&$item) {
|
||||||
$activities = array(
|
$activities = array(
|
||||||
ACTIVITY_LIKE => 'like',
|
'like' => array(),
|
||||||
ACTIVITY_DISLIKE => 'dislike',
|
'dislike' => array(),
|
||||||
ACTIVITY_ATTEND => 'attendyes',
|
'attendyes' => array(),
|
||||||
ACTIVITY_ATTENDNO => 'attendno',
|
'attendno' => array(),
|
||||||
ACTIVITY_ATTENDMAYBE => 'attendmaybe'
|
'attendmaybe' => array()
|
||||||
);
|
);
|
||||||
$r = q("SELECT verb, count(verb) as n FROM item WHERE parent=%d GROUP BY verb",
|
$items = q('SELECT * FROM item
|
||||||
intval($item['id']));
|
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();
|
$res = array();
|
||||||
foreach($r as $row) {
|
$uri = $item['uri'];
|
||||||
if (x($activities, $row['verb'])) {
|
foreach($activities as $k => $v) {
|
||||||
$res[$activities[$row['verb']]] = $row['n'];
|
$res[$k] = (x($v,$uri)?$v[$uri]:0);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $res;
|
return $res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3395,8 +3400,9 @@
|
||||||
|
|
||||||
function api_friendica_activity(&$a, $type) {
|
function api_friendica_activity(&$a, $type) {
|
||||||
if (api_user()===false) throw new ForbiddenException();
|
if (api_user()===false) throw new ForbiddenException();
|
||||||
#$verb = (x($_REQUEST, 'verb') ? strtolower($_REQUEST['verb']) : '');
|
|
||||||
$verb = strtolower($a->argv[3]);
|
$verb = strtolower($a->argv[3]);
|
||||||
|
$verb = preg_replace("|\..*$|", "", $verb);
|
||||||
|
|
||||||
$id = (x($_REQUEST, 'id') ? $_REQUEST['id'] : 0);
|
$id = (x($_REQUEST, 'id') ? $_REQUEST['id'] : 0);
|
||||||
|
|
||||||
$res = do_like($id, $verb);
|
$res = do_like($id, $verb);
|
||||||
|
@ -3406,7 +3412,7 @@
|
||||||
$ok = "true";
|
$ok = "true";
|
||||||
else
|
else
|
||||||
$ok = "ok";
|
$ok = "ok";
|
||||||
return api_apply_template('test', $type, array("$ok" => $ok));
|
return api_apply_template('test', $type, array('ok' => $ok));
|
||||||
} else {
|
} else {
|
||||||
throw new BadRequestException('Error adding activity');
|
throw new BadRequestException('Error adding activity');
|
||||||
}
|
}
|
||||||
|
|
|
@ -354,7 +354,7 @@ function count_descendants($item) {
|
||||||
|
|
||||||
function visible_activity($item) {
|
function visible_activity($item) {
|
||||||
|
|
||||||
// likes (etc.) can apply to other things besides posts. Check if they are post children,
|
// likes (etc.) can apply to other things besides posts. Check if they are post children,
|
||||||
// in which case we handle them specially
|
// in which case we handle them specially
|
||||||
|
|
||||||
$hidden_activities = array(ACTIVITY_LIKE, ACTIVITY_DISLIKE, ACTIVITY_ATTEND, ACTIVITY_ATTENDNO, ACTIVITY_ATTENDMAYBE);
|
$hidden_activities = array(ACTIVITY_LIKE, ACTIVITY_DISLIKE, ACTIVITY_ATTEND, ACTIVITY_ATTENDNO, ACTIVITY_ATTENDMAYBE);
|
||||||
|
@ -505,7 +505,7 @@ function conversation(&$a, $items, $mode, $update, $preview = false) {
|
||||||
$hide_comments_tpl = get_markup_template('hide_comments.tpl');
|
$hide_comments_tpl = get_markup_template('hide_comments.tpl');
|
||||||
|
|
||||||
$conv_responses = array(
|
$conv_responses = array(
|
||||||
'like' => array('title' => t('Likes','title')), 'dislike' => array('title' => t('Dislikes','title')),
|
'like' => array('title' => t('Likes','title')), 'dislike' => array('title' => t('Dislikes','title')),
|
||||||
'attendyes' => array('title' => t('Attending','title')), 'attendno' => array('title' => t('Not attending','title')), 'attendmaybe' => array('title' => t('Might attend','title'))
|
'attendyes' => array('title' => t('Attending','title')), 'attendno' => array('title' => t('Not attending','title')), 'attendmaybe' => array('title' => t('Might attend','title'))
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -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.)
|
* @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.
|
* 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 $item
|
||||||
* @param array &$conv_responses (already created with builtin activity structure)
|
* @param array &$conv_responses (already created with builtin activity structure)
|
||||||
* @return void
|
* @return void
|
||||||
|
@ -1382,7 +1381,7 @@ function get_responses($conv_responses,$response_verbs,$ob,$item) {
|
||||||
$ret[$v]['list'] = ((x($conv_responses[$v],$item['uri'])) ? $conv_responses[$v][$item['uri'] . '-l'] : '');
|
$ret[$v]['list'] = ((x($conv_responses[$v],$item['uri'])) ? $conv_responses[$v][$item['uri'] . '-l'] : '');
|
||||||
if(count($ret[$v]['list']) > MAX_LIKERS) {
|
if(count($ret[$v]['list']) > MAX_LIKERS) {
|
||||||
$ret[$v]['list_part'] = array_slice($ret[$v]['list'], 0, MAX_LIKERS);
|
$ret[$v]['list_part'] = array_slice($ret[$v]['list'], 0, MAX_LIKERS);
|
||||||
array_push($ret[$v]['list_part'], '<a href="#" data-toggle="modal" data-target="#' . $v . 'Modal-'
|
array_push($ret[$v]['list_part'], '<a href="#" data-toggle="modal" data-target="#' . $v . 'Modal-'
|
||||||
. (($ob) ? $ob->get_id() : $item['id']) . '"><b>' . t('View all') . '</b></a>');
|
. (($ob) ? $ob->get_id() : $item['id']) . '"><b>' . t('View all') . '</b></a>');
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
Loading…
Reference in a new issue