protected bool SendMessageToServer(NewMessageModel message, int id, string email)
        {
            Message msg = new Message();

            msg.SenderId = id;
            msg.Content  = message.MessageContent;
            msg.Subject  = message.SubjectText;
            msg.SendDate = DateTime.Now;

            context.Messages.Add(msg);
            context.SaveChanges();
            Models.NewMessageModel.SendMessageParams(context, msg, id, email, message.Addresses);
            context.SaveChanges();
            return(true);
        }
Esempio n. 2
0
        public ActionResult Delete(int id, int adminId)
        {
            context.Users.Where(x => x.Id == id).ToList()[0].Role = -2;
            context.SaveChanges();

            AdminPageModel adminPageModel = new AdminPageModel();

            adminPageModel.IsValid = true;
            adminPageModel.AdminId = adminId;
            adminPageModel.Users   = GetActiveUsers(adminId);

            this.AdminPageModel = adminPageModel;
            this.t = true;
            return(RedirectToAction("AdminPage"));
        }
Esempio n. 3
0
        public void InvalidAddresses()
        {
            var options = new DbContextOptionsBuilder <OutlookContext>()
                          .UseInMemoryDatabase(databaseName: "NetOutlookDatabaseMock")
                          .Options;
            ValidationResult testResult;

            using (var context = new OutlookContext(options))
            {
                ClearContext(context);
                context.Users.Add(new User {
                    Name = "Adam", Surname = "Kowalski", EmailAddress = "*****@*****.**"
                });
                context.Users.Add(new User {
                    Name = "Jurgen", Surname = "Kowalski", EmailAddress = "*****@*****.**"
                });
                context.SaveChanges();
                NewMessageModel model = new NewMessageModel();
                model.Direct = "[email protected];;;a;;";
                model.CC     = "";
                model.BCC    = "";
                testResult   = model.Validate(context, 2, "*****@*****.**");
            }
            Assert.AreNotEqual(testResult, ValidationResult.Success);
        }
Esempio n. 4
0
        public void Group()
        {
            var options = new DbContextOptionsBuilder <OutlookContext>()
                          .UseInMemoryDatabase(databaseName: "NetOutlookDatabaseMock")
                          .Options;
            ValidationResult testResult;

            using (var context = new OutlookContext(options))
            {
                ClearContext(context);
                context.Users.Add(new User {
                    Name = "Adam", Surname = "Kowalski", EmailAddress = "*****@*****.**"
                });
                context.Users.Add(new User {
                    Name = "Jurgen", Surname = "Kowalski", EmailAddress = "*****@*****.**"
                });
                context.Users.Add(new User {
                    Name = "Janusz", Surname = "Kowalski", EmailAddress = "*****@*****.**"
                });
                context.Groups.Add(new Group {
                    GroupName = "Kowalscy", OwnerId = 2
                });
                context.GroupMembers.Add(new GroupMember {
                    GroupId = 1, UserId = 1
                });
                context.SaveChanges();
                NewMessageModel model = new NewMessageModel();
                model.Direct = "g:Kowalscy;[email protected]";
                model.CC     = "";
                model.BCC    = "";
                testResult   = model.Validate(context, 2, "*****@*****.**");
            }
            Assert.AreEqual(testResult, ValidationResult.Success);
        }
Esempio n. 5
0
 public void ClearContext(OutlookContext context)
 {
     context.GroupMembers.RemoveRange(context.GroupMembers);
     context.MessageReceivers.RemoveRange(context.MessageReceivers);
     context.Users.RemoveRange(context.Users);
     context.Groups.RemoveRange(context.Groups);
     context.Messages.RemoveRange(context.Messages);
     context.SaveChanges();
 }
Esempio n. 6
0
        public IActionResult Message(int id)
        {
            List <System.Security.Claims.Claim> c = User.Claims.Where(x => x.Type.Contains("mail")).ToList();
            string email  = c[0].Value;
            int    userId = context.GetUserId(email);

            context.MessageReceivers.Where(x => x.MessageId == id && x.UserId == userId).ToList()[0].Read = true;
            context.SaveChanges();

            MessageReceiver mr       = context.MessageReceivers.Where(x => x.MessageId == id && x.UserId == userId).ToList()[0];
            int             senderId = context.Messages.Where(x => x.Id == mr.MessageId).ToList()[0].SenderId;
            User            sender   = context.Users.Where(x => x.Id == senderId).ToList()[0];

            InboxMessage message = GetMessageModel(mr, sender);
            string       cc      = "";

            if (mr.ReceiveType != 2)
            {
                foreach (MessageReceiver m in context.MessageReceivers.Where(x => x.MessageId == mr.MessageId && x.UserId != userId && x.ReceiveType == 1).ToList())
                {
                    User u = context.Users.Where(x => x.Id == m.UserId).ToList()[0];
                    cc += u.Name + " " + u.Surname + " <" + u.EmailAddress + ">, ";
                }
                if (cc.Length > 0)
                {
                    cc = cc.Substring(0, cc.Length - 2);
                }
            }
            message.CC = cc;

            MessageViewModel messageViewModel = new MessageViewModel();

            messageViewModel.message = message;

            return(View(messageViewModel));
        }
Esempio n. 7
0
        protected bool EditGroupInServer(EditGroupModel group, int id, string email)
        {
            Group gr = new Group();

            gr.OwnerId   = id;
            gr.GroupName = group.GroupName;
            //gr.Id = context.Groups.Max<Group>(gr => gr.Id) + 1;
            gr.Members = null;

            Group gToDelate = context.Groups.Where(g => g.Id == group.OldGroupId).FirstOrDefault();

            context.Groups.Remove(gToDelate);
            context.GroupMembers.RemoveRange(context.GroupMembers.Where(g => g.GroupId == group.OldGroupId));
            context.SaveChanges();

            context.Groups.Add(gr);
            context.SaveChanges();

            gr.Members = Models.EditGroupModel.GroupManagerParams(context, gr, id, email, group.Addresses);
            context.SaveChanges();

            return(true);
        }