]> git.mxchange.org Git - friendica.git/commitdiff
first cut friend suggestions
authorFriendika <info@friendika.com>
Wed, 2 Nov 2011 03:29:55 +0000 (20:29 -0700)
committerFriendika <info@friendika.com>
Wed, 2 Nov 2011 03:29:55 +0000 (20:29 -0700)
include/socgraph.php
mod/suggest.php [new file with mode: 0644]

index c81c7b695229ae60dd7ccb9f786128e992a7658e..04e9a9a64b1cd41b625e7d2922b6877c013bce05 100644 (file)
@@ -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 (file)
index 0000000..f8b8981
--- /dev/null
@@ -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;
+}