Просмотр исходного кода

#794 Facebook Connect: automatically connect friends if they are already friends on Facebook

Alex Trofimov 9 лет назад
Родитель
Сommit
fc6991e56d
1 измененных файлов с 10 добавлено и 6 удалено
  1. 10 6
      modules/boonex/facebook_connect/classes/BxFaceBookConnectModule.php

+ 10 - 6
modules/boonex/facebook_connect/classes/BxFaceBookConnectModule.php

@@ -166,10 +166,13 @@ class BxFaceBookConnectModule extends BxBaseModConnectModule
      */
     protected function _makeFriends($iProfileId)
     {
-        if (!$this->_oConfig->bAutoFriends) {
+        if (!$this->_oConfig->bAutoFriends)
             return;
-        }
 
+        $oConnFrinds = BxDolConnection::getObjectInstance('sys_profiles_friends');
+        if (!$oConnFrinds)
+            return;
+        
         try {
             //get friends from facebook
             $oFriendsResponse = $this -> oFacebook -> get('/me/friends?limit=50');
@@ -184,11 +187,12 @@ class BxFaceBookConnectModule extends BxBaseModConnectModule
         do {
             foreach ($oPagesEdge as $oPage) {
                 $aFriend = $oPage->asArray();
-                $iFriendId = $this -> _oDb -> getProfileId($aFriend['id']);
-
-                // TODO:
+                if (!($iLocalProfileId = $this->_oDb->getProfileId($aFriend['id'])))
+                    continue;
+                $oConnFrinds->actionAdd($iProfileId, $iLocalProfileId);
+                $oConnFrinds->actionAdd($iLocalProfileId, $iProfileId);
             }
-        } while ($oPagesEdge = $this -> oFacebook -> next($oPagesEdge));
+        } while ($oPagesEdge = $this->oFacebook->next($oPagesEdge));
     }
 
     /**