public static PlayerBio GetPlayerBioFromMembershipId(string id)
        {
            IPlayerBioRepository playerBioRepo = new EFPlayerBioRepository();
            var playerBio = playerBioRepo.PlayerBios.FirstOrDefault(p => p.OwnerMembershipId == id);

            return(playerBio);
        }
        public static void DeletePlayerBio(string ownerMembershipId)
        {
            IPlayerBioRepository playerBioRepo = new EFPlayerBioRepository();
            var myBio = playerBioRepo.PlayerBios.FirstOrDefault(p => p.OwnerMembershipId == ownerMembershipId);

            if (myBio != null)
            {
                playerBioRepo.DeletePlayerBio(myBio.Id);
            }
        }
        public static SetBioViewModel GetSetBioViewModelFromMembershipId(string id)
        {
            IPlayerBioRepository playerBioRepo = new EFPlayerBioRepository();
            var player    = PlayerProcedures.GetPlayerFromMembership(id);
            var playerBio = playerBioRepo.PlayerBios.FirstOrDefault(p => p.OwnerMembershipId == id);

            var setBioViewModel
                = playerBio != null ? new SetBioViewModel(playerBio) : new SetBioViewModel(player.MembershipId);

            setBioViewModel.IsDonator = player.DonatorGetsMessagesRewards();

            return(setBioViewModel);
        }
        public static bool PlayerHasBio(string id)
        {
            IPlayerBioRepository playerBioRepo = new EFPlayerBioRepository();
            var playerBio = playerBioRepo.PlayerBios.FirstOrDefault(p => p.OwnerMembershipId == id);

            if (playerBio != null)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public static void SavePlayerBio(SetBioViewModel bio, string membershipId)
        {
            IPlayerBioRepository playerBioRepo = new EFPlayerBioRepository();
            var playerBio = playerBioRepo.PlayerBios.FirstOrDefault(p => p.OwnerMembershipId == membershipId);

            if (playerBio == null)
            {
                playerBio = new PlayerBio
                {
                    OwnerMembershipId = membershipId,
                };
            }

            playerBio.Timestamp  = DateTime.UtcNow;
            playerBio.Text       = bio.Text;
            playerBio.WebsiteURL = bio.WebsiteURL;

            playerBio.Tags = bio.Tags;

            playerBioRepo.SavePlayerBio(playerBio);
        }