Example #1
0
File: tools.py Project: Nef10/EvaP
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
Example #2
0
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()
Example #3
0
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()