예제 #1
0
        /// <summary>
        /// Check existence in database user with facebook id
        /// </summary>
        public bool ExistsUser(FacebookId inFacebook)
        {
            string fbId  = inFacebook.value;
            var    query = Query <DbUserLogin> .EQ(user => user.facebookId, fbId);

            return(UserLogins.Count(query) > 0);
        }
예제 #2
0
        public ActionResult Login(Login login, [FromServices] dbContext db)
        {
            if (ModelState.IsValid)
            {
                try {
                    Users user = db.Users.First(u => u.Email == login.Email && u.Pwd == login.Password);

                    UserLogins ul = login.ToUserLogin();
                    ul.UserAgent = Request.Headers["User-Agent"];
                    ul.IpAddress = HttpContext.Connection.RemoteIpAddress.ToString();
                    ul.Id        = db.NextUserLoginsId();
                    ul.MemberId  = user.Id;
                    db.UserLogins.Add(ul);
                    db.SaveChanges();

                    _initUserSession(user.Id, user.FullName);

                    return(Redirect("/accounts/my"));
                } catch (InvalidOperationException) {
                    ModelState.AddModelError("Password", "Login failed!");
                }
            }

            return(View("Login"));
        }
예제 #3
0
        static void Main(string[] args)
        {
            string srvName = string.Empty;

            Console.WriteLine("current user is: " + Environment.UserDomainName + "\\" + Environment.UserName);

            Console.WriteLine("Enter server name:[ex localhost] ");
            try
            {
                srvName = Console.ReadLine();
                var users = UserLogins.GetUsers(srvName);

                foreach (var user in users)
                {
                    Console.WriteLine("User: "******"  " + user.SessionID + "  " + user.ClientIP + "  " + user.ClientName);
                }

                Console.ReadKey();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message + ex.StackTrace);
            }
            Console.ReadLine();
        }
예제 #4
0
 static void Main(string[] args)
 {
     // this code gets the users from localhost -
     // can change this to a remote hostname on the network
     Console.Write(UserLogins.GetUser("COMPUTER_NAME", "USER_NAME"));
     Console.ReadKey();
 }
예제 #5
0
        private IReadModel userLoggedIn(IGESEvent x)
        {
            var userLoggedIn = (UserLoggedIn)x;
            var userLogins   = new UserLogins
            {
                UserName = userLoggedIn.UserName,
                Id       = userLoggedIn.Id,
                Token    = userLoggedIn.Token,
                Date     = userLoggedIn.Now
            };
            var input  = JsonConvert.SerializeObject(userLoggedIn);
            var output = JsonConvert.SerializeObject(userLogins);

            // noise
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("input: ");
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine(input);
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("output: ");
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine(output);
            // noise
            return(userLogins);
        }
예제 #6
0
        public async Task <IActionResult> Edit(string id, [Bind("LoginProvider,ProviderKey,ProviderDisplayName,UserId")] UserLogins userLogins)
        {
            if (id != userLogins.ProviderKey)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(userLogins);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UserLoginsExists(userLogins.ProviderKey))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(userLogins));
        }
예제 #7
0
        public DbUserLogin GetUser(GameRefId inGameRef)
        {
            string gameRef = inGameRef.value;
            var    query   = Query <DbUserLogin> .EQ(user => user.gameRef, gameRef);

            return(UserLogins.FindOne(query));
        }
예제 #8
0
        public DbUserLogin GetUser(FacebookId fbId)
        {
            string facebookId = fbId.value;
            var    query      = Query <DbUserLogin> .EQ(user => user.facebookId, facebookId);

            return(UserLogins.FindOne(query));
        }
예제 #9
0
        public DbUserLogin GetUser(DeviceId deviceId)
        {
            string value = deviceId.Value;
            var    query = Query <DbUserLogin> .EQ(user => user.deviceId, value);

            return(UserLogins.FindOne(query));
        }
예제 #10
0
        /// <summary>
        /// Check existence in database user with vkontakte id
        /// </summary>
        public bool ExistsUser(VkontakteId inVkontakte)
        {
            string vkId  = inVkontakte.value;
            var    query = Query <DbUserLogin> .EQ(user => user.vkontakteId, vkId);

            return(UserLogins.Count(query) > 0);
        }
예제 #11
0
        public DbUserLogin GetUser(SteamId steamId)
        {
            string sid   = steamId.value;
            var    query = Query <DbUserLogin> .EQ(user => user.steamId, sid);

            return(UserLogins.FindOne(query));
        }
예제 #12
0
        public DbUserLogin GetUser(VkontakteId vkId)
        {
            string vkontakteId = vkId.value;
            var    query       = Query <DbUserLogin> .EQ(user => user.vkontakteId, vkontakteId);

            return(UserLogins.FindOne(query));
        }
