Beispiel #1
0
 public static User CheckPasswordAndRole(string email, string password)
 {
     User user;
     using (var db = new PeopleDBEntities())
     {
         try
         {
             user = db.User.FirstOrDefault(u => u.Email == email);
             if (user != null)
             {
                 var tempPassword = Crypto.SHA256(password);
                 if (user.Password == tempPassword)
                 {
                     return user;
                 }
                 else
                 {
                     user = null;
                 }
             }
         }
         catch (Exception)
         {
             throw;
         }
     }
     return user;
 }
        public override string[] GetRolesForUser(string email)
        {
            string[] role = new string[] { };
            using (PeopleDBEntities _db = new PeopleDBEntities())
            {
                try
                {
                    // Получаем пользователя
                    User user = (from u in _db.User
                                 where u.Email == email
                                 select u).FirstOrDefault();
                    if (user != null)
                    {
                        // получаем роль
                        var userRole = _db.Role.Find(user.RoleId);

                        if (userRole != null)
                        {
                            role = new string[] { userRole.Name };
                        }
                    }
                }
                catch
                {
                    role = new string[] { };
                }
            }
            return role;
        }
Beispiel #3
0
 public void RejectFriendship(Guid userId, Guid friendId)
 {
     using (var db = new PeopleDBEntities())
     {
         //TODO Вывод в лог
         var accenpt = db.FriendRelationship.Where(f => f.UserId == userId && f.FriendId == friendId && f.status == false).Delete();
         var accenpti = db.FriendRelationship.Where(f => f.UserId == friendId && f.FriendId == userId && f.status == false).Delete();
         db.SaveChanges();
     }
 }
Beispiel #4
0
 public void AcceptFriendship(Guid userId, Guid friendId)
 {
     using (var db = new PeopleDBEntities())
     {
         //TODO Вывод в лог
         var accenpt = db.FriendRelationship.Where(f => f.UserId == userId && f.FriendId == friendId && f.status == false).Update(f => new FriendRelationship{ status = true});
         var accenptі = db.FriendRelationship.Where(f => f.UserId == friendId && f.FriendId == userId && f.status == false).Update(f => new FriendRelationship { status = true });
         db.SaveChanges();
     }
 }
Beispiel #5
0
        public bool AddUserToFriend(Guid userId, Guid friendId)
        {
            bool result = false;
            using (var db = new PeopleDBEntities())
            {

                var check = (from friend in db.FriendRelationship
                            .Where(f => (f.FriendId == friendId && f.UserId == userId) || (f.FriendId == userId && f.UserId == friendId))
                            select friend).ToList();
                if (check.Count == 0)
                {
                    var entity1 = new FriendRelationship
                    {
                        Id = Guid.NewGuid(),
                        FriendId = friendId,
                        UserId = userId,
                        status = false
                    };
                    var entity2 = new FriendRelationship
                    {
                        Id = Guid.NewGuid(),
                        FriendId = userId,
                        UserId = friendId,
                        status = false
                    };
                    try
                    {

                        db.FriendRelationship.Add(entity1);
                        db.FriendRelationship.Add(entity2);
                        db.SaveChanges();
                        result = true;
                    }
                    catch (DbEntityValidationException e)
                    {
                        foreach (var eve in e.EntityValidationErrors)
                        {
                            Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                eve.Entry.Entity.GetType().Name, eve.Entry.State);
                            foreach (var ve in eve.ValidationErrors)
                            {
                                Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                    ve.PropertyName, ve.ErrorMessage);
                            }
                        }
                        throw;
                    }
                }

            }
            return result;
        }
Beispiel #6
0
 public IEnumerable<User> GetFriends(Guid userId)
 {
     IEnumerable<User> friends = null;
     using (var db = new PeopleDBEntities())
     {
         var friendList = (from f in db.FriendRelationship
                     where f.UserId == userId && f.status == true
                     join u in db.User on f.FriendId equals u.Id
                     select u).ToList();
         friends = friendList;
     }
     return friends;
 }
