def save_redemptions(request, redemptions): total_points_available = reward_points_of_user(request.user.userprofile) total_points_redeemed = sum(redemptions.values()) if total_points_redeemed > 0 and total_points_redeemed <= total_points_available: for event_id in redemptions: if redemptions[event_id] > 0: redemption = RewardPointRedemption( user_profile=request.user.userprofile, value=redemptions[event_id], event=RewardPointRedemptionEvent.objects.get(id=event_id) ) redemption.save() return True return False
def save_redemptions(request, redemptions): total_points_available = reward_points_of_user(request.user) total_points_redeemed = sum(redemptions.values()) if total_points_redeemed <= 0: raise NoPointsSelected(_("You cannot redeem 0 points.")) if total_points_redeemed > total_points_available: raise NotEnoughPoints(_("You don't have enough reward points.")) for event_id in redemptions: if redemptions[event_id] > 0: redemption = RewardPointRedemption( user_profile=request.user, value=redemptions[event_id], event=RewardPointRedemptionEvent.objects.get(id=event_id)) redemption.save()
def save_redemptions(request, redemptions): total_points_available = reward_points_of_user(request.user) total_points_redeemed = sum(redemptions.values()) if total_points_redeemed <= 0: raise NoPointsSelected(_("You cannot redeem 0 points.")) if total_points_redeemed > total_points_available: raise NotEnoughPoints(_("You don't have enough reward points.")) for event_id in redemptions: if redemptions[event_id] > 0: redemption = RewardPointRedemption( user_profile=request.user, value=redemptions[event_id], event=RewardPointRedemptionEvent.objects.get(id=event_id) ) redemption.save()