function _getUserNumberOfConnections($user) { global $_CB_framework; $cbCon = new cbConnection($_CB_framework->myId()); return $cbCon->getConnectionsCount($user->id); }
function manageConnections($userid) { global $_CB_framework, $ueConfig; if(!$ueConfig['allowConnections']) { echo _UE_FUNCTIONALITY_DISABLED; return; } if ( $_CB_framework->myId() != $userid || $_CB_framework->myId() == 0) { cbNotAuth(); return; } $cbCon = new cbConnection( $userid ); $connections = $cbCon->getActiveConnections( $userid ); $tabs = new cbTabs( 0, $_CB_framework->getUi() ); $tabs->element = ''; $pagingParams = $tabs->_getPaging( array(), array( 'connections_' ) ); $perpage = 20; //TBD unhardcode and get the code below better $total = $cbCon->getConnectionsCount( $userid, true ); if ( $pagingParams["connections_limitstart"] === null ) { $pagingParams["connections_limitstart"] = 0; } if ( $pagingParams["connections_limitstart"] > $total ) { $pagingParams["connections_limitstart"] = 0; } $offset = ( $pagingParams["connections_limitstart"] ? (int) $pagingParams["connections_limitstart"] : 0 ); $connections = $cbCon->getActiveConnections( $userid, $offset, $perpage ); $actions = $cbCon->getPendingConnections( $userid ); $connecteds = $cbCon->getConnectedToMe( $userid ); HTML_comprofiler::manageConnections( $connections, $actions, $total, $tabs, $pagingParams, $perpage, $connecteds ); }
/** * Returns a field in specified format * * @param FieldTable $field * @param UserTable $user * @param string $output 'html', 'xml', 'json', 'php', 'csvheader', 'csv', 'rss', 'fieldslist', 'htmledit' * @param string $reason 'profile' for user profile view, 'edit' for profile edit, 'register' for registration, 'list' for user-lists * @param int $list_compare_types IF reason == 'search' : 0 : simple 'is' search, 1 : advanced search with modes, 2 : simple 'any' search * @return mixed */ public function getField(&$field, &$user, $output, $reason, $list_compare_types) { global $_CB_framework, $ueConfig; $oReturn = null; if ($ueConfig['allowConnections'] && is_object($user)) { $cbCon = new cbConnection($_CB_framework->myId()); $value = $cbCon->getConnectionsCount($user->id); switch ($output) { case 'html': case 'rss': $oReturn = $this->formatFieldValueLayout($value, $reason, $field, $user); break; case 'htmledit': // $oReturn = parent::getField( $field, $user, $output, $reason, $list_compare_types ); $oReturn = null; //TBD for now no searches...not optimal in SQL anyway. break; case 'json': case 'php': case 'xml': case 'csvheader': case 'fieldslist': case 'csv': default: $oReturn = $this->_formatFieldOutputIntBoolFloat($field->name, $value, $output); break; } } return $oReturn; }
function manageConnections($userid) { global $_CB_framework, $ueConfig, $_PLUGINS; if (!$ueConfig['allowConnections']) { $msg = CBTxt::Th('UE_FUNCTIONALITY_DISABLED', 'This functionality is currently disabled.'); } elseif ($_CB_framework->myId() != $userid || $_CB_framework->myId() == 0) { $msg = CBTxt::Th('UE_NOT_AUTHORIZED', 'You are not authorized to view this page!'); } else { $msg = null; } $_PLUGINS->loadPluginGroup('user'); $_PLUGINS->trigger('onBeforeManageConnectionsRequest', array($userid, &$msg)); if ($msg) { $_CB_framework->enqueueMessage($msg, 'error'); return; } $cbCon = new cbConnection($userid); $tabs = new cbTabs(0, $_CB_framework->getUi()); $tabs->element = ''; $pagingParams = $tabs->_getPaging(array(), array('connections_')); $perpage = 20; //TBD unhardcode and get the code below better $total = $cbCon->getConnectionsCount($userid, true); if ($pagingParams["connections_limitstart"] === null) { $pagingParams["connections_limitstart"] = 0; } if ($pagingParams["connections_limitstart"] > $total) { $pagingParams["connections_limitstart"] = 0; } $offset = $pagingParams["connections_limitstart"] ? (int) $pagingParams["connections_limitstart"] : 0; $connections = $cbCon->getActiveConnections($userid, $offset, $perpage); $actions = $cbCon->getPendingConnections($userid); $connecteds = $cbCon->getConnectedToMe($userid); HTML_comprofiler::manageConnections($connections, $actions, $total, $tabs, $pagingParams, $perpage, $connecteds); }