function showBlockFriends($sCaption, $oParent, $bNoDB = false) { $iLimit = $this->iFriendsPerPage; $sAllFriends = 'viewFriends.php?iUser='******''; if ($iCount) { $iPages = ceil($iCount / $iLimit); $iPage = isset($_GET['page']) ? (int) $_GET['page'] : 1; if ($iPage < 1) { $iPage = 1; } if ($iPage > $iPages) { $iPage = $iPages; } $sqlFrom = ($iPage - 1) * $iLimit; if ($sqlFrom < 1) { $sqlFrom = 0; } $sqlLimit = "LIMIT {$sqlFrom}, {$iLimit}"; } else { return; } $aAllFriends = getMyFriendsEx($this->_iProfileID, '', 'image', $sqlLimit); $iCurrCount = count($aAllFriends); $aTmplVars = array('bx_repeat:friends' => array()); foreach ($aAllFriends as $iFriendID => $aFriendsPrm) { $aTmplVars['bx_repeat:friends'][] = array('content' => get_member_thumbnail($iFriendID, 'none', true, 'visitor', array('is_online' => $aFriendsPrm[5]))); } $sOutputHtml = $GLOBALS['oSysTemplate']->parseHtmlByName('profile_friends.html', $aTmplVars); $oPaginate = new BxDolPaginate(array('page_url' => BX_DOL_URL_ROOT . 'profile.php', 'count' => $iCount, 'per_page' => $iLimit, 'page' => $iPage, 'on_change_page' => 'return !loadDynamicBlock({id}, \'' . $sProfileLink . '?page={page}&per_page={per_page}\');')); $sPaginate = $oPaginate->getSimplePaginate($sAllFriends); return array($sOutputHtml, array(), $sPaginate, true); }
function getBlockCode_Friends() { $iLimit = 10; $sContent = $sPaginate = ''; $sAllFriends = 'viewFriends.php?iUser='******'page']) ? (int) $_GET['page'] : 1; if ($iPage < 1) { $iPage = 1; } if ($iPage > $iPages) { $iPage = $iPages; } $sSqlFrom = ($iPage - 1) * $iLimit; $sSqlLimit = "LIMIT {$sSqlFrom}, {$iLimit}"; $aFriends = getMyFriendsEx($this->iMember, '', 'image', $sSqlLimit); $aTmplParams['bx_repeat:friends'] = array(); foreach ($aFriends as $iId => $aFriend) { $aTmplParams['bx_repeat:friends'][] = array('content' => get_member_thumbnail($iId, 'none', true, 'visitor', array('is_online' => $aFriend[5]))); } $sContent = $GLOBALS['oSysTemplate']->parseHtmlByName('member_friends.html', $aTmplParams); $oPaginate = new BxDolPaginate(array('page_url' => BX_DOL_URL_ROOT . 'member.php', 'count' => $iCount, 'per_page' => $iLimit, 'page' => $iPage, 'on_change_page' => 'return !loadDynamicBlock({id}, \'member.php?page={page}&per_page={per_page}\');')); $sPaginate = $oPaginate->getSimplePaginate($sAllFriends); return array($sContent, array(), $sPaginate); }
/** * Function will generate list of member's friends ; * * @param : $iMemberId (integer) - member's Id; * @return : Html presentation data; */ function get_member_menu_friends_list($iMemberId = 0) { global $oFunctions; $iMemberId = (int) $iMemberId; $iOnlineTime = (int) getParam('member_online_time'); // define the member's menu position ; $sExtraMenuPosition = isset($_COOKIE['menu_position']) ? $_COOKIE['menu_position'] : getParam('ext_nav_menu_top_position'); $aLanguageKeys = array('requests' => _t('_Friend Requests'), 'online' => _t('_Online Friends')); // get all friends requests ; $iFriendsRequests = getFriendRequests($iMemberId); $iOnlineFriends = getFriendNumber($iMemberId, 1, $iOnlineTime); // try to generate member's messages list ; $sWhereParam = "AND p.`DateLastNav` > SUBDATE(NOW(), INTERVAL " . $iOnlineTime . " MINUTE)"; $aAllFriends = getMyFriendsEx($iMemberId, $sWhereParam, 'last_nav_desc', "LIMIT 5"); $oModuleDb = new BxDolModuleDb(); $sVideoMessengerImgPath = $GLOBALS['oSysTemplate']->getIconUrl('video.png'); $sMessengerTitle = _t('_Chat'); foreach ($aAllFriends as $iFriendID => $aFriendsPrm) { $aMemberInfo = getProfileInfo($iFriendID); $sThumb = $oFunctions->getMemberIcon($aMemberInfo['ID'], 'none'); $sHeadline = mb_strlen($aMemberInfo['UserStatusMessage']) > 40 ? mb_substr($aMemberInfo['UserStatusMessage'], 0, 40) . '...' : $aMemberInfo['UserStatusMessage']; $aFriends[] = array('profile_link' => getProfileLink($iFriendID), 'profile_nick' => $aMemberInfo['NickName'], 'profile_id' => $iFriendID, 'thumbnail' => $sThumb, 'head_line' => $sHeadline, 'bx_if:video_messenger' => array('condition' => $oModuleDb->isModule('messenger'), 'content' => array('sender_id' => $iMemberId, 'sender_passw' => getPassword($iMemberId), 'recipient_id' => $iFriendID, 'video_img_src' => $sVideoMessengerImgPath, 'messenger_title' => $sMessengerTitle))); } $aExtraSection = array('friends_request' => $aLanguageKeys['requests'], 'request_count' => $iFriendsRequests, 'ID' => $iMemberId, 'online_friends' => $aLanguageKeys['online'], 'online_count' => $iOnlineFriends); // fill array with needed keys ; $aTemplateKeys = array('bx_if:menu_position_bottom' => array('condition' => $sExtraMenuPosition == 'bottom', 'content' => $aExtraSection), 'bx_if:menu_position_top' => array('condition' => $sExtraMenuPosition == 'top' || $sExtraMenuPosition == 'static', 'content' => $aExtraSection), 'bx_repeat:friend_list' => $aFriends); $sOutputCode = $GLOBALS['oSysTemplate']->parseHtmlByName('view_friends_member_menu_friends_list.html', $aTemplateKeys); return $sOutputCode; }
/** * Function will get array with all member's friends ; * * @param : $sSqlLimit (string) - rows limit for sql query ; * @return : array; */ function getFriendsList($sSqlLimit) { $sSqlLimit = process_db_input($sSqlLimit); // init some needed variables ; $aFriendsList = array(); $this->iTotalContactsCount = getFriendNumber($this->aMailBoxSettings['member_id']); $sQuery = "\n SELECT p.*,\n DATE_FORMAT(f.`When`, '" . getLocaleFormat(BX_DOL_LOCALE_DATE_SHORT, BX_DOL_LOCALE_DB) . "' ) AS 'When'\n FROM (\n SELECT `ID` AS `ID`, `When` FROM `sys_friend_list` WHERE `Profile`='{$this->aMailBoxSettings['member_id']}' AND `Check` =1\n UNION\n SELECT `Profile` AS `ID`, `When` FROM `sys_friend_list` WHERE `ID` = '{$this->aMailBoxSettings['member_id']}' AND `Check` =1\n) AS `f`\n INNER JOIN `Profiles` AS `p` ON (`p`.`ID` = `f`.`ID`)\n ORDER BY f.`When` DESC\n {$sSqlLimit}\n "; $rResult = db_res($sQuery); while (true == ($aRow = $rResult->fetch())) { $aFriendsList[] = $aRow; } return $aFriendsList; }
function fillProfileArray($a, $sImage = 'icon', $iIdViewer = 0) { if (!$iIdViewer) { $iIdViewer = $_COOKIE['memberID']; } $sImageKey = ucfirst($sImage); $sImage = BxDolXMLRPCUtil::getThumbLink($a['ID'], $sImage); bx_import('BxDolAlbums'); return array('ID' => new xmlrpcval($a['ID']), 'Title' => new xmlrpcval($a['Headline']), 'Nick' => new xmlrpcval($a['NickName']), 'Sex' => new xmlrpcval($a['Sex']), 'Age' => new xmlrpcval(age($a['DateOfBirth'])), 'Country' => new xmlrpcval(_t($GLOBALS['aPreValues']['Country'][$a['Country']]['LKey'])), 'City' => new xmlrpcval($a['City']), 'CountPhotos' => new xmlrpcval(BxDolXMLRPCMedia::_getMediaCount('photo', $iId, $iIdViewer)), 'CountVideos' => new xmlrpcval(BxDolXMLRPCMedia::_getMediaCount('video', $iId, $iIdViewer)), 'CountSounds' => new xmlrpcval(BxDolXMLRPCMedia::_getMediaCount('music', $iId, $iIdViewer)), 'CountFriends' => new xmlrpcval(getFriendNumber($a['ID'])), $sImageKey => new xmlrpcval($sImage)); }
function getBlockCode_Friends() { $iLimit = 10; $sAllFriends = 'viewFriends.php?iUser='******''; if ($iCount) { $iPages = ceil($iCount / $iLimit); $iPage = isset($_GET['page']) ? (int) $_GET['page'] : 1; if ($iPage < 1) { $iPage = 1; } if ($iPage > $iPages) { $iPage = $iPages; } $sqlFrom = ($iPage - 1) * $iLimit; $sqlLimit = "LIMIT {$sqlFrom}, {$iLimit}"; } else { return; } $aAllFriends = getMyFriendsEx($this->iMember, '', 'image', $sqlLimit); $iCurrCount = count($aAllFriends); foreach ($aAllFriends as $iFriendID => $aFriendsPrm) { $sOutputHtml .= '<div class="member_block">'; $sOutputHtml .= get_member_thumbnail($iFriendID, 'none', true, 'visitor', array('is_online' => $aFriendsPrm[5])); $sOutputHtml .= '</div>'; } $sOutputHtml = $GLOBALS['oFunctions']->centerContent($sOutputHtml, '.member_block'); $oPaginate = new BxDolPaginate(array('page_url' => BX_DOL_URL_ROOT . 'member.php', 'count' => $iCount, 'per_page' => $iLimit, 'page' => $iPage, 'per_page_changer' => true, 'page_reloader' => true, 'on_change_page' => 'return !loadDynamicBlock({id}, \'member.php?page={page}&per_page={per_page}\');', 'on_change_per_page' => '')); $sPaginate = $oPaginate->getSimplePaginate($sAllFriends); return array($sOutputHtml, array(), $sPaginate); }
function showBlockMutualFriends($sCaption, $bNoDB = false) { global $site; $iFriendNums = getFriendNumber($this->_iProfileID); $ret = ''; $iCounter = 0; $iTotalCounter = 0; foreach ($this->aMutualFriends as $key => $value) { $iCounter++; $sKey = '1'; //if( $iCounter == 3 ) $sKey = '2'; $ret .= '<div class="friends_thumb_' . $sKey . '">' . get_member_thumbnail($key, 'none', true) . '<div class="clear_both"></div><div class="browse_nick"><a href="' . getProfileLink($key) . '">' . $value . '</a></div><div class="clear_both"></div></div>'; if ($iCounter == 3) { $iCounter = 0; } $iTotalCounter++; if ($iTotalCounter >= 12) { break; } } if ($ret) { $ret .= '<div class="clear_both"></div>'; $sFriendInfo = '<div class="caption_item"><a href="' . $site['url'] . 'viewFriends.php?iUser='******'">' . $iFriendNums . ' ' . _t("_Friends") . '</a></div>'; if ($bNoDB) { return $ret; } else { echo DesignBoxContent(_t($sCaption), $ret, 1, $sFriendInfo); } } }
public static function fillProfileArray($a, $sImage = 'icon', $iIdViewer = 0) { if (!$iIdViewer) { $iIdViewer = (int) $_COOKIE['memberID']; } $sImageKey = ucfirst($sImage); $sImage = BxDolXMLRPCUtil::getThumbLink($a['ID'], $sImage); bx_import('BxDolAlbums'); $oBxDolXMLRPCMedia = new BxDolXMLRPCMedia(); $aRet = array('user_title' => new xmlrpcval($GLOBALS['oFunctions']->getUserTitle($a['ID'])), 'user_info' => new xmlrpcval($GLOBALS['oFunctions']->getUserInfo($a['ID']) . ' '), 'user_location' => new xmlrpcval(BxDolXMLRPCUtil::getUserLocation($a) . ' '), 'user_friend' => new xmlrpcval(is_friends($a['ID'], (int) $iIdViewer) ? 1 : 0), 'ID' => new xmlrpcval($a['ID']), 'Title' => new xmlrpcval($GLOBALS['oFunctions']->getUserTitle($a['ID'])), 'Nick' => new xmlrpcval($a['NickName']), 'Sex' => new xmlrpcval($a['Sex']), 'Age' => new xmlrpcval(age($a['DateOfBirth'])), 'Country' => new xmlrpcval(_t($GLOBALS['aPreValues']['Country'][$a['Country']]['LKey'])), 'City' => new xmlrpcval($a['City']), 'CountPhotos' => new xmlrpcval($oBxDolXMLRPCMedia->_getMediaCount('photo', $iId, $iIdViewer)), 'CountVideos' => new xmlrpcval($oBxDolXMLRPCMedia->_getMediaCount('video', $iId, $iIdViewer)), 'CountSounds' => new xmlrpcval($oBxDolXMLRPCMedia->_getMediaCount('music', $iId, $iIdViewer)), 'CountFriends' => new xmlrpcval(getFriendNumber($a['ID'])), $sImageKey => new xmlrpcval($sImage)); bx_import('BxDolAlerts'); $oZ = new BxDolAlerts('mobile', 'user_info2', $a['ID'], $iIdViewer, array('profile' => &$a, 'return_data' => &$aRet)); $oZ->alert(); return $aRet; }
function getBlockCode_Friends() { global $site; $sFriendList = ShowFriendList($this->iMember); $iFriendNums = getFriendNumber($this->iMember); if ($sFriendList) { ob_start(); ?> <div class="clear_both"></div> <?php echo $sFriendList; ?> <div class="clear_both"></div> <?php $ret = ob_get_clean(); $sFriendInfo = '<div class="caption_item"><a href="' . $site['url'] . 'viewFriends.php?iUser='******'">' . $iFriendNums . ' ' . _t("_Friends") . '</a></div>'; $aDbTopMenu = array(_t("_Friends") => array('href' => "{$site['url']}viewFriends.php?iUser={$this->iMember}")); return array($ret, $aDbTopMenu); } }