public function checkReward($points, $msgOn = 0)
{
$app = Factory::getApplication();
$paramsC = PhocacartUtils::getComponentParameters();
$enable_rewards = $paramsC->get('enable_rewards', 1);
$rewards = array();
$rewards['usertotal'] = 0;
$rewards['wantstouse'] = (int) $points;
$rewards['used'] = false;
// 1. ENABLE REWARDS
if ($enable_rewards == 0) {
if ($msgOn == 1) {
$app->enqueueMessage(Text::_('COM_PHOCACART_REWARD_POINTS_DISABLED'), 'error');
}
return false;
}
// 2. USER
$user = PhocacartUser::getUser();
if ($user->id > 0) {
$rewards['usertotal'] = $this->getTotalPointsByUserId($user->id);
} else {
if ($msgOn == 1) {
$app->enqueueMessage(Text::_('COM_PHOCACART_USER_NOT_FOUND'), 'error');
}
return false;
}
// 3. TOTAL
if ($rewards['usertotal'] == $rewards['wantstouse']) {
$rewards['used'] = $rewards['wantstouse'];
} else {
if ($rewards['usertotal'] > $rewards['wantstouse']) {
$rewards['used'] = $rewards['wantstouse'];
} else {
if ($rewards['usertotal'] < $rewards['wantstouse']) {
$rewards['used'] = $rewards['usertotal'];
}
}
}
return $rewards['used'];
}