fix for rewards
This commit is contained in:
parent
efde3e6914
commit
132455395e
4 changed files with 42 additions and 36 deletions
24
dist/bundle.es.js
vendored
24
dist/bundle.es.js
vendored
|
@ -2075,7 +2075,7 @@ function doClaimRewardType(rewardType, options = {}) {
|
|||
reward_type: rewards.TYPE_REWARD_CODE
|
||||
} : unclaimedRewards.find(ur => ur.reward_type === rewardType); // Try to claim the email reward right away, even if we haven't called reward_list yet
|
||||
|
||||
if (rewardType !== rewards.TYPE_REWARD_CODE || rewardType !== rewards.TYPE_CONFIRM_EMAIL || rewardType !== rewards.TYPE_DAILY_VIEW || rewardType !== rewards.TYPE_NEW_ANDROID || rewardType !== rewards.TYPE_PAID_CONTENT) {
|
||||
if (rewardType !== rewards.TYPE_REWARD_CODE && rewardType !== rewards.TYPE_CONFIRM_EMAIL && rewardType !== rewards.TYPE_DAILY_VIEW && rewardType !== rewards.TYPE_NEW_ANDROID && rewardType !== rewards.TYPE_PAID_CONTENT) {
|
||||
if (!reward || reward.transaction_id) {
|
||||
// already claimed or doesn't exist, do nothing
|
||||
return;
|
||||
|
@ -2093,7 +2093,7 @@ function doClaimRewardType(rewardType, options = {}) {
|
|||
|
||||
const params = options.params || {};
|
||||
|
||||
if (!params.claim_code) {
|
||||
if (!params.claim_code && reward) {
|
||||
params.claim_code = reward.claim_code;
|
||||
}
|
||||
|
||||
|
@ -3200,16 +3200,18 @@ function setClaimRewardState(state, reward, isClaiming, errorMessage = '') {
|
|||
const newClaimErrorsByType = Object.assign({}, state.claimErrorsByType); // Currently, for multiple rewards of the same type, they will both show "claiming" when one is beacuse we track this by `reward_type`
|
||||
// To fix this we will need to use `claim_code` instead, and change all selectors to match
|
||||
|
||||
if (isClaiming) {
|
||||
newClaimPendingByType[reward.reward_type] = isClaiming;
|
||||
} else {
|
||||
delete newClaimPendingByType[reward.reward_type];
|
||||
}
|
||||
if (reward) {
|
||||
if (isClaiming) {
|
||||
newClaimPendingByType[reward.reward_type] = isClaiming;
|
||||
} else {
|
||||
delete newClaimPendingByType[reward.reward_type];
|
||||
}
|
||||
|
||||
if (errorMessage) {
|
||||
newClaimErrorsByType[reward.reward_type] = errorMessage;
|
||||
} else {
|
||||
delete newClaimErrorsByType[reward.reward_type];
|
||||
if (errorMessage) {
|
||||
newClaimErrorsByType[reward.reward_type] = errorMessage;
|
||||
} else {
|
||||
delete newClaimErrorsByType[reward.reward_type];
|
||||
}
|
||||
}
|
||||
|
||||
return Object.assign({}, state, {
|
||||
|
|
24
dist/bundle.js
vendored
24
dist/bundle.js
vendored
|
@ -4462,7 +4462,7 @@ function doClaimRewardType(rewardType) {
|
|||
return ur.reward_type === rewardType;
|
||||
}); // Try to claim the email reward right away, even if we haven't called reward_list yet
|
||||
|
||||
if (rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_REWARD_CODE || rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_CONFIRM_EMAIL || rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_DAILY_VIEW || rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_NEW_ANDROID || rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_PAID_CONTENT) {
|
||||
if (rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_REWARD_CODE && rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_CONFIRM_EMAIL && rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_DAILY_VIEW && rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_NEW_ANDROID && rewardType !== rewards__WEBPACK_IMPORTED_MODULE_5__["default"].TYPE_PAID_CONTENT) {
|
||||
if (!reward || reward.transaction_id) {
|
||||
// already claimed or doesn't exist, do nothing
|
||||
return;
|
||||
|
@ -4480,7 +4480,7 @@ function doClaimRewardType(rewardType) {
|
|||
|
||||
var params = options.params || {};
|
||||
|
||||
if (!params.claim_code) {
|
||||
if (!params.claim_code && reward) {
|
||||
params.claim_code = reward.claim_code;
|
||||
}
|
||||
|
||||
|
@ -7112,16 +7112,18 @@ function setClaimRewardState(state, reward, isClaiming) {
|
|||
var newClaimErrorsByType = Object.assign({}, state.claimErrorsByType); // Currently, for multiple rewards of the same type, they will both show "claiming" when one is beacuse we track this by `reward_type`
|
||||
// To fix this we will need to use `claim_code` instead, and change all selectors to match
|
||||
|
||||
if (isClaiming) {
|
||||
newClaimPendingByType[reward.reward_type] = isClaiming;
|
||||
} else {
|
||||
delete newClaimPendingByType[reward.reward_type];
|
||||
}
|
||||
if (reward) {
|
||||
if (isClaiming) {
|
||||
newClaimPendingByType[reward.reward_type] = isClaiming;
|
||||
} else {
|
||||
delete newClaimPendingByType[reward.reward_type];
|
||||
}
|
||||
|
||||
if (errorMessage) {
|
||||
newClaimErrorsByType[reward.reward_type] = errorMessage;
|
||||
} else {
|
||||
delete newClaimErrorsByType[reward.reward_type];
|
||||
if (errorMessage) {
|
||||
newClaimErrorsByType[reward.reward_type] = errorMessage;
|
||||
} else {
|
||||
delete newClaimErrorsByType[reward.reward_type];
|
||||
}
|
||||
}
|
||||
|
||||
return Object.assign({}, state, {
|
||||
|
|
|
@ -39,10 +39,10 @@ export function doClaimRewardType(rewardType, options = {}) {
|
|||
|
||||
// Try to claim the email reward right away, even if we haven't called reward_list yet
|
||||
if (
|
||||
rewardType !== rewards.TYPE_REWARD_CODE ||
|
||||
rewardType !== rewards.TYPE_CONFIRM_EMAIL ||
|
||||
rewardType !== rewards.TYPE_DAILY_VIEW ||
|
||||
rewardType !== rewards.TYPE_NEW_ANDROID ||
|
||||
rewardType !== rewards.TYPE_REWARD_CODE &&
|
||||
rewardType !== rewards.TYPE_CONFIRM_EMAIL &&
|
||||
rewardType !== rewards.TYPE_DAILY_VIEW &&
|
||||
rewardType !== rewards.TYPE_NEW_ANDROID &&
|
||||
rewardType !== rewards.TYPE_PAID_CONTENT
|
||||
) {
|
||||
if (!reward || reward.transaction_id) {
|
||||
|
@ -66,7 +66,7 @@ export function doClaimRewardType(rewardType, options = {}) {
|
|||
|
||||
// Set `claim_code` so the api knows which reward to give if there are multiple of the same type
|
||||
const params = options.params || {};
|
||||
if (!params.claim_code) {
|
||||
if (!params.claim_code && reward) {
|
||||
params.claim_code = reward.claim_code;
|
||||
}
|
||||
|
||||
|
|
|
@ -41,15 +41,17 @@ function setClaimRewardState(state, reward, isClaiming, errorMessage = '') {
|
|||
|
||||
// Currently, for multiple rewards of the same type, they will both show "claiming" when one is beacuse we track this by `reward_type`
|
||||
// To fix this we will need to use `claim_code` instead, and change all selectors to match
|
||||
if (isClaiming) {
|
||||
newClaimPendingByType[reward.reward_type] = isClaiming;
|
||||
} else {
|
||||
delete newClaimPendingByType[reward.reward_type];
|
||||
}
|
||||
if (errorMessage) {
|
||||
newClaimErrorsByType[reward.reward_type] = errorMessage;
|
||||
} else {
|
||||
delete newClaimErrorsByType[reward.reward_type];
|
||||
if (reward) {
|
||||
if (isClaiming) {
|
||||
newClaimPendingByType[reward.reward_type] = isClaiming;
|
||||
} else {
|
||||
delete newClaimPendingByType[reward.reward_type];
|
||||
}
|
||||
if (errorMessage) {
|
||||
newClaimErrorsByType[reward.reward_type] = errorMessage;
|
||||
} else {
|
||||
delete newClaimErrorsByType[reward.reward_type];
|
||||
}
|
||||
}
|
||||
|
||||
return Object.assign({}, state, {
|
||||
|
|
Loading…
Add table
Reference in a new issue