]> git.mxchange.org Git - friendica.git/blobdiff - mod/common.php
Merge pull request #1994 from tobiasd/20151028-issue1974
[friendica.git] / mod / common.php
index 852388c1493125bdcc28fafcd6db6229322d0c14..1e65137ac693c74dcc125b1e9af213a70bcb2ac3 100644 (file)
@@ -5,51 +5,102 @@ require_once('include/socgraph.php');
 function common_content(&$a) {
 
        $o = '';
-       if(! local_user()) {
-               notice( t('Permission denied.') . EOL);
-               return;
-       }
 
-       if($a->argc > 1)
-               $cid = intval($a->argv[1]);
-       if(! $cid)
+       $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;
 
-       $c = q("select name, url, photo from contact where id = %d and uid = %d limit 1",
-               intval($cid),
-               intval(local_user())
-       );
+       if($cmd === 'loc' && $cid) {
+               $c = q("select name, url, photo from contact where id = %d and uid = %d limit 1",
+                       intval($cid),
+                       intval($uid)
+               );
+       }
+       else {
+               $c = q("select name, url, photo from contact where self = 1 and uid = %d limit 1",
+                       intval($uid)
+               );
+       }
 
-       $a->page['aside'] .= '<div class="vcard">' 
-               . '<div class="fn label">' . $c[0]['name'] . '</div>' 
-               . '<div id="profile-photo-wrapper">'
-               . '<a href="/contacts/' . $cid . '"><img class="photo" width="175" height="175" 
-               src="' . $c[0]['photo'] . '" alt="' . $c[0]['name'] . '" /></div>'
-               . '</div>';
-       
+       $vcard_widget .= replace_macros(get_markup_template("vcard-widget.tpl"),array(
+               '$name' => htmlentities($c[0]['name']),
+               '$photo' => $c[0]['photo'],
+               'url' => z_root() . '/contacts/' . $cid
+       ));
+
+       if(! x($a->page,'aside'))
+               $a->page['aside'] = '';
+       $a->page['aside'] .= $vcard_widget;
 
        if(! count($c))
                return;
 
-       $o .= '<h2>' . t('Common Friends') . '</h2>';
+       $o .= replace_macros(get_markup_template("section_title.tpl"),array(
+               '$title' => t('Common Friends')
+       ));
+
+
+       if(! $cid) {
+               if(get_my_url()) {
+                       $r = q("select id from contact where nurl = '%s' and uid = %d limit 1",
+                               dbesc(normalise_link(get_my_url())),
+                               intval($profile_uid)
+                       );
+                       if(count($r))
+                               $cid = $r[0]['id'];
+                       else {
+                               $r = q("select id from gcontact where nurl = '%s' limit 1",
+                                       dbesc(normalise_link(get_my_url()))
+                               );
+                               if(count($r))
+                                       $zcid = $r[0]['id'];
+                       }
+               }
+       }
+
 
-//     $o .= '<h3>' . sprintf( t('You and %s'),$c[0]['name']) . '</h3>';
 
+       if($cid == 0 && $zcid == 0)
+               return; 
+
+
+       if($cid)
+               $t = count_common_friends($uid,$cid);
+       else
+               $t = count_common_friends_zcid($uid,$zcid);
+
+
+       $a->set_pager_total($t);
+
+       if(! $t) {
+               notice( t('No contacts in common.') . EOL);
+               return $o;
+       }
+
+
+       if($cid)
+               $r = common_friends($uid,$cid);
+       else
+               $r = common_friends_zcid($uid,$zcid);
 
-       $r = common_friends(local_user(),$cid);
 
        if(! count($r)) {
-               $o .= t('No friends in common.');
                return $o;
        }
 
        $tpl = get_markup_template('common_friends.tpl');
 
        foreach($r as $rr) {
-                       
+
                $o .= replace_macros($tpl,array(
                        '$url' => $rr['url'],
-                       '$name' => $rr['name'],
+                       '$name' => htmlentities($rr['name']),
                        '$photo' => $rr['photo'],
                        '$tags' => ''
                ));