Beispiel #1
0
 public void SendToUser(string username,string conversationId,string iamId,string friendId, string message)
 {
     if (message != null || message != "")
     {
         User iam;
         var msg = new Message()
              {
                  Text = message,
                  Time = DateTime.Now,
                  UserId = Convert.ToInt32(iamId),
                  Ip = HttpContext.Current.Request.UserHostAddress,
                  ConversationId = Convert.ToInt32(conversationId)
              };
         using (DatabaseContext db = new DatabaseContext())
         {
             iam = db.Users.Include("Profile").Where(u => u.Id.ToString() == iamId).FirstOrDefault();
             db.Messages.Add(msg);
             db.SaveChanges();
         }
         var msgToSend = new SendMessageModel()
         {
            AvatarPath=iam.Profile.AvatarPath,
            Text=message,
            Time=msg.Time,
            UserId=iam.Id ,
            FullName=iam.FullName
         };
         Clients.User(username).newMessage(msgToSend);
     }
 }
 public static void AddToFriends(int? id,string name)
 {
     using(DatabaseContext db = new DatabaseContext())
     {
         var iam = db.Users.Include("Profile").Where(u => u.Login == name).FirstOrDefault();
         var myfriend = db.Users.Include("Profile").Where(u => u.Id == id).FirstOrDefault();
         var request = db.Requests.Where(r => r.From == myfriend.Id && r.To == iam.Id).FirstOrDefault();
         db.Requests.Remove(request);
         if (myfriend.Profile.FriendsList == null)
         {
             myfriend.Profile.FriendsList = iam.Id.ToString();
         }
         else
         {
             myfriend.Profile.FriendsList += " " + iam.Id.ToString();
         }
         if (iam.Profile.FriendsList == null)
         {
             iam.Profile.FriendsList = myfriend.Id.ToString();
         }
         else
         {
             iam.Profile.FriendsList += " " + myfriend.Id.ToString();
         }
         db.SaveChanges();
     }
 }
 public static void AddSession(string name)
 {
     using(DatabaseContext db =new DatabaseContext())
     {
         var user = db.Users.Where(u => u.Login == name).FirstOrDefault();
         if (user != null)
         {
             user.LastDate = DateTime.Now;
             db.SaveChanges();
         }
     }
 }
 public static void EditProfile(EditProfileViewModel model,string userLogin)
 {
     using(DatabaseContext db = new DatabaseContext())
     {
         var user=db.Users.Where(u => u.Login == userLogin).FirstOrDefault();
         var profile=db.Profiles.Where(p=>p.Id==user.Id).FirstOrDefault();
         if(user!=null)
         {
             if (model.AvatarPath != null)
             { profile.AvatarPath = model.AvatarPath; }
             profile.Chair = model.Chair;
             profile.Country = model.Country;
             profile.Skype = model.Skype;
             profile.Phone = model.Phone;
             profile.Group = model.Group;
             db.SaveChanges();
         }
     }
 }
        public static bool UserCreate(RegisterViewModel model,ref string role)
        {
            if (model.Login == "admin123")
                role = "admin";
            else role = "user";
            if (MailMessanger.SendMessage("*****@*****.**", model.Email, "*****@*****.**","V80984342375"))
            {
                MD5 md5 = new MD5CryptoServiceProvider();
                string pass = model.Password;
                byte[] checkSum = md5.ComputeHash(Encoding.UTF8.GetBytes(pass));
                string result = BitConverter.ToString(checkSum).Replace("-", String.Empty);

                var user = new User() { FullName = model.SecondName+" "+model.FirstName+" "+model.ThirdName
                    , HashPassword = result
                    , Login = model.Login
                    , Role = role
                    , Email = model.Email ,
                    LastDate=DateTime.Now
                };
                using (DatabaseContext db = new DatabaseContext())
                {
                    db.Users.Add(user);
                    db.SaveChanges();
                    db.Profiles.Add(new Profile() {
                        Id = user.Id, FirstName = model.FirstName,
                        SecondName = model.SecondName,
                        ThirdName = model.ThirdName,
                        Date=model.Date,
                        Gender=model.Gender,
                        AvatarPath = "/Images/noavatar.png"

                    });
                    db.SaveChanges();
                }
                return true;
            }
            else
            {
                return false;
            }
        }
        public static void DeleteFriend(int? id,string name)
        {
            using(DatabaseContext db = new DatabaseContext())
            {
                var user = db.Users.Include("Profile").Where(u => u.Id == id).FirstOrDefault();
                var iam = db.Users.Include("Profile").Where(u => u.Login == name).FirstOrDefault();

                var userlist = Parsing(user.Profile.FriendsList);
                user.Profile.FriendsList = null;
                for(int i=0;i<userlist.Count();i++)
                {
                    if(userlist[i]!=iam.Id.ToString())
                    {
                        if(user.Profile.FriendsList==null)
                        {
                            user.Profile.FriendsList = userlist[i];
                        }
                        else
                        {
                            user.Profile.FriendsList =" "+ userlist[i];
                        }
                    }
                }

                var iamlist = Parsing(iam.Profile.FriendsList);
                iam.Profile.FriendsList = null;
                for (int i = 0; i < iamlist.Count(); i++)
                {
                    if (iamlist[i] != user.Id.ToString())
                    {
                        if (iam.Profile.FriendsList == null)
                        {
                            iam.Profile.FriendsList = iamlist[i];
                        }
                        else
                        {
                            iam.Profile.FriendsList = " " + iamlist[i];
                        }
                    }
                }
                db.SaveChanges();
            }
        }