public function createMemberDataByViewerMemberIdAndMemberIdsForAPIResponse($viewerMemberId, $memberIds)
 {
     $friendAndBlocks = $this->findFriendMemberIdsAndBlockMemberIdsByMemberId($viewerMemberId);
     $imageUrls = $this->findImageFileUrlsByMemberIds($memberIds);
     $introductionId = $this->findIntroductionIdFromProfile();
     $introductions = $this->findMemberIntroductionByMemberIdsAndIntroductionId($memberIds, $introductionId);
     $firendCounts = $this->findFriendCountByMemberIds($memberIds);
     $memberNames = $this->findMemberNamesByMemberIds($memberIds);
     $memberDataList = array();
     foreach ($memberIds as $memberId) {
         $memberData = array();
         $memberData['id'] = $memberId;
         $memberData['profile_image'] = $imageUrls[$memberId];
         $memberData['screen_name'] = $memberNames[$memberId];
         $memberData['name'] = $memberNames[$memberId];
         $memberData['profile_url'] = op_api_member_profile_url($memberId);
         $memberData['friend'] = isset($friendAndBlocks['friend'][$memberId]);
         $memberData['blocking'] = isset($friendAndBlocks['block'][$memberId]);
         $memberData['self'] = $viewerMemberId === $memberId;
         $memberData['friends_count'] = $firendCounts[$memberId];
         $memberData['self_introduction'] = isset($introductions[$memberId]) ? (string) $introductions[$memberId] : null;
         $memberDataList[$memberId] = $memberData;
     }
     return $memberDataList;
 }
Beispiel #2
0
function op_activity_linkification_callback($matches)
{
    $at = $matches[1];
    $screenName = $matches[2];
    $screenNameConfig = Doctrine::getTable('MemberConfig')->createQuery()->select('member_id')->addWhere('name = "op_screen_name"')->addWhere('value = ?', $screenName)->fetchOne(array(), Doctrine::HYDRATE_NONE);
    if ($screenNameConfig) {
        $memberId = $screenNameConfig[0];
        return link_to($at . $screenName, op_api_member_profile_url($memberId), array('target' => '_blank'));
    }
    return $matches[0];
}