예제 #13
0
        public ActionResult Index(UserLogins user)
        {
            {
                var userdetails = db.Users.Where(a => a.UserName == user.UserName &&    // a.Username denote DB col.
                                                 a.UserPassword == user.UserPassword).FirstOrDefault();

                if (userdetails == null)
                {
                    user.LoginErrorMessage = "Wrong User Name or Password";
                    return(View("Index", user));
                }

                else if (userdetails.IsAdmin == "Y")
                {
                    Session["UserId"]   = userdetails.UserID;  // valid user and storing Userid to session for timeout
                    Session["UserName"] = userdetails.UserName;
                    Session["IsAdmin"]  = userdetails.IsAdmin;
                    return(RedirectToAction("MemActivities", "Home"));
                }
                else
                {
                    Session["UserId"]   = userdetails.UserID;  // valid user and storing Userid to session for timeout
                    Session["UserName"] = userdetails.UserName;
                    return(RedirectToAction("MemListing", "Home"));
                }
            }
        }
예제 #14
0
        public DbUserLogin GetUser(Email mail)
        {
            string email = mail.value;
            var    query = Query <DbUserLogin> .EQ(user => user.email, email);

            return(UserLogins.FindOne(query));
        }
예제 #15
0
        /// <summary>
        /// Check exists or not user with login
        /// </summary>
        /// <param name="inlogin">Test login</param>
        /// <returns>TRUE if such user exists in db, FALSE - if user dont exists in database</returns>
        public bool ExistsUser(LoginId inLogin)
        {
            //user logins case independent
            string login = inLogin.value;
            var    query = Query <DbUserLogin> .EQ(user => user.login, login);

            return(UserLogins.Count(query) > 0);
        }
예제 #16
0
 public override async Task AddLoginAsync(ApplicationUser <TKey> user, UserLoginInfo login, CancellationToken cancellationToken)
 {
     cancellationToken.ThrowIfCancellationRequested();
     ThrowIfDisposed();
     user.ThrowIfNull(nameof(user));
     login.ThrowIfNull(nameof(login));
     UserLogins ??= (await UserLoginsTable.GetLoginsAsync(user.Id)).ToList();
     UserLogins.Add(CreateUserLogin(user, login));
 }
예제 #17
0
        public async override Task <IList <UserLoginInfo> > GetLoginsAsync(User user, CancellationToken cancellationToken = default)
        {
            cancellationToken.ThrowIfCancellationRequested();
            ThrowIfDisposed();
            user.CheakArgument();
            var userId = user.Id;

            return(await UserLogins.Where(l => l.UserId.Equals(userId))
                   .Select(l => new UserLoginInfo(l.LoginProvider, l.ProviderKey, l.ProviderDisplayName)).ToListAsync());
        }
예제 #18
0
 public override Task AddLoginAsync(User user, UserLoginInfo login,
                                    CancellationToken cancellationToken = default)
 {
     cancellationToken.ThrowIfCancellationRequested();
     ThrowIfDisposed();
     user.CheakArgument();
     login.CheakArgument();
     UserLogins.Add(CreateUserLogin(user, login));
     return(Task.FromResult(false));
 }
예제 #19
0
        public async Task <IActionResult> Create([Bind("LoginProvider,ProviderKey,ProviderDisplayName,UserId")] UserLogins userLogins)
        {
            if (ModelState.IsValid)
            {
                _context.Add(userLogins);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(userLogins));
        }
예제 #20
0
        public DbUserLogin GetUser(LoginGameRef auth)
        {
            string login   = auth.login;
            string gameRef = auth.gameRef;

            var query = Query.And(
                Query <DbUserLogin> .EQ(user => user.login, login),
                Query <DbUserLogin> .EQ(user => user.gameRef, gameRef)
                );

            return(UserLogins.FindOne(query));
        }
예제 #21
0
        /// <summary>
        /// Get from database user with permissions
        /// </summary>
        /// <param name="auth">Authentication object</param>
        /// <returns>Founded user or null</returns>
        public DbUserLogin GetUser(LoginAuth auth)
        {
            string login    = auth.login;
            string password = auth.password;

            var query = Query.And(
                Query <DbUserLogin> .EQ(user => user.login, login),
                Query <DbUserLogin> .EQ(user => user.password, password)
                );

            return(UserLogins.FindOne(query));
        }
예제 #22
0
        public override async Task RemoveLoginAsync(ApplicationUser <TKey> user, string loginProvider, string providerKey, CancellationToken cancellationToken)
        {
            cancellationToken.ThrowIfCancellationRequested();
            ThrowIfDisposed();
            user.ThrowIfNull(nameof(user));
            UserLogins ??= (await UserLoginsTable.GetLoginsAsync(user.Id)).ToList();
            var userLogin = await FindUserLoginAsync(user.Id, loginProvider, providerKey, cancellationToken);

            if (userLogin != null)
            {
                UserLogins.Remove(userLogin);
            }
        }
