Exemplo n.º 1
0
        public HttpResponseMessage CreateUser([FromBody] Users user)
        {
            stashkevichEntities db = new stashkevichEntities();

            db.CreateUser(user.UserName, user.Password, user.isAdmin);
            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
Exemplo n.º 2
0
        public string GetMyMessage()
        {
            stashkevichEntities db = new stashkevichEntities();

            db.Configuration.LazyLoadingEnabled = false;
            ClaimsPrincipal principal = Request.GetRequestContext().Principal as ClaimsPrincipal;
            var             Name      = ClaimsPrincipal.Current.Identity.Name;
            var             im        = db.GetUsers().FirstOrDefault(x => x.UserName == Name).id;

            return(JsonConvert.SerializeObject(db.Messages.OrderBy(x => x.date).Where(x => x.id_receiver == im)));
        }
Exemplo n.º 3
0
        public HttpResponseMessage SendMessage([FromBody] Message message)
        {
            stashkevichEntities db        = new stashkevichEntities();
            ClaimsPrincipal     principal = Request.GetRequestContext().Principal as ClaimsPrincipal;
            var      Name   = ClaimsPrincipal.Current.Identity.Name;
            var      sender = db.GetUsers().FirstOrDefault(x => x.UserName == Name).id;
            DateTime date   = DateTime.Now;

            db.CreateMessage(sender, message.reciever, message.text + " FROM: " + Name, date);
            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
Exemplo n.º 4
0
        public override System.Threading.Tasks.Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
        {
            return(System.Threading.Tasks.Task.Factory.StartNew(() =>
            {
                String UserRole;
                stashkevichEntities db = new stashkevichEntities();

                var userName = context.UserName;
                var password = context.Password;
                var userService = new UserService();
                var user = userService.Validate(userName, password);
                if (user != null)
                {
                    var claims = new List <Claim>()
                    {
                        new Claim(ClaimTypes.Sid, Convert.ToString(user.id)),
                        new Claim(ClaimTypes.Name, user.UserName)
                    };

                    if (user.IsAdmin == 1)
                    {
                        UserRole = "Admin";
                    }
                    else
                    {
                        UserRole = "User";
                    }

                    claims.Add(new Claim(ClaimTypes.Role, UserRole));
                    var data = new Dictionary <string, string>
                    {
                        { "userName", user.UserName },
                        { "roles", string.Join(",", UserRole) }
                    };
                    var properties = new AuthenticationProperties(data);

                    ClaimsIdentity oAuthIdentity = new ClaimsIdentity(claims,
                                                                      Startup.OAuthOptions.AuthenticationType);

                    var ticket = new AuthenticationTicket(oAuthIdentity, properties);
                    context.Validated(ticket);
                }
                else
                {
                    context.SetError("invalid_grant", "Either email or password is incorrect");
                }
            }));
        }
Exemplo n.º 5
0
        public string GetUsers()
        {
            stashkevichEntities db = new stashkevichEntities();

            return(JsonConvert.SerializeObject(db.GetUsers()));
        }