/** * themes_content_list * * @param array $pContent * @param array $pListHash * @access public * @return void */ function themes_content_list($pContent, $pListHash) { global $gBitSystem, $gBitSmarty, $gBitThemes, $gBitUser, $gQueryUser; // users_themes='u' is for all users content if ($gBitSystem->getConfig('users_themes') == 'u') { if ($gBitSystem->isFeatureActive('users_preferences') && !empty($pListHash['user_id'])) { if ($pListHash['user_id'] == $gBitUser->mUserId) { // small optimization to reduce checking when we are looking at our own content, which is frequent if ($userStyle = $gBitUser->getPreference('theme')) { $theme = $userStyle; } } else { $theme = BitUser::getUserPreference('theme', NULL, $pListHash['user_id']); } } } if (!empty($theme) && $theme != DEFAULT_THEME) { $gBitThemes->setStyle($theme); if (!is_object($gQueryUser)) { $userClass = $gBitSystem->getConfig('user_class', 'BitPermUser'); require_once USERS_PKG_PATH . $userClass . '.php'; $gQueryUser = new $userClass($pListHash['user_id']); $gQueryUser->load(); $gBitSmarty->assignByRef('gQueryUser', $gQueryUser); } } }
/** * isUserPublic Determine if an arbitrary user can be viewed by non-permissioned users. * * @param array $pUserId user_id of user to query visibility, if NULL will use this object * @access public * @return boolean if user is publically visible */ function isUserPrivate($pUserId = NULL) { $infoPref = NULL; if (BitBase::verifyId($pUserId)) { $infoPref = BitUser::getUserPreference('users_information', NULL, $pUserId); } elseif (isset($this) && $this->isValid()) { $infoPref = $this->getPreference('users_information'); } return $infoPref == 'private'; }