コード例 #1
0
        public ActionResult CompleteRegistration(string email)
        {
            var register = m.RegistrationGetByEmail(email);

            if (register == null || register.VERIFIED == false)
            {
                ViewBag.Code    = 'E';
                ViewBag.Message = "Either no account was found or the user hasn't validated this email address. Please try again.";
                return(View());
            }
            else
            {
                var player = m.PlayerGetByEmail(email);

                if (player == null)
                {
                    PlayerAddFormViewModel playerForm = new PlayerAddFormViewModel(email);
                    return(View(playerForm));
                }
                else
                {
                    ViewBag.Code    = 'E';
                    ViewBag.Message = "It seems an account with this email has already been created. Please login into your account.";
                    return(View());
                }
            }
        }
コード例 #2
0
ファイル: Manager.cs プロジェクト: C067/Imperium-Site
        public bool PlayerAdd(PlayerAddFormViewModel newPlayer)
        {
            PlayersBaseViewModel player = new PlayersBaseViewModel(newPlayer);

            if (newPlayer.PlayerImage != null)
            {
                byte[] photoBytes = new byte[newPlayer.PlayerImage.Length];

                using (MemoryStream ms = new MemoryStream())
                {
                    newPlayer.PlayerImage.OpenReadStream().CopyTo(ms);
                    photoBytes = ms.ToArray();
                }

                player.PLAYER_AVATAR     = photoBytes;
                player.PLAYER_AVATARTYPE = newPlayer.PlayerImage.ContentType;
            }
            else
            {
                player.PLAYER_AVATAR     = null;
                player.PLAYER_AVATARTYPE = null;
            }

            var addedPlayer = ds.Players.Add(mapper.Map <PlayersBaseViewModel, Players>(player));

            ds.SaveChanges();

            return(addedPlayer == null ? false : true);
        }
コード例 #3
0
        public ActionResult CompleteRegistration(PlayerAddFormViewModel newPlayer)
        {
            if (!ModelState.IsValid)
            {
                PlayerAddFormViewModel playerForm = new PlayerAddFormViewModel(newPlayer.Email);
                return(View(playerForm));
            }

            try
            {
                //Regex
                Regex numEx     = new Regex(newPlayer.numPattern);
                Regex upperEx   = new Regex(newPlayer.upperPattern);
                Regex lowerEx   = new Regex(newPlayer.lowerPattern);
                Regex specialEx = new Regex(newPlayer.specialPattern);
                newPlayer.PasswordErrorList = new List <string>();

                if (!numEx.IsMatch(newPlayer.Password))
                {
                    newPlayer.PasswordErrorList.Add("-Password must contain at least one number");
                }
                if (!upperEx.IsMatch(newPlayer.Password))
                {
                    newPlayer.PasswordErrorList.Add("-Password must contain at least one uppercase letter");
                }
                if (!lowerEx.IsMatch(newPlayer.Password))
                {
                    newPlayer.PasswordErrorList.Add("-Password must contain at least one lowercase letter");
                }
                if (!specialEx.IsMatch(newPlayer.Password))
                {
                    newPlayer.PasswordErrorList.Add("-Password must contain at least one special character");
                }

                if (newPlayer.PasswordErrorList.Count != 0)
                {
                    PlayerAddFormViewModel playerForm = new PlayerAddFormViewModel(newPlayer.Email);
                    ViewBag.Code = 'O';
                    playerForm.PasswordErrorList = newPlayer.PasswordErrorList;
                    return(View(playerForm));
                }

                var addedPlayer = m.PlayerAdd(newPlayer);

                if (addedPlayer == false)
                {
                    return(View(newPlayer));
                }
                else
                {
                    var player           = m.PlayerGetByEmail(newPlayer.Email);
                    var addedLeaderboard = m.LeaderboardAdd(player.PLAYER_ID);

                    if (addedLeaderboard)
                    {
                        SendEmailToUser(player.PLAYER_EMAIL, null, 'C', null);
                        return(RedirectToAction("Created"));
                    }
                    else
                    {
                        ViewBag.Code    = 'O';
                        ViewBag.Message = "Oops, something went wrong on our end! Please try again later.";
                        return(View(newPlayer));
                    }
                }
            }
            catch (Exception ex)
            {
                ViewBag.Code = 'O';
                if (ex.InnerException != null)
                {
                    ViewBag.Message = "Oops, something went wrong. " + ex.InnerException.Message;
                }
                else
                {
                    ViewBag.Message = "Oops, something went wrong on our end. " + ex.Message;
                }

                return(View(newPlayer));
            }
        }