public static bool Register(User user)
 {
     if (user == null || UserExists(user.Login))
         return false;
     var usr = User.CreateUser(user.Login, user.Name, user.DateOfBirth, user.Password, user.DateReg);
     Application.CurrentUser = usr;
     return true;
 }
 private void OkClick(object sender, RoutedEventArgs e)
 {
     if (Login.Text.Length < 3 || Pass.Password.Length < 6 || ConfirmPass.Password.Length < 6 || UserName.Text.Length < 3 || Birth.SelectedDate == null)
     {
         MessageBox.Show("Not all fields have enough chars", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
         return;
     }
     if (Pass.Password != ConfirmPass.Password)
     {
         MessageBox.Show("Passwords are not equals", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
         return;
     }
     RegUser = new User(Login.Text, UserName.Text, (DateTime) Birth.SelectedDate, Pass.Password, DateTime.Today);
     BL.Authentication.Register(RegUser);
     RightPass = true;
     DialogResult = true;
 }
        public static User CreateUser(string login, string name, DateTime birth, string pass, DateTime dateReg)
        {
            var set = DAL.SqlRepository.Users;
            var user = new User();

            if (set.Find(user.Login) == null)
            {
                user.Login = login;
                user.Name = name;
                user.DateOfBirth = birth;
                user.Password = Convert.ToInt32(BL.Application.Hash(pass));
                user.DateReg = dateReg;

                set.Add(user);
                DAL.SqlRepository.Save();

                return user;
            }
            return null;
        }
        public static User CreateUser(string login, string name, DateTime birth, int pass, DateTime dateReg)
        {
            var set = DAL.SqlRepository.Users;
            var user = new User();

            if (set.Find(user.Login) == null)
            {
                user.Login = login;
                user.Name = name;
                user.DateOfBirth = birth;
                user.Password = pass;
                user.DateReg = dateReg;

                set.Add(user);
                DAL.SqlRepository.Save();

                return user;
            }
            return null;
        }
 protected bool Equals(User other)
 {
     return string.Equals(Login, other.Login) && string.Equals(Name, other.Name) &&
            DateOfBirth.Equals(other.DateOfBirth) && Password == other.Password && DateReg.Equals(other.DateReg);
 }
 public static void ResetPass(User user, string newPass)
 {
     var u = (User)DAL.SqlRepository.Users.Find(user.Login);
     //u.Password = newPass.GetHashCode();
     u.Password = BL.Application.Hash(newPass);
     DAL.SqlRepository.DBContext.SaveChanges();
 }
 public static void DeleteUser(User user)
 {
     var set = DAL.SqlRepository.Users;
     var usr = set.Find(user.Login);
     if (usr != null)
     {
         set.Remove(usr);
         DAL.SqlRepository.Save();
     }
 }
        public static Tree CreateTree(User user, string userLogin, string name, string description)
        {
            var set = DAL.SqlRepository.Trees;
            var tree = (Tree)set.Create(typeof(Tree));

            tree.TreeUser = user;
            tree.TreeUserLogin = userLogin;
            tree.MainTask = generateRoot();
            tree.MainTaskId = tree.MainTask.Id;
            tree.Name = name;
            tree.Description = description;
            tree.LastChangesTime = DateTime.Now;

            set.Add(tree);
            DAL.SqlRepository.Save();

            return tree;
        }
 public static List<Tree> FindTreesForUser(User user)
 {
     return DAL.SqlRepository.Trees
         .Cast<Tree>()
         .Where(x => x.TreeUser.Login == user.Login)
         .ToList();
 }