Beispiel #7
0
        public IEnumerable<User> GetNotifications(Guid userId)
        {
            IEnumerable<User> notify;

            using (var db = new PeopleDBEntities())
            {
                var notifications = (from n in db.FriendRelationship
                                     where userId == n.UserId && n.status == false
                                     join u in db.User on n.FriendId equals u.Id
                                     select u).ToList();

                notify = notifications;

            }
            return notify;
        }
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            User user = null;
            using (var db = new PeopleDBEntities())
            {
                try
                {
                    HttpCookie authCookie = filterContext.HttpContext.Request.Cookies[FormsAuthentication.FormsCookieName];
                    FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);

                    string email = ticket.Name;
                    user = db.User.FirstOrDefault(e => e.Email == email);
                }
                catch (NullReferenceException)
                {
                    new HttpException(403, "Forbidden");
                }

            }
        }
Beispiel #9
0
        public void AddUserToDb(CustomUser model)
        {
            using (var db = new PeopleDBEntities())
            {
                var entity = new User()
                {
                    Id = Guid.NewGuid(),
                    FirstName = model.FirstName,
                    LastName = model.LastName,
                    Age = model.Age,
                    City = model.City,
                    AboutUser = model.Description,
                    Email = model.Email,
                    Password = Crypto.SHA256(model.Password),
                    Gender = CheckGender(model.Sex),
                    ImageBase64 = model.ImageBase64,
                    ImageContentType = model.ImageContentType,
                    RoleId = GetRole("user")
                };
                try
                {

                    db.User.Add(entity);
                    db.SaveChanges();
                }
                catch (DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                            eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                    throw;
                }
            }
        }
        protected override void Initialize(RequestContext requestContext)
        {
            ControllerContext = new ControllerContext(requestContext, this);

            using (var db = new PeopleDBEntities())
            {
                try
                {
                    HttpCookie authCookie = requestContext.HttpContext.Request.Cookies[FormsAuthentication.FormsCookieName];
                    FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);

                    string email = ticket.Name;
                    _user = db.User.FirstOrDefault(e => e.Email == email);
                }
                catch (NullReferenceException)
                {
                    new HttpException(403, "Forbidden");
                }

            }
        }
Beispiel #11
0
 public void RemoveUserFromFriend(Guid userId, Guid friendId)
 {
     using (var db = new PeopleDBEntities())
     {
         var accenpt = db.FriendRelationship.Where(f => f.UserId == userId && f.FriendId == friendId && f.status == true).Delete();
         var accenptі = db.FriendRelationship.Where(f => f.UserId == friendId && f.FriendId == userId && f.status == true).Delete();
         db.SaveChanges();
     }
 }
Beispiel #12
0
        //public IEquatable<CustomUser> GetAllFriends()
        //{
        //}
        //TODO life dropdown list
        public IEnumerable<User> GetSeekingUser(string name)
        {
            IEnumerable<User> usersList;

            using (var entity = new PeopleDBEntities())
            {
                usersList = (from users in entity.User
                             where (users.FirstName + users.LastName).Contains(name)
                             select users).ToList();

            }
            return usersList;
        }
Beispiel #13
0
 public Guid GetRole(string role)
 {
     var roleId = new Guid();
     using (var db = new PeopleDBEntities())
     {
         ((IObjectContextAdapter)db).ObjectContext.CommandTimeout = 180;
         try
         {
             var user = db.Role.FirstOrDefault(u => u.Name == role);
             if (user != null)
             {
                 roleId = user.RoleId;
             }
         }
         catch (Exception)
         {
             throw;
         }
     }
     return roleId;
 }
Beispiel #14
0
 public bool CheckEmail(string email)
 {
     User emailDb;
     bool flag = false;
     using (var db = new PeopleDBEntities())
     {
         emailDb = db.User.FirstOrDefault(u => u.Email.ToLower() == email.ToLower());
     }
     if (emailDb == null)
     {
         flag = true;
     }
     return flag;
 }
        public override bool IsUserInRole(string email, string roleName)
        {
            bool outputResult = false;
            // Находим пользователя
            using (PeopleDBEntities _db = new PeopleDBEntities())
            {
                try
                {
                    // Получаем пользователя
                    User user = (from u in _db.User
                                 where u.Email == email
                                 select u).FirstOrDefault();
                    if (user != null)
                    {
                        // получаем роль
                        var userRole = _db.Role.Find(user.RoleId);

                        //сравниваем
                        if (userRole != null && userRole.Name == roleName)
                        {
                            outputResult = true;
                        }
                    }
                }
                catch
                {
                    outputResult = false;
                }
            }
            return outputResult;
        }