private Task<Users> VerifyLoginInformation(LoginInformation loginInformation) {
            using (CoinManagementContext coinManagementContext = new CoinManagementContext())
            {
                Users foundUser;
                try
                {
                    foundUser = coinManagementContext.Users.SingleOrDefault(user => user.Username.Equals(loginInformation.Username) || user.Email.Equals(loginInformation.Username));
                } catch(InvalidOperationException ex)
                {
                    return Task.FromResult<Users>(null);
                }

                if (foundUser != null)
                {
                    if (foundUser.Password.Equals(loginInformation.Password))
                    { //next iteration encryption
                        return Task.FromResult<Users>(foundUser);
                    }
                    else
                    {
                        return Task.FromResult<Users>(null);
                    }
                }
                
            }  

            return Task.FromResult<Users>(null);
        }
 private Task <Users> AddUserTask(Users newUser)
 {
     using (CoinManagementContext coinManagementContext = new CoinManagementContext())
     {
         Users returnUser = coinManagementContext.Users.Add(newUser);
         coinManagementContext.SaveChanges();
         return(Task.FromResult <Users>(returnUser));
     }
 }
        public static int GetUserIdByUsername(String username)
        {
            using (CoinManagementContext coinManagementContext = new CoinManagementContext())
            {
                var user = coinManagementContext.Users.SingleOrDefault(u => u.Username.Equals(username));
                if (user != null)
                {
                    return(user.ID);
                }

                return(0);
            }
        }
Exemple #4
0
        public HttpResponseMessage SignUp(Users newUser)
        {
            using (CoinManagementContext coinManagementContext = new CoinManagementContext())
            {
                var foundUser = coinManagementContext.Users.SingleOrDefault(u => u.Username.Equals(newUser.Username));
                if (foundUser != null)
                {
                    //TODO
                }
            }

            return(null);
        }
        public ActionResult AddFriend(string username)
        {
            using (CoinManagementContext coinManagementContext = new CoinManagementContext())
            {
                string      currentUsername = User.Identity.Name;
                FriendsList friendsList     = new FriendsList();
                friendsList.FriendOwner = UserService.GetUserIdByUsername(currentUsername);
                friendsList.Friend      = UserService.GetUserIdByUsername(username);

                coinManagementContext.FriendsLists.Add(friendsList);
            }

            //TODO - view friend added
            return(View());
        }
        public void FetchUserData()
        {
            CoinManagementContext coinManagementContext = new CoinManagementContext();
            List <Users>          usersList             = coinManagementContext.Users.ToList();
            List <Coins>          coinsList             = coinManagementContext.Coins.ToList();

            foreach (Users user in usersList)
            {
                Debug.WriteLine("Name of the user: "******"Coin user id: " + coin.UserID);
            }
        }
        public ActionResult UserList()
        {
            using (CoinManagementContext coinManagementContext = new CoinManagementContext())
            {
                List <Users>        users = coinManagementContext.Users.ToList();
                List <UserListItem> items = new List <UserListItem>();

                foreach (Users user in users)
                {
                    UserListItem item = new UserListItem();
                    item.Name           = user.Name;
                    item.Role           = user.UserRole;
                    item.NumberOfItems  = 0; //TODO
                    item.NumberOfTrades = 0; //TODO
                    items.Add(item);
                }

                ViewBag.Message = items;
                return(View());
            }
        }
        public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
        {
            var identity = new ClaimsIdentity(context.Options.AuthenticationType);

            using (CoinManagementContext coinManagementContext = new CoinManagementContext())
            {
                var foundUser = coinManagementContext.Users.SingleOrDefault(u => u.Username.Equals(context.UserName));
                if (foundUser != null && foundUser.Password.Equals(context.Password))
                {
                    identity.AddClaim(new Claim(ClaimTypes.Role, foundUser.UserRole));
                    identity.AddClaim(new Claim("username", context.UserName));
                    identity.AddClaim(new Claim(ClaimTypes.Name, context.UserName));
                    context.Validated(identity);
                }
                else
                {
                    context.SetError("invalid_grant", "Provided username and password is incorrect");
                    return;
                }
            }
        }