Exemplo n.º 1
0
        public ActionResult PostMessage(MessageReplyViewModel vm)
        {
            Console.WriteLine("Hello i am here ---------------------------------------\n");
            UserDAL    usrDAL = new UserDAL();
            MessageDAL msgDAL = new MessageDAL();
            /*var username = User.Identity.Name;*/
            var    username = (string)Session["UserLoggedIn"];
            string fullName = "";
            int    msgid    = 0;

            if (!string.IsNullOrEmpty(username))
            {
                var user = usrDAL.Users.SingleOrDefault(u => u.FirstName == username);
                fullName = string.Concat(new string[] { user.FirstName, " ", user.LastName });
            }
            Message messagetoPost = new Message();

            if (vm.Message.Subject != string.Empty && vm.Message.MessageToPost != string.Empty)
            {
                messagetoPost.DatePosted    = DateTime.Now;
                messagetoPost.Subject       = vm.Message.Subject;
                messagetoPost.MessageToPost = vm.Message.MessageToPost;
                messagetoPost.From          = fullName;

                msgDAL.MessagesDal.Add(messagetoPost);
                msgDAL.SaveChanges();
                msgid = messagetoPost.Id;
            }

            return(RedirectToAction("MessagePassing", "Forum", new { Id = msgid }));
        }
