diff options
author | Friendika <info@friendika.com> | 2011-11-01 20:29:55 -0700 |
---|---|---|
committer | Friendika <info@friendika.com> | 2011-11-01 20:29:55 -0700 |
commit | 158028a0ac00e388347ac366c88ad07c0fe4bfb9 (patch) | |
tree | d82a293c4419f0415c5318d528c348473e1eda44 | |
parent | 3d9a9614e232a3ff207803be1092b1d42bcadde6 (diff) | |
download | volse-hubzilla-158028a0ac00e388347ac366c88ad07c0fe4bfb9.tar.gz volse-hubzilla-158028a0ac00e388347ac366c88ad07c0fe4bfb9.tar.bz2 volse-hubzilla-158028a0ac00e388347ac366c88ad07c0fe4bfb9.zip |
first cut friend suggestions
-rw-r--r-- | include/socgraph.php | 20 | ||||
-rw-r--r-- | mod/suggest.php | 38 |
2 files changed, 57 insertions, 1 deletions
diff --git a/include/socgraph.php b/include/socgraph.php index c81c7b695..04e9a9a64 100644 --- a/include/socgraph.php +++ b/include/socgraph.php @@ -159,4 +159,22 @@ function common_friends($uid,$cid) { return $r; -}
\ No newline at end of file +} + + + +function suggestion_query($uid, $start = 0, $limit = 40) { + + $r = q("SELECT count(glink.gcid) as `total`, gcontact.* from gcontact + left join glink on glink.gcid = gcontact.id + where uid = %d and not gcontact.nurl in ( select nurl from contact where uid = %d) + group by glink.gcid order by total desc limit %d, %d ", + intval($uid), + intval($uid), + intval($start), + intval($limit) + ); + + return $r; + +} diff --git a/mod/suggest.php b/mod/suggest.php new file mode 100644 index 000000000..f8b898126 --- /dev/null +++ b/mod/suggest.php @@ -0,0 +1,38 @@ +<?php + +require_once('include/socgraph.php'); + +function suggest_content(&$a) { + + $o = ''; + if(! local_user()) { + notice( t('Permission denied.') . EOL); + return; + } + + $o .= '<h2>' . t('Friend Suggestions') . '</h2>'; + + + $r = suggestion_query(local_user()); + + if(! count($r)) { + $o .= t('No suggestions. This works best when you have more than one contact/friend.'); + return $o; + } + + $tpl = get_markup_template('common_friends.tpl'); + + foreach($r as $rr) { + + $o .= replace_macros($tpl,array( + '$url' => $rr['url'], + '$name' => $rr['name'], + '$photo' => $rr['photo'], + '$tags' => '' + )); + } + + $o .= cleardiv(); +// $o .= paginate($a); + return $o; +} |