Example #1
0
        public ActionResult SetFinalStatus(int id)
        {
            try
            {
                DissertationViewModel dissertation = Dissertation.GetDissertationById(id);
                dissertation.SaveStatus();
                Certificate cert = new Certificate();
                cert.StudentId = dissertation.StudentId;
                cert.SubjectId = dissertation.SubjectId;
                int certId = cert.Save();
                var user   = UserManager.FindById(dissertation.StudentId);
                UserManager.AddToRole(user.Id, "Teacher");
                var callbackUrl = Url.Action("Certificates", "Teacher", new { certId = certId }, protocol: Request.Url.Scheme);

                string email   = dissertation.Student.Email;
                string body    = string.Format("Dear {0} {1}, Your research was approved by administrator:</br> Follow the <a href='{2}'>link</a> to generate a certificate", dissertation.Student.Name, dissertation.Student.SurName, callbackUrl);
                string subject = "SortIt.Research approved";
                SendMailModel.SendMail(email, body, subject);

                return(Json("Research approved"));
            }
            catch (Exception ex)
            {
                return(Json("Fail!", JsonRequestBehavior.AllowGet));
            }
        }