本文整理汇总了PHP中CRatings::GetRatingUserPropEx方法的典型用法代码示例。如果您正苦于以下问题:PHP CRatings::GetRatingUserPropEx方法的具体用法?PHP CRatings::GetRatingUserPropEx怎么用?PHP CRatings::GetRatingUserPropEx使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CRatings
的用法示例。
在下文中一共展示了CRatings::GetRatingUserPropEx方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: CheckAllowVote
public static function CheckAllowVote($arVoteParam)
{
global $USER;
$userId = $USER->GetId();
$bUserAuth = $USER->IsAuthorized();
$bAllGroups = false;
$arInfo = array(
'RESULT' => true,
'ERROR_TYPE' => '',
'ERROR_MSG' => '',
);
$bSelfVote = COption::GetOptionString("main", "rating_self_vote", 'N');
if ($bSelfVote == 'N' && IntVal($arVoteParam['OWNER_ID']) == $userId)
{
$arInfo = array(
'RESULT' => false,
'ERROR_TYPE' => 'SELF',
'ERROR_MSG' => GetMessage('RATING_ALLOW_VOTE_SELF'),
);
}
else if (!$bUserAuth)
{
$arInfo = array(
'RESULT' => false,
'ERROR_TYPE' => 'GUEST',
'ERROR_MSG' => GetMessage('RATING_ALLOW_VOTE_GUEST'),
);
}
else
{
static $cacheAllowVote = array();
static $cacheUserVote = array();
static $cacheVoteSize = 0;
if(!array_key_exists($userId, $cacheAllowVote))
{
global $DB;
$arGroups = array();
$sVoteType = $arVoteParam['ENTITY_TYPE_ID'] == 'USER'? 'A': 'R';
$userVoteGroup = Array();
$ar = CRatings::GetVoteGroupEx();
foreach($ar as $group)
if ($sVoteType == $group['TYPE'])
$userVoteGroup[] = $group['GROUP_ID'];
$userGroup = $USER->GetUserGroupArray();
$result = array_intersect($userGroup, $userVoteGroup);
if (empty($result))
{
$arInfo = $cacheAllowVote[$userId] = array(
'RESULT' => false,
'ERROR_TYPE' => 'ACCESS',
'ERROR_MSG' => GetMessage('RATING_ALLOW_VOTE_ACCESS'),
);
}
$authorityRatingId = CRatings::GetAuthorityRating();
$arAuthorityUserProp = CRatings::GetRatingUserPropEx($authorityRatingId, $userId);
if ($arAuthorityUserProp['VOTE_WEIGHT'] <= 0)
{
$arInfo = $cacheAllowVote[$userId] = array(
'RESULT' => false,
'ERROR_TYPE' => 'ACCESS',
'ERROR_MSG' => GetMessage('RATING_ALLOW_VOTE_LOW_WEIGHT'),
);
}
if ($arInfo['RESULT'] && $sVoteType == 'A')
{
$strSql = '
SELECT COUNT(*) as VOTE
FROM b_rating_vote RV
WHERE RV.USER_ID = '.$userId.'
AND RV.CREATED > DATE_SUB(NOW(), INTERVAL 1 DAY)';
$res = $DB->Query($strSql, false, $err_mess.__LINE__);
$countVote = $res->Fetch();
$cacheVoteSize = $_SESSION['RATING_VOTE_COUNT'] = $countVote['VOTE'];
$cacheUserVote[$userId] = $_SESSION['RATING_USER_VOTE_COUNT'] = $arAuthorityUserProp['VOTE_COUNT'];
if ($cacheVoteSize >= $cacheUserVote[$userId])
{
$arInfo = $cacheAllowVote[$userId] = array(
'RESULT' => false,
'ERROR_TYPE' => 'COUNT_VOTE',
'ERROR_MSG' => GetMessage('RATING_ALLOW_VOTE_COUNT_VOTE'),
);
}
}
}
else
{
if ($cacheAllowVote[$userId]['RESULT'])
{
if ($cacheVoteSize >= $cacheUserVote[$userId])
{
//.........这里部分代码省略.........
示例2: CAdminViewTabControl
$i++;
}
if (is_array($arRatings) && !empty($arRatings))
{
$ratingWeightType = COption::GetOptionString("main", "rating_weight_type", "auto");
$authorityRatingId = CRatings::GetAuthorityRating();
$arAuthorityUserProp = CRatings::GetRatingUserPropEx($authorityRatingId, $ID);
$viewTabControl = new CAdminViewTabControl("tabControlRating", $aTabs2);
$viewTabControl->Begin();
foreach($arRatings as $ratingId => $arRating)
{
$arRatingResult = CRatings::GetRatingResult($ratingId, $ID);
$arRatingUserProp = CRatings::GetRatingUserPropEx($ratingId, $ID);
if ($ratingId == $authorityRatingId && $arRatingUserProp['BONUS'] == 0)
$arRatingUserProp['BONUS'] = COption::GetOptionString("main", "rating_start_authority", 3);
$viewTabControl->BeginNextTab();
?>
<table cellspacing="7" cellpadding="0" border="0" width="100%" class="edit-table">
<? if ($USER->CanDoOperation('edit_ratings') && ($selfEdit || $ID!=$uid)): ?>
<tr>
<td class="field-name" width="40%"><?php
echo GetMessage('RATING_BONUS');
?>
:<sup><span class="required">2</span></sup></td>
<td><?php
echo InputType('text', "RATING_BONUS[{$ratingId}]", floatval($arRatingUserProp['BONUS']), false, false, '', 'size="5" maxlength="11"');