예제 #23
0
        /// <summary>
        /// Retrieves the associated logins for the specified <param ref="user"/>.
        /// </summary>
        /// <param name="user">The user whose associated logins to retrieve.</param>
        /// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
        /// <returns>
        /// The <see cref="Task"/> for the asynchronous operation, containing a list of <see cref="UserLoginInfo"/> for the specified <paramref name="user"/>, if any.
        /// </returns>
        public async override Task <IList <UserLoginInfo> > GetLoginsAsync(User user, CancellationToken cancellationToken = default(CancellationToken))
        {
            cancellationToken.ThrowIfCancellationRequested();
            ThrowIfDisposed();
            if (user == null)
            {
                throw new ArgumentNullException(nameof(user));
            }
            var userId = user.Id;

            return(await UserLogins.Where(l => l.UserId.Equals(userId))
                   .Select(l => new UserLoginInfo(l.LoginProvider, l.ProviderKey, l.ProviderDisplayName)).ToListAsync(cancellationToken));
        }
    static void Main(string[] args)
    {
        var userLogins = new UserLogins();
        // this code gets the users from localhost -
        // can change this to a remote hostname on the network
        var users = UserLogins.GetUsers("localhost");

        foreach (var user in users)
        {
            Console.WriteLine("User: " + user);
        }
        Console.ReadKey();
    }
예제 #25
0
        public bool RemoveUserLogin(UserLogins userLogin)
        {
            var result = false;

            var info = _databaseContext.UserLogins.FirstOrDefault(x => x.LoginProvider == userLogin.LoginProvider && x.ProviderKey == userLogin.ProviderKey);

            if (info != null)
            {
                _databaseContext.UserLogins.Remove(info);
            }
            result = _databaseContext.SaveChanges() > 0;
            return(result);
        }
예제 #26
0
        public bool AddUserLogin(UserLogins userLogin)
        {
            var result = false;

            Users user = _databaseContext.Users.Find(userLogin.UserId);

            _databaseContext.UserLogins.Add(new UserLogins {
                LoginProvider = userLogin.LoginProvider,
                UserId        = user.Id,
                Users         = user,
                ProviderKey   = userLogin.ProviderKey
            });
            result = _databaseContext.SaveChanges() > 0;
            return(result);
        }
예제 #27
0
        /// <summary>
        /// Removes the <paramref name="loginProvider"/> given from the specified <paramref name="user"/>.
        /// </summary>
        /// <param name="user">The user to remove the login from.</param>
        /// <param name="loginProvider">The login to remove from the user.</param>
        /// <param name="providerKey">The key provided by the <paramref name="loginProvider"/> to identify a user.</param>
        /// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
        /// <returns>The <see cref="Task"/> that represents the asynchronous operation.</returns>
        public override async Task RemoveLoginAsync(User user, string loginProvider, string providerKey,
                                                    CancellationToken cancellationToken = default(CancellationToken))
        {
            cancellationToken.ThrowIfCancellationRequested();
            ThrowIfDisposed();
            if (user == null)
            {
                throw new ArgumentNullException(nameof(user));
            }
            var entry = await FindUserLoginAsync(user.Id, loginProvider, providerKey, cancellationToken);

            if (entry != null)
            {
                UserLogins.Remove(entry);
            }
        }
예제 #28
0
 /// <summary>
 /// Adds the <paramref name="login"/> given to the specified <paramref name="user"/>.
 /// </summary>
 /// <param name="user">The user to add the login to.</param>
 /// <param name="login">The login to add to the user.</param>
 /// <param name="cancellationToken">The <see cref="CancellationToken"/> used to propagate notifications that the operation should be canceled.</param>
 /// <returns>The <see cref="Task"/> that represents the asynchronous operation.</returns>
 public override Task AddLoginAsync(User user, UserLoginInfo login,
                                    CancellationToken cancellationToken = default(CancellationToken))
 {
     cancellationToken.ThrowIfCancellationRequested();
     ThrowIfDisposed();
     if (user == null)
     {
         throw new ArgumentNullException(nameof(user));
     }
     if (login == null)
     {
         throw new ArgumentNullException(nameof(login));
     }
     UserLogins.Add(CreateUserLogin(user, login));
     return(Task.FromResult(false));
 }
        // Parámetros que se deben enviar en el body-request: LoginInfoModel => UPCCode, FirstName, LastName, Names, Career, Modality, CreationDate y CreationUser
        public void RegisterLoginInfo(LoginInfoModel model)
        {
            UserLogins userLogin = new UserLogins {
                UPCCode      = model.UPCCode,
                FirstName    = model.FirstName,
                LastName     = model.LastName,
                Names        = model.Names,
                Career       = model.Career,
                Modality     = model.Modality,
                CreationDate = DateTime.Now,
                CreationUser = model.UPCCode
            };

            db.UserLogins.Add(userLogin);
            db.SaveChanges();
        }
예제 #30
0
        public DbUserLogin CreateUser(VkontakteId vkontakteId)
        {
            DbUserLogin databaseUser = new DbUserLogin {
                creationTime  = CommonUtils.SecondsFrom1970(),
                email         = string.Empty,
                gameRef       = Guid.NewGuid().ToString(),
                login         = vkontakteId.value,
                password      = vkontakteId.value,
                facebookId    = string.Empty,
                vkontakteId   = vkontakteId.value,
                nebulaCredits = 0,
                steamId       = string.Empty,
                deviceId      = string.Empty
            };
            var result = UserLogins.Save(databaseUser);

            return(databaseUser);
        }