Ejemplo n.º 1
0
        private PermissionCheckResult CanDoAction(Classes.User user, BillingPlanOption<bool> option)
        {
            if (user.IsAdmin() || option.Value)
                return PermissionCheckResult.Yes;

            if (Config.Users.FreeForFemales && user.Gender == AspNetDating.Classes.User.eGender.Female &&
                (option.EnableCreditsPayment || option.UpgradableToNextPlan))
                return PermissionCheckResult.Yes;

            if (option.EnableCreditsPayment)
            {
                if (user.Credits < option.Credits)
                    return PermissionCheckResult.YesButMoreCreditsNeeded;
                else
                    return PermissionCheckResult.YesWithCredits;
            }

            if (option.UpgradableToNextPlan)
                return PermissionCheckResult.YesButPlanUpgradeNeeded;

            return PermissionCheckResult.No;
        }