Exemplo n.º 2
0
        public ActionResult Create(MessageReplyViewModel vm, string Subject, string MessageToPost)
        {
            var    username = User.Identity.Name;
            string fullName = "";
            int    msgid    = 0;

            if (!string.IsNullOrEmpty(username))
            {
                fullName = username;
            }
            Message messagetoPost = new Message();

            if (Subject != string.Empty && MessageToPost != string.Empty)
            {
                messagetoPost.DatePosted    = DateTime.Now;
                messagetoPost.Subject       = Subject;
                messagetoPost.MessageToPost = MessageToPost;
                messagetoPost.From          = fullName;

                db.Messages.Add(messagetoPost);
                db.SaveChanges();
                msgid = messagetoPost.Id;
            }

            //return RedirectToAction("Index", "Contestants", new { Id = msgid });
            //return PartialView("_ChallengeSection", vm);
            //viewModel=your viewModel
            //return PartialView("_ChallengeSection", vm);

            return(Json(new { Url = "Contestants/Index" }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 3
0
        public ActionResult PostMessage(MessageReplyViewModel vm)
        {
            var    username = User.Identity.Name;
            string fullName = "";
            int    msgid    = 0;

            if (!string.IsNullOrEmpty(username))
            {
                var user = dbContext.Users.SingleOrDefault(u => u.UserName == username);
                fullName = user.fullname;
            }
            Message messagetoPost = new Message();

            if (vm.Message.Subject != string.Empty && vm.Message.MessageToPost != string.Empty)
            {
                messagetoPost.DatePosted    = DateTime.Now;
                messagetoPost.Subject       = vm.Message.Subject;
                messagetoPost.MessageToPost = vm.Message.MessageToPost;
                messagetoPost.From          = fullName;

                db.Messages.Add(messagetoPost);
                db.SaveChanges();
                msgid = messagetoPost.Id;
            }

            return(RedirectToAction("Index2", "Home", new { Id = msgid }));
        }
Exemplo n.º 4
0
        public ActionResult PostMessage(MessageReplyViewModel vm, int?idTarea)
        {
            var    username = User.Identity.Name;
            string fullName = "";
            int    msgid    = 0;

            if (!string.IsNullOrEmpty(username))
            {
                var user = dbContext.Users.SingleOrDefault(u => u.UserName == username);
                fullName = string.Concat(new string[] { user.FirstName, " ", user.LastName });
            }
            Message messagetoPost = new Message();

            if (vm.Message.Subject != string.Empty && vm.Message.MessageToPost != string.Empty)
            {
                messagetoPost.DatePosted    = DateTime.Now;
                messagetoPost.Subject       = vm.Message.Subject;
                messagetoPost.MessageToPost = vm.Message.MessageToPost;
                messagetoPost.From          = fullName;
                messagetoPost.TareaID       = idTarea;

                dbContext.Messages.Add(messagetoPost);
                //dbContext.Entry(messagetoPost.Message_Tarea).State = EntityState.Unchanged;
                dbContext.SaveChanges();
                msgid = messagetoPost.Id;
            }

            return(RedirectToAction("Index", "Mensajes", new { Id = msgid, idTarea = idTarea }));
        }
        public async Task <ActionResult> Reply(MessageReplyViewModel message)
        {
            if (!ModelState.IsValid)
            {
                PreventSpamAttribute.Reset(HttpContext);

                if (Request.IsAjaxRequest())
                {
                    return(new JsonResult(CommandResponse.FromStatus(Status.Invalid, ModelState.GetFirstErrorMessage())));
                }
                else
                {
                    return(View());
                }
            }

            if (message.ID <= 0)
            {
                return(RedirectToAction("Sent", "Messages"));
            }

            var cmd      = new SendMessageReplyCommand(message.ID, message.Body).SetUserContext(User);
            var response = await cmd.Execute();

            return(JsonResult(response));
        }
Exemplo n.º 6
0
        public ActionResult Index(int?Id, int?page)
        {
            int pageSize             = 3;
            int pageNumber           = (page ?? 1);
            MessageReplyViewModel vm = new MessageReplyViewModel()
            {
                Contestants     = db.Contestants.OrderByDescending(x => x.ID).Take(10).ToList(),
                Categories      = db.Categories.ToList(),
                KnownTalents    = db.KnownTalents.ToList(),
                Blogs           = db.Blogs.ToList(),
                ChallengeVideos = db.ChallengeVideos.ToList()
            };
            var count = db.Messages.Count();

            decimal totalPages = count / (decimal)pageSize;

            ViewBag.TotalPages = Math.Ceiling(totalPages);
            vm.Messages        = db.Messages
                                 .OrderByDescending(x => x.DatePosted).ToPagedList(pageNumber, pageSize);
            ViewBag.MessagesInOnePage = vm.Messages;
            ViewBag.PageNumber        = pageNumber;

            if (Id != null)
            {
                var replies = db.Replies.Where(x => x.MessageId == Id.Value).OrderByDescending(x => x.ReplyDateTime).ToList();
                if (replies != null)
                {
                    foreach (var rep in replies)
                    {
                        MessageReplyViewModel.MessageReply reply = new MessageReplyViewModel.MessageReply();
                        reply.ReplyVideo     = rep.ReplyVideo;
                        reply.MessageId      = rep.MessageId;
                        reply.Id             = rep.Id;
                        reply.ReplyMessage   = rep.ReplyMessage;
                        reply.ReplyDateTime  = rep.ReplyDateTime;
                        reply.MessageDetails = db.Messages.Where(x => x.Id == rep.MessageId).Select(s => s.MessageToPost).FirstOrDefault();
                        reply.ReplyFrom      = rep.ReplyFrom;
                        vm.Replies.Add(reply);
                    }
                }
                else
                {
                    vm.Replies.Add(null);
                }


                ViewBag.MessageId = Id.Value;
            }
            if (Request.IsAjaxRequest())
            {
                //viewModel=your viewModel
                return(PartialView("_ChallengeSection", vm));
            }
            else
            {
                return(View(vm));
            }
        }
Exemplo n.º 7
0
        /*[Authorize]*/
        public ActionResult ReplyMessage(MessageReplyViewModel vm, int messageId)
        {
            System.Diagnostics.Debug.WriteLine("Hello i am here ----%d-----------------------------------\n", messageId);

            /*var username = User.Identity.Name;*/
            var        username = (string)Session["UserLoggedIn"];
            UserDAL    usrDAL   = new UserDAL();
            ReplyDAL   replyDAL = new ReplyDAL();
            MessageDAL msgDAL   = new MessageDAL();
            string     fullName = "";

            if (!string.IsNullOrEmpty(username))
            {
                var user = usrDAL.Users.SingleOrDefault(u => u.FirstName == username);
                fullName = string.Concat(new string[] { user.FirstName, " ", user.LastName });
            }
            if (vm.Reply.ReplyMessage != null)
            {
                Reply _reply = new Reply();
                _reply.ReplyDateTime = DateTime.Now;
                /*_reply.Id = messageId;*/
                _reply.MessageId    = messageId;
                _reply.ReplyFrom    = fullName;
                _reply.ReplyMessage = vm.Reply.ReplyMessage;
                replyDAL.Replies.Add(_reply);
                replyDAL.SaveChanges();
            }
            //reply to the message owner          - using email template

            /*
             * var messageOwner = msgDAL.MessagesDal.Where(x => x.Id == messageId).Select(s => s.From).FirstOrDefault();
             * var users = from user in usrDAL.Users
             *          orderby user.FirstName
             *          select new
             *          {
             *              FullName = user.FirstName + " " + user.LastName,
             *              UserEmail = user.Email
             *          };
             *
             * var uemail = users.Where(x => x.FullName == messageOwner).Select(s => s.UserEmail).FirstOrDefault();
             * SendGridMessage replyMessage = new SendGridMessage();
             * replyMessage.From = new EmailAddress(username);
             * replyMessage.Subject = "Reply for your message :" + msgDAL.MessagesDal.Where(i => i.Id == messageId).Select(s => s.Subject).FirstOrDefault();
             * replyMessage.PlainTextContent = vm.Reply.ReplyMessage;
             *
             *
             *
             * replyMessage.AddTo(uemail);
             */
            /*
             * var credentials = new NetworkCredential("Team8_1337", "Team81337");
             * CredentialCache myCache = new CredentialCache();
             * myCache.Add(new Uri("www.contoso.com"), "Basic", myCred);
             * var transportweb = new WebRequest(credentials);
             * transportweb.DeliverAsync(replyMessage);*/
            return(RedirectToAction("MessagePassing", "Forum", new { Id = messageId }));
        }
Exemplo n.º 8
0
        public ActionResult PostMessage(MessageReplyViewModel vm)
        {
            //var username = User.Identity.Name;
            //string fullName = "";
            int msgid = 0;

            int    teacherid = Convert.ToInt32(Session["Student"]);
            int    tempclassid;
            int    originalclassid;
            string Regno;
            var    getteacherid = dbContext.Students.Find(teacherid);

            tempclassid = getteacherid.Class_Id;
            Regno       = getteacherid.RegNo;
            var classid1 = dbContext.Tbl_Class.Where(x => x.Class_Id == tempclassid).SingleOrDefault();

            originalclassid = classid1.Class_Id;
            //AB enroll course wala dropdown ajayega
            CourseDBHandle gc = new CourseDBHandle();

            List <tblEnrollStudentInCourseValidation> list = gc.GetSudentEnrollCourse(Regno, originalclassid);

            ViewBag.course = new SelectList(list, "courseId", "courseName");
            int schoolid;
            int classid;

            schoolid = getteacherid.School_Id;
            classid  = getteacherid.Class_Id;

            //if (!string.IsNullOrEmpty(username))
            //{
            //    var user = dbContext.loginTables.SingleOrDefault(u => u.Name == username);
            //    fullName = string.Concat(new string[] { user.Name });
            //}
            Message messagetoPost = new Message();

            if (vm.Message.Subject != string.Empty && vm.Message.MessageToPost != string.Empty)
            {
                messagetoPost.DatePosted    = DateTime.Now;
                messagetoPost.Subject       = vm.Message.Subject;
                messagetoPost.MessageToPost = vm.Message.MessageToPost;
                messagetoPost.From          = Session["StudentName"].ToString();
                messagetoPost.Class_Id      = classid;
                messagetoPost.Role_ID       = 4;
                messagetoPost.UserId        = teacherid;
                messagetoPost.courseId      = vm.Message.courseId;


                messagetoPost.SchoolId = schoolid;
                dbContext.Messages.Add(messagetoPost);
                dbContext.SaveChanges();
                msgid = messagetoPost.Id;
            }

            return(RedirectToAction("Index", "Message", new { Id = msgid, courseid = vm.Message.courseId }));
        }
Exemplo n.º 9
0
        public ActionResult Index(int?Id, int?page, int?courseid)
        {
            int teacherid = Convert.ToInt32(Session["Student"]);

            int schoolid;
            int classid;
            //int courseid = Convert.ToInt32(TempData["course"]);
            var getteacherid = dbContext.Students.Find(teacherid);

            schoolid = getteacherid.School_Id;
            classid  = getteacherid.Class_Id;



            int pageSize             = 5;
            int pageNumber           = (page ?? 1);
            MessageReplyViewModel vm = new MessageReplyViewModel();
            var count = dbContext.Messages.Count();

            decimal totalPages = count / (decimal)pageSize;

            ViewBag.TotalPages        = Math.Ceiling(totalPages);
            vm.Messages               = dbContext.Messages.Where(x => x.Class_Id == classid && x.SchoolId == schoolid && x.courseId == courseid).OrderBy(x => x.DatePosted).ToPagedList(pageNumber, pageSize);
            ViewBag.MessagesInOnePage = vm.Messages;
            ViewBag.PageNumber        = pageNumber;

            if (Id != null)
            {
                var replies = dbContext.Replies.Where(x => x.MessageId == Id.Value).OrderByDescending(x => x.ReplyDateTime).ToList();
                if (replies != null)
                {
                    foreach (var rep in replies)
                    {
                        MessageReplyViewModel.MessageReply reply = new MessageReplyViewModel.MessageReply();
                        reply.MessageId      = rep.MessageId;
                        reply.Id             = rep.Id;
                        reply.ReplyMessage   = rep.ReplyMessage;
                        reply.ReplyDateTime  = rep.ReplyDateTime;
                        reply.MessageDetails = dbContext.Messages.Where(x => x.Id == rep.MessageId).Select(s => s.MessageToPost).FirstOrDefault();
                        reply.ReplyFrom      = rep.ReplyFrom;
                        vm.Replies.Add(reply);
                    }
                }
                else
                {
                    vm.Replies.Add(null);
                }


                ViewBag.MessageId = Id.Value;
            }

            return(View(vm));
        }
Exemplo n.º 10
0
        public ActionResult Create(HttpPostedFileBase filelist)
        {
            var username = User.Identity.GetUserName();

            MessageReplyViewModel vm = new MessageReplyViewModel();

            ViewBag.Residence    = new SelectList(db.Residences, "ResName", "ResName", vm.Residence);
            ViewBag.StudentEmail = new SelectList(db.Students, "Email", "Email", vm.StudentEmail);

            return(View(vm));
        }
Exemplo n.º 11
0
        public ActionResult Create(int?idTarea)
        {
            MessageReplyViewModel vm = new MessageReplyViewModel();

            //NJB-ID de la tarea
            ViewBag.Desc1   = dbContext.Tareas.Where(x => x.TareaID == idTarea).Select(s => s.TareaDescripcion).FirstOrDefault();
            ViewBag.Desc2   = dbContext.Tareas.Where(x => x.TareaID == idTarea).Select(s => s.TareaDescripcion2).FirstOrDefault();
            ViewBag.idTarea = idTarea;
            //
            return(View(vm));
        }
Exemplo n.º 12
0
        public ActionResult Index(int?Id, int?page, int?idTarea)
        {
            int pageSize             = 5;
            int pageNumber           = (page ?? 1);
            MessageReplyViewModel vm = new MessageReplyViewModel();
            var count = dbContext.Messages.Count();

            //NJB
            if (idTarea != null)
            {
                count = dbContext.Messages.Where(x => x.TareaID == idTarea.Value).Count();
            }
            //NJB

            decimal totalPages = count / (decimal)pageSize;

            ViewBag.TotalPages = Math.Ceiling(totalPages);
            vm.Messages        = dbContext.Messages.Where(x => x.TareaID == idTarea.Value)
                                 .OrderBy(x => x.DatePosted).ToPagedList(pageNumber, pageSize);
            ViewBag.MessagesInOnePage = vm.Messages;
            ViewBag.PageNumber        = pageNumber;

            if (Id != null)
            {
                var replies = dbContext.Replies.Where(x => x.MessageId == Id.Value).OrderByDescending(x => x.ReplyDateTime).ToList();
                if (replies != null)
                {
                    foreach (var rep in replies)
                    {
                        MessageReplyViewModel.MessageReply reply = new MessageReplyViewModel.MessageReply();
                        reply.MessageId      = rep.MessageId;
                        reply.Id             = rep.Id;
                        reply.ReplyMessage   = rep.ReplyMessage;
                        reply.ReplyDateTime  = rep.ReplyDateTime;
                        reply.MessageDetails = dbContext.Messages.Where(x => x.Id == rep.MessageId).Select(s => s.MessageToPost).FirstOrDefault();
                        reply.ReplyFrom      = rep.ReplyFrom;
                        vm.Replies.Add(reply);
                    }
                }
                else
                {
                    vm.Replies.Add(null);
                }


                ViewBag.MessageId = Id.Value;
            }
            //NJB-ID de la tarea
            ViewBag.idTarea = idTarea;
            ViewBag.Desc1   = dbContext.Tareas.Where(x => x.TareaID == idTarea).Select(s => s.TareaDescripcion).FirstOrDefault();
            ViewBag.Desc2   = dbContext.Tareas.Where(x => x.TareaID == idTarea).Select(s => s.TareaDescripcion2).FirstOrDefault();
            //
            return(View(vm));
        }
Exemplo n.º 13
0
        public async Task <ActionResult> Reply([Bind(Include = "Id,Subject,Content,Date")]  MessageReplyViewModel message, List <HttpPostedFileBase> attachedFile)
        {
            if (ModelState.IsValid)
            {
                var sender = await db.Messages.Where(m => m.Id == message.Id && m.Sender != null && m.Recepient != null)
                             .Select(m => new { SenderId = m.Sender.Id }).SingleAsync();

                Message messagereply = new Message();
                messagereply.Recepient = db.Users.Find(sender.SenderId);

                messagereply.Sender = await db.Users.Where(u => u.UserName.Equals(User.Identity.Name, StringComparison.InvariantCultureIgnoreCase)).SingleAsync();

                messagereply.Subject = message.Subject;
                messagereply.Content = message.Content;
                messagereply.Date    = DateTime.Now;
                db.Messages.Add(messagereply);

                await db.SaveChangesAsync();

                await UserManager.SendEmailAsync(messagereply.Recepient.Id, "New Message From", string.Format(" Please login  {0} to check your secure message box", Request.Url.Host));

                int filenumbers = attachedFile.Count();
                if (filenumbers >= 1)
                {
                    foreach (var uploadfile in attachedFile)
                    {
                        if (uploadfile != null)
                        {
                            byte[] buff = new byte[uploadfile.ContentLength];
                            int    len  = await uploadfile.InputStream.ReadAsync(buff, 0, uploadfile.ContentLength);

                            DocFile df = new DocFile()
                            {
                                Description = "Message attachment",
                                FileType    = uploadfile.ContentType,
                                FileName    = uploadfile.FileName,
                                Content     = buff,
                                Message     = messagereply
                            };
                            db.DocFiles.Add(df);
                            //await db.SaveChangesAsync();
                        }
                    }
                }
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(message));
        }
Exemplo n.º 14
0
        public ActionResult ReplyMessage(MessageReplyViewModel vm, int messageId)
        {
            //var username = User.Identity.Name;
            //string fullName = "";
            //if (!string.IsNullOrEmpty(username))
            //{
            //    var user = dbContext.loginTables.SingleOrDefault(u => u.Name == username);
            //    fullName = string.Concat(new string[] { user.Name});
            //}
            if (vm.Reply.ReplyMessage != null)
            {
                Reply _reply = new Reply();
                _reply.ReplyDateTime = DateTime.Now;
                _reply.MessageId     = messageId;
                _reply.ReplyFrom     = Session["TeacherName"].ToString();
                _reply.ReplyMessage  = vm.Reply.ReplyMessage;
                dbContext.Replies.Add(_reply);
                dbContext.SaveChanges();
            }
            //reply to the message owner          - using email template

            //var messageOwner = dbContext.Messages.Where(x => x.Id == messageId).Select(s => s.From).FirstOrDefault();
            //var users = from user in dbContext.loginTables
            //            orderby user.Name
            //            select new
            //            {
            //                FullName = user.Name,
            //                UserEmail = user.Email
            //            };

            //var uemail = users.Where(x => x.FullName == messageOwner).Select(s => s.UserEmail).FirstOrDefault();
            //SendGridMessage replyMessage = new SendGridMessage();
            //replyMessage.From = new MailAddress(username);
            //replyMessage.Subject = "Reply for your message :" + dbContext.Messages.Where(i=>i.Id==messageId).Select(s=>s.Subject).FirstOrDefault();
            //replyMessage.Text = vm.Reply.ReplyMessage;


            //replyMessage.AddTo(uemail);


            //var credentials = new NetworkCredential("YOUR SENDGRID USERNAME", "PASSWORD");
            //var transportweb = new Microsoft.Web(credentials);
            //transportweb.DeliverAsync(replyMessage);
            int     courseid;
            Message _messageToDelete = dbContext.Messages.Find(messageId);

            courseid = Convert.ToInt32(_messageToDelete.courseId);
            return(RedirectToAction("Index", "Message", new { Id = messageId, courseid = courseid }));
        }
Exemplo n.º 15
0
        public ActionResult ReplyMessage(MessageReplyViewModel vm, int messageId)
        {
            var    username = User.Identity.Name;
            string fullName = "";

            if (!string.IsNullOrEmpty(username))
            {
                var user = dbContext.Users.SingleOrDefault(u => u.UserName == username);
                fullName = string.Concat(new string[] { user.FirstName, " ", user.LastName });
            }
            if (vm.Reply.ReplyMessage != null)
            {
                Reply _reply = new Reply();
                _reply.ReplyDateTime = DateTime.Now;
                _reply.MessageId     = messageId;
                _reply.ReplyFrom     = fullName;
                _reply.ReplyMessage  = vm.Reply.ReplyMessage;
                dbContext.Replies.Add(_reply);
                dbContext.SaveChanges();
            }
            //reply to the message owner          - using email template

            var messageOwner = dbContext.Messages.Where(x => x.Id == messageId).Select(s => s.From).FirstOrDefault();
            var users        = from user in dbContext.Users
                               orderby user.FirstName
                               select new
            {
                FullName  = user.FirstName + " " + user.LastName,
                UserEmail = user.Email
            };

            var             uemail       = users.Where(x => x.FullName == messageOwner).Select(s => s.UserEmail).FirstOrDefault();
            SendGridMessage replyMessage = new SendGridMessage();

            replyMessage.From    = new MailAddress(username);
            replyMessage.Subject = "Reply for your message :" + dbContext.Messages.Where(i => i.Id == messageId).Select(s => s.Subject).FirstOrDefault();
            replyMessage.Text    = vm.Reply.ReplyMessage;


            replyMessage.AddTo(uemail);


            var credentials  = new NetworkCredential("YOUR SENDGRID USERNAME", "PASSWORD");
            var transportweb = new Web(credentials);

            transportweb.DeliverAsync(replyMessage);
            return(RedirectToAction("Index", "Home", new { Id = messageId }));
        }
Exemplo n.º 16
0
        public ActionResult PostMessage(MessageReplyViewModel vm)
        {
            int msgid = 0;

            int teacherid = Convert.ToInt32(Session["Teacher"]);

            int schoolid;
            int classid;
            var getteacherid = dbContext.Teachers.Find(teacherid);

            schoolid = getteacherid.School_Id;
            classid  = getteacherid.Class_Id;

            CourseDBHandle gc = new CourseDBHandle();
            int            tempclassid;
            int            originalclassid;

            tempclassid = getteacherid.Class_Id;
            var classid1 = dbContext.Tbl_Class.Where(x => x.Class_Id == tempclassid).SingleOrDefault();

            originalclassid = classid1.Class_Id;
            List <tbl_CourseAssigntoTeacherValidation> list = gc.GetTeacherAssignedCourse(teacherid, originalclassid);

            ViewBag.course = new SelectList(list, "courseId", "courseName");

            Message messagetoPost = new Message();

            if (vm.Message.Subject != string.Empty && vm.Message.MessageToPost != string.Empty)
            {
                messagetoPost.DatePosted = DateTime.Now;
                messagetoPost.Subject    = vm.Message.Subject;
                messagetoPost.courseId   = vm.Message.courseId;

                messagetoPost.MessageToPost = vm.Message.MessageToPost;
                messagetoPost.From          = Session["TeacherName"].ToString();
                messagetoPost.Class_Id      = classid;
                messagetoPost.Role_ID       = 3;
                messagetoPost.UserId        = teacherid;
                messagetoPost.courseId      = vm.Message.courseId;
                messagetoPost.SchoolId      = schoolid;
                dbContext.Messages.Add(messagetoPost);
                dbContext.SaveChanges();
                msgid = messagetoPost.Id;
            }

            return(RedirectToAction("Index", "Message", new { Id = msgid, courseid = vm.Message.courseId }));
        }
Exemplo n.º 17
0
        public ActionResult MessageTo1(MessageReplyViewModel message)
        {
            DateTime now = DateTime.UtcNow;


            int          ms    = db.Messages.Select(x => x.Id).Max();
            var          mmsg  = db.Messages.ToList().FindAll(x => x.Id == ms).FirstOrDefault();
            Notification not   = new Notification();
            EmailService email = new EmailService();
            Guid         d     = new Guid();
            Random       r     = new Random();

            var students = db.Students.ToList().Where(x => x.ResName == message.Residence);


            if (mmsg.To == "Student")
            {
                not.reference = ms;
                not.NotID     = d.ToString() + r.Next(1, 100);
                not.Reciever  = message.StudentEmail;
                not.message   = message.StudentEmail + " you have a new n otification " + " \n" + mmsg.MessageToPost;
                not.NotType   = mmsg.Subject;
                //ViewBag.Residence = null;
                not.NotDate = DateTime.Now;

                not.seen = false;


                db.Notifications.Add(not);
                ViewBag.StudentEmail = new SelectList(db.Students, "Email", "Email", message.StudentEmail);
                mmsg.StudentEmail    = message.StudentEmail;
            }
            else
            {
                //mmsg.StudentEmail = null;
                ViewBag.Residence = new SelectList(db.Residences, "ResName", "ResName", message.Residence);
                mmsg.Residence    = message.Residence;
                foreach (var item in students)
                {
                    email.sendNoticeEmail(item.Email, mmsg.MessageToPost, DateTime.Now.Date.ToLongDateString(), DateTime.Now.TimeOfDay.ToString(), mmsg.Subject);
                }
            }
            db.Entry(mmsg).State = EntityState.Modified;
            db.SaveChanges();

            return(RedirectToAction("Index1", "Home"));
        }
Exemplo n.º 18
0
        public async Task <ActionResult> Reply(MessageReplyViewModel message)
        {
            if (!ModelState.IsValid)
            {
                PreventSpamAttribute.Reset();
                if (Request.IsAjaxRequest())
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, ModelState.GetFirstErrorMessage()));
                }
                else
                {
                    return(View());
                }
            }

            if (message.ID <= 0)
            {
                return(RedirectToAction("Sent", "Messages"));
            }

            var cmd      = new SendMessageReplyCommand(message.ID, message.Body);
            var response = await cmd.Execute();

            if (response.Success)
            {
                if (Request.IsAjaxRequest())
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.OK));
                }
                else
                {
                    return(RedirectToAction("Sent", "Messages"));
                }
            }
            else
            {
                if (Request.IsAjaxRequest())
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, response.Message));
                }
                else
                {
                    ModelState.AddModelError(string.Empty, response.Message);
                    return(View());
                }
            }
        }
Exemplo n.º 19
0
        public ActionResult Create()
        {
            int teacherid            = Convert.ToInt32(Session["Teacher"]);
            MessageReplyViewModel vm = new MessageReplyViewModel();
            CourseDBHandle        gc = new CourseDBHandle();
            int tempclassid;
            int originalclassid;
            var getteacherid = dbContext.Teachers.Find(teacherid);

            tempclassid = getteacherid.Class_Id;
            var classid = dbContext.Tbl_Class.Where(x => x.Class_Id == tempclassid).SingleOrDefault();

            originalclassid = classid.Class_Id;
            List <tbl_CourseAssigntoTeacherValidation> list = gc.GetTeacherAssignedCourse(teacherid, originalclassid);

            ViewBag.course = new SelectList(list, "courseId", "courseName");
            return(View(vm));
        }
Exemplo n.º 20
0
        public ActionResult MessagePassing(int?Id, int?page)
        {
            int pageSize             = 5;
            int pageNumber           = (page ?? 1);
            MessageReplyViewModel vm = new MessageReplyViewModel();
            ReplyDAL   replyDAL      = new ReplyDAL();
            MessageDAL queDAL        = new MessageDAL();
            var        count         = queDAL.MessagesDal.Count();
            decimal    totalPages    = count / (decimal)pageSize;

            ViewBag.TotalPages = Math.Ceiling(totalPages);
            vm.Messages        = queDAL.MessagesDal
                                 .OrderBy(x => x.DatePosted).ToPagedList(pageNumber, pageSize);
            ViewBag.MessagesInOnePage = vm.Messages;
            ViewBag.PageNumber        = pageNumber;

            if (Id != null)
            {
                var replies = replyDAL.Replies.Where(x => x.MessageId == Id.Value).OrderByDescending(x => x.ReplyDateTime);
                if (replies != null)
                {
                    foreach (var rep in replies)
                    {
                        /* MessageReplyViewModel.MessageReply reply = new MessageReplyViewModel.MessageReply();*/
                        MessageReplyViewModel.MessageReply reply = new MessageReplyViewModel.MessageReply();
                        reply.MessageId      = rep.MessageId;
                        reply.Id             = rep.Id;
                        reply.ReplyMessage   = rep.ReplyMessage;
                        reply.ReplyDateTime  = rep.ReplyDateTime;
                        reply.MessageDetails = vm.Messages.Where(x => x.Id == rep.MessageId).Select(s => s.MessageToPost).FirstOrDefault();
                        reply.ReplyFrom      = rep.ReplyFrom;
                        vm.Replies.Add(reply);
                    }
                }
                else
                {
                    vm.Replies.Add(null);
                }

                ViewBag.MessageId = Id.Value;
            }
            return(View(vm));
        }
Exemplo n.º 21
0
        public ActionResult PostMessage(MessageReplyViewModel vm, HttpPostedFileBase filelist)
        {
            DateTime now = DateTime.UtcNow;

            var     username      = User.Identity.GetUserName();
            string  fullName      = "";
            int     msgid         = 0;
            Message messagetoPost = new Message();


            if (!string.IsNullOrEmpty(username))
            {
                //var user = dbContext.Users.SingleOrDefault(u => u.UserName == username);
                //var user1 = dbContext.employees.SingleOrDefault(u => u.Email == username);
                var user = dbContext.employees.ToList().SingleOrDefault(u => u.Email == username);

                fullName = string.Concat(new string[] { user.Name, " ", user.Surname });
            }
            Notification not = new Notification();

            if (vm.Message.Subject != string.Empty && vm.Message.MessageToPost != string.Empty)
            {
                if (User.IsInRole("Employee"))
                {
                    messagetoPost.Residence = lo.getResForNotification(username);
                }
                messagetoPost.DatePosted    = now.Date;
                messagetoPost.Subject       = vm.Message.Subject;
                messagetoPost.MessageToPost = vm.Message.MessageToPost;
                messagetoPost.From          = fullName;
                messagetoPost.StudentEmail  = vm.StudentEmail;
                messagetoPost.Residence     = vm.Residence;
                messagetoPost.To            = vm.To;
                dbContext.Messages.Add(messagetoPost);
                dbContext.SaveChanges();
                msgid = messagetoPost.Id;
                //Populate Notification
            }

            return(RedirectToAction("MessageTo"));
        }
Exemplo n.º 22
0
        public ActionResult Create()
        {
            MessageReplyViewModel vm = new MessageReplyViewModel();
            int    teacherid         = Convert.ToInt32(Session["Student"]);
            int    tempclassid;
            int    originalclassid;
            string Regno;
            var    getteacherid = dbContext.Students.Find(teacherid);

            tempclassid = getteacherid.Class_Id;
            Regno       = getteacherid.RegNo;
            var classid1 = dbContext.Tbl_Class.Where(x => x.Class_Id == tempclassid).SingleOrDefault();

            originalclassid = classid1.Class_Id;
            //AB enroll course wala dropdown ajayega
            CourseDBHandle gc = new CourseDBHandle();

            List <tblEnrollStudentInCourseValidation> list = gc.GetSudentEnrollCourse(Regno, originalclassid);

            ViewBag.course = new SelectList(list, "courseId", "courseName");
            return(View(vm));
        }
Exemplo n.º 23
0
        public ActionResult MessageTo()
        {
            MessageReplyViewModel vm = new MessageReplyViewModel();
            int ms    = db.Messages.Select(x => x.Id).Max();
            var check = db.Messages.Find(ms);

            if (check.To == "Student")
            {
                //ViewBag.Residence = null;

                ViewBag.StudentEmail = new SelectList(db.Students, "Email", "Email", vm.StudentEmail);
            }
            else
            {
                //ViewBag.StudentEmail = null;

                ViewBag.Residence = new SelectList(db.Residences, "ResName", "ResName", vm.Residence);
            }
            ViewBag.Residence    = new SelectList(db.Residences, "ResName", "ResName", vm.Residence);
            ViewBag.StudentEmail = new SelectList(db.Students, "Email", "Email", vm.StudentEmail);

            return(View());
        }
Exemplo n.º 24
0
        public async Task <ActionResult> Reply(long?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            MessageReplyViewModel message = await db.Messages.Where(m => m.Id == id.Value && m.Sender != null)
                                            .Select(m => new MessageReplyViewModel()
            {
                Content      = m.Sender.FirstName + " " + m.Sender.LastName + " Wrote\r\n" + m.Content,
                Subject      = m.Subject,
                Id           = m.Id,
                OriginalDate = m.Date
            }).SingleAsync();

            if (message == null)
            {
                return(HttpNotFound());
            }

            message.Content = string.Format("\r\nOn {0} {1}", message.OriginalDate, message.Content).Replace("\r\n", "\r\n>");

            return(View(message));
        }
 public ActionResult ReplyForm(MessageReplyViewModel message)
 {
     ModelState.Clear();
     return(PartialView("_MessageReply", message));
 }
Exemplo n.º 26
0
        public async System.Threading.Tasks.Task <ActionResult> ReplyMessage(MessageReplyViewModel vm, int messageId)
        {
            var    username = User.Identity.Name;
            string fullName = "";

            if (!string.IsNullOrEmpty(username))
            {
                var user = dbContext.Users.SingleOrDefault(u => u.UserName == username);
                fullName = user.fullname;
            }
            if (vm.Reply.ReplyMessage != null)
            {
                Reply _reply = new Reply();
                _reply.ReplyDateTime = DateTime.Now;
                _reply.MessageId     = messageId;
                _reply.ReplyFrom     = fullName;
                _reply.ReplyMessage  = vm.Reply.ReplyMessage;
                db.Replies.Add(_reply);
                db.SaveChanges();
            }
            //reply to the message owner - using email template

            var messageOwner = db.Messages.Where(x => x.Id == messageId).Select(ssa => ssa.From).FirstOrDefault();
            var users        = from user in dbContext.Users
                               orderby user.fullname
                               select new
            {
                FullName  = user.name + " " + user.lastname,
                UserEmail = user.Email
            };

            var uemail = users.Where(x => x.FullName == messageOwner).Select(q => q.UserEmail).FirstOrDefault();
            //SendGridMessage replyMessage = new SendGridMessage();
            //replyMessage.From = new MailAddress(username);
            String sSubject = "Reply for your message :" + db.Messages.Where(i => i.Id == messageId).Select(x => x.Subject).FirstOrDefault();

            //replyMessage.Text = vm.Reply.ReplyMessage;


            //replyMessage.AddTo(uemail);



            //string credentials = "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";
            //var transportweb = new Web(credentials);
            //transportweb.DeliverAsync(replyMessage);
            //return RedirectToAction("Index", "Home", new { Id = messageId });

            //string apiKey = "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";

            //dynamic sendGridClient = new SendGridAPIClient(apiKey);

            //string Body = vm.Reply.ReplyMessage;

            //SendGrid.Helpers.Mail.Email fromEmail = new SendGrid.Helpers.Mail.Email("*****@*****.**");
            //SendGrid.Helpers.Mail.Email toEmail = new SendGrid.Helpers.Mail.Email(uemail);
            //Content content = new Content("text/plain", Body);
            //SendGrid.Helpers.Mail.Mail mail = new Mail(fromEmail, sSubject, toEmail, content);

            //dynamic response = await sendGridClient.client.mail.send.post(requestBody: mail.Get());
            return(RedirectToAction("Index2", "Home", new { Id = messageId }));
        }
Exemplo n.º 27
0
        public ActionResult Create(string subje, string mes)
        {
            MessageReplyViewModel vm = new MessageReplyViewModel();

            return(View(vm));
        }
Exemplo n.º 28
0
        public ActionResult ReplyMessage(MessageReplyViewModel vm, int messageId, string replyMessage, HttpPostedFileBase file)
        {
            try
            {
                var    username = User.Identity.Name;
                string fullName = "";
                if (!string.IsNullOrEmpty(username))
                {
                    fullName = username;
                }
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    string        savePath = "~/Images/Replies" + User.Identity.Name + "/";
                    DirectoryInfo dir      = new DirectoryInfo(HttpContext.Server.MapPath(savePath));
                    if (!dir.Exists)
                    {
                        dir.Create();
                    }
                    file = Request.Files[i];
                    file.SaveAs(HttpContext.Server.MapPath(savePath)
                                + file.FileName);
                    if (vm.Reply.ReplyVideo != null)
                    {
                        vm.Reply.ReplyVideo.Add(new Models.Media
                        {
                            Path = "/Images/Replies" + User.Identity.Name + "/" + file.FileName
                        });
                    }
                    else
                    {
                        vm.Reply.ReplyVideo = new List <Models.Media>
                        {
                            new Models.Media {
                                Path = "/Images/Replies" + User.Identity.Name + "/" + file.FileName
                            }
                        }
                    };
                }

                Reply _reply = new Reply();
                _reply.ReplyDateTime = DateTime.Now;
                _reply.MessageId     = messageId;
                _reply.ReplyFrom     = fullName;
                _reply.ReplyMessage  = vm.Reply.ReplyMessage;
                _reply.ReplyVideo    = vm.Reply.ReplyVideo;
                db.Replies.Add(_reply);
                db.SaveChanges();
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               validationError.ErrorMessage);
                    }
                }
            }

            //reply to the message owner          - using email template

            var messageOwner = db.Messages.Where(x => x.Id == messageId).Select(s => s.From).FirstOrDefault();

            //var users = from user in db.Users
            //    orderby user.FirstName
            //    select new
            //    {
            //        FullName = user.FirstName + " " + user.LastName,
            //        UserEmail = user.Email
            //    };

            //var uemail = User.Identity.GetUserName().Where(x => x.ToString() == messageOwner).Select(s => s.UserEmail).FirstOrDefault();
            //SendGridMessage ReplyMessage = new SendGridMessage();
            //ReplyMessage.From = new MailAddress(username);
            //ReplyMessage.Subject = "Reply for your message :" + db.Messages.Where(i => i.Id == messageId).Select(s => s.Subject).FirstOrDefault();
            //ReplyMessage.Text = vm.Reply.ReplyMessage;


            //ReplyMessage.AddTo(uemail);


            //var credentials = new NetworkCredential("YOUR SENDGRID USERNAME", "PASSWORD");
            //var transportweb = new Web(credentials);
            //transportweb.DeliverAsync(ReplyMessage);
            return(RedirectToAction("Index", "Contestants", new { Id = messageId }));
            //return Json(new { Url = "Contestants/Index" }, JsonRequestBehavior.AllowGet);
        }
Exemplo n.º 29
0
        public ActionResult ReplyMessage(MessageReplyViewModel vm, int messageId)
        {
            var    username = User.Identity.Name;
            string fullName = "";

            if (!string.IsNullOrEmpty(username))
            {
                var user = dbContext.Users.SingleOrDefault(u => u.UserName == username);
                fullName = string.Concat(new string[] { user.FirstName, " ", user.LastName });
            }
            if (vm.Reply.ReplyMessage != null)
            {
                Reply _reply = new Reply();
                _reply.ReplyDateTime = DateTime.Now;
                _reply.MessageId     = messageId;
                _reply.ReplyFrom     = fullName;
                _reply.ReplyMessage  = vm.Reply.ReplyMessage;
                dbContext.Replies.Add(_reply);
                dbContext.SaveChanges();
            }
            //reply to the message owner          - using email template

            var messageOwner = dbContext.Messages.Where(x => x.Id == messageId).Select(s => s.From).FirstOrDefault();
            var users        = from user in dbContext.Users
                               orderby user.FirstName
                               select new
            {
                FullName  = user.FirstName + " " + user.LastName,
                UserEmail = user.Email
            };

            var uemail = users.Where(x => x.FullName == messageOwner).Select(s => s.UserEmail).FirstOrDefault();
            //NJB-Comentado INI
            //SendGridMessage replyMessage = new SendGridMessage();
            //replyMessage.From = new EmailAddress(username);
            //replyMessage.Subject = "Reply for your message :" + dbContext.Messages.Where(i => i.Id == messageId).Select(s => s.Subject).FirstOrDefault();
            //replyMessage.PlainTextContent = vm.Reply.ReplyMessage;

            //replyMessage.AddTo(uemail);

            //var credentials = new NetworkCredential(ConfigurationManager.AppSettings["mailAccount"],
            //                                        ConfigurationManager.AppSettings["mailPassword"]);
            //var transportweb = new Web(credentials);
            //transportweb.DeliverAsync(replyMessage);
            //NJB-Comentado FIN

            var idTarea = dbContext.Messages.Where(x => x.Id == messageId).Select(s => s.TareaID).FirstOrDefault();

            //
            // Retrieve the API key from the environment variables. See the project README for more info about setting this up.
            var apiKey = Environment.GetEnvironmentVariable("api_key_name_NJB1");

            var client = new SendGridClient(apiKey);

            // Send a Single Email using the Mail Helper
            var msg = new SendGridMessage()
            {
                From             = new EmailAddress(username),
                Subject          = "Reply for your message :" + dbContext.Messages.Where(i => i.Id == messageId).Select(s => s.Subject).FirstOrDefault(),
                PlainTextContent = vm.Reply.ReplyMessage,
                HtmlContent      = vm.Reply.ReplyMessage,
            };

            msg.AddTo(uemail);

            var response = client.SendEmailAsync(msg);

            //

            return(RedirectToAction("Index", "Mensajes", new { Id = messageId, idTarea = idTarea }));
        }
Exemplo n.º 30
0
        public ActionResult Create()
        {
            MessageReplyViewModel vm = new MessageReplyViewModel();

            return(View(vm));
        }