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; }