diff --git a/include/contact_widgets.php b/include/contact_widgets.php index 4dab6a53e..42d3afdee 100644 --- a/include/contact_widgets.php +++ b/include/contact_widgets.php @@ -175,12 +175,16 @@ function common_friends_visitor_widget($profile_uid) { return; if($cid) - $r = common_friends($profile_uid,$cid,5,true); + $r = common_friends($profile_uid,$cid,0,5,true); else - $r = common_friends_zcid($profile_uid,$zcid,5,true); + $r = common_friends_zcid($profile_uid,$zcid,0,5,true); return replace_macros(get_markup_template('remote_friends_common.tpl'), array( - '$desc' => sprintf( tt("%d friend in common", "%d friends in common", $t), $t), + '$desc' => sprintf( tt("%d contact in common", "%d contacts in common", $t), $t), + '$base' => $a->get_baseurl(), + '$uid' => $profile_uid, + '$cid' => $cid, + '$more' => t('show more'), '$items' => $r )); diff --git a/include/socgraph.php b/include/socgraph.php index b7c4ccc71..592779089 100644 --- a/include/socgraph.php +++ b/include/socgraph.php @@ -184,7 +184,7 @@ function count_common_friends($uid,$cid) { } -function common_friends($uid,$cid,$limit=9999,$shuffle = false) { +function common_friends($uid,$cid,$start = 0,$limit=9999,$shuffle = false) { if($shuffle) $sql_extra = " order by rand() "; @@ -195,11 +195,12 @@ function common_friends($uid,$cid,$limit=9999,$shuffle = false) { FROM `glink` left join `gcontact` on `glink`.`gcid` = `gcontact`.`id` where `glink`.`cid` = %d and `glink`.`uid` = %d and `gcontact`.`nurl` in (select nurl from contact where uid = %d and self = 0 and blocked = 0 and hidden = 0 and id != %d ) - $sql_extra limit 0, %d", + $sql_extra limit %d, %d", intval($cid), intval($uid), intval($uid), intval($cid), + intval($start), intval($limit) ); @@ -224,7 +225,7 @@ function count_common_friends_zcid($uid,$zcid) { } -function common_friends_zcid($uid,$zcid,$limit = 9999,$shuffle) { +function common_friends_zcid($uid,$zcid,$start = 0, $limit = 9999,$shuffle) { if($shuffle) $sql_extra = " order by rand() "; @@ -235,9 +236,10 @@ function common_friends_zcid($uid,$zcid,$limit = 9999,$shuffle) { FROM `glink` left join `gcontact` on `glink`.`gcid` = `gcontact`.`id` where `glink`.`zcid` = %d and `gcontact`.`nurl` in (select nurl from contact where uid = %d and self = 0 and blocked = 0 and hidden = 0 ) - $sql_extra limit 0, %d", + $sql_extra limit %d, %d", intval($zcid), intval($uid), + intval($start), intval($limit) ); diff --git a/mod/common.php b/mod/common.php index 852388c14..617b5b670 100644 --- a/mod/common.php +++ b/mod/common.php @@ -5,25 +5,33 @@ require_once('include/socgraph.php'); function common_content(&$a) { $o = ''; - if(! local_user()) { - notice( t('Permission denied.') . EOL); + + $cmd = $a->argv[1]; + $uid = intval($a->argv[2]); + $cid = intval($a->argv[3]); + $zcid = 0; + + if($cmd !== 'loc' && $cmd != 'rem') return; + if(! $uid) + return; + + if($cmd === 'loc' && $cid) { + $c = q("select name, url, photo from contact where id = %d and uid = %d limit 1", + intval($cid), + intval($uid) + ); } - - if($a->argc > 1) - $cid = intval($a->argv[1]); - if(! $cid) - return; - - $c = q("select name, url, photo from contact where id = %d and uid = %d limit 1", - intval($cid), - intval(local_user()) - ); + else { + $c = q("select name, url, photo from contact where self = 1 and uid = %d limit 1", + intval($uid) + ); + } $a->page['aside'] .= '
'; @@ -33,13 +41,52 @@ function common_content(&$a) { $o .= '