2010-10-21 3 views
0

Я пытаюсь заставить работать с селектором, единственное, что я не хочу отправлять приглашениям, просто хочу подсчет друзей, которых выбрал пользователь.Facebook friend селектор с счетчиком

Мне нужно принять это значение и применить его к некоторому javascript-коду, который обновит диапазон на странице.

Я разговаривал с дядей Google, и он не мог помочь.

ответ

1

Я использовал следующее, и это работает (возможно, потребуется некоторое уточнение):

<?php 
require 'facebook-php-sdk/src/facebook.php'; 

// Create our Application instance. 
$facebook = new Facebook(array(
    'appId' => 'xxx', 
    'secret' => 'xxx', 
    'cookie' => true, 
)); 

$session = $facebook->getSession(); 

$me = null; 
// Session based API call. 
if ($session) { 
    try { 
     $uid = $facebook->getUser(); 
     $me = $facebook->api('/me'); 

     $f_data = $facebook->api('/me/friends'); 

     $friends = array(); 

     foreach ($f_data['data'] as $friend) { 
      $friends[$friend['name']] = $friend['id']; 
     } 

     ksort($friends); 
    } catch (FacebookApiException $e) { 
     error_log($e); 
    } 
} 
?> 
<div>You have <span id="numfriends">0 friends</span> selected</div> 
<div class="friend-container"> 
<?php foreach ($friends as $friend): ?> 
    <div class="friend-profile"> 
     <fb:profile-pic uid="<?php echo $friend; ?>" linked="false" size="square" /><br/> 
     <fb:name uid="<?php echo $friend; ?>" linked="false" /> 
    </div> 
<?php endforeach; ?> 
</div> 
<script> 
<!-- 
    function updateFriends(obj) 
    { 
     obj.toggleClassName('selected'); 

     var friends = 0; 

     friends_arr = obj.getParentNode().getChildNodes(); 

     for (friend in friends_arr) 
      { 
       if(typeof(friends_arr[friend]) == 'object') 
        { 
         if (friends_arr[friend].getClassName().indexOf('selected') != -1) 
          { 
           friends++; 
          } 
        } 
      } 

     document.getElementById('numfriends').setTextValue(friends + ' friends'); 
    } 
//--> 
</script> 
0

Вы не можете использовать fb:multi-friend-selector за пределами fb:request-form. Вы можете использовать fb:multi-friend-input, хотя (но он не такой продвинутый).

+0

Спасибо, я стараюсь, что и он не делал то, что я хотел, я просто хочу иметь напишите что-нибудь, используя некоторые другие вызовы API. Я не хочу приглашать друзей, просто выбирать и считать их. Как только у меня появится решение, я опубликую детали. – NiGhTHawK

Смежные вопросы