public ActionResult ReplyMessage(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PesanPublikToAdmin pesanPublik = db.PesanPublikToAdmin.Find(id); if (pesanPublik == null) { return(HttpNotFound()); } ReplyPublicMessageViewModel createReplyMessage = new ReplyPublicMessageViewModel { Id = pesanPublik.Id, MessageContent = pesanPublik.MessageContent, ReplyToEmail = pesanPublik.SenderEmail, ReplyToName = pesanPublik.SenderName, ReplySubject = string.Format("Reply Message from {0} at {1} {2} GMT at www.sainstek3undana.com", pesanPublik.SenderName, pesanPublik.DateCreated.ToLongDateString(), pesanPublik.DateCreated.ToLongTimeString()), ReplyMessage = string.Empty }; return(PartialView(createReplyMessage)); }
public ActionResult SendMessage(MailMessageViewModel model) { if (!ModelState.IsValid) { var errors = ModelState.Select(x => x.Value.Errors) .Where(y => y.Count > 0) .ToList(); string errorMessages = "<ul>"; for (int i = 0; i < errors.Count; i++) { ModelErrorCollection modelErrorCollection = errors[i]; for (int j = 0; j < modelErrorCollection.Count; j++) { if (!string.IsNullOrEmpty(modelErrorCollection[j].ErrorMessage)) { errorMessages += "<li>"; errorMessages += modelErrorCollection[j].ErrorMessage; errorMessages += "</li>"; } } } errorMessages += "</ul>"; return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, errorMessages)); } PesanPublikToAdmin pesan = new PesanPublikToAdmin(); pesan.SenderName = model.name; pesan.SenderEmail = model.email; pesan.MessageContent = model.message; pesan.DateCreated = DateTime.UtcNow; try { db.PesanPublikToAdmin.Add(pesan); db.SaveChanges(); } catch (Exception ex) { ViewBag.ErrorMessage = ex.Message; return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.Message)); } return(new HttpStatusCodeResult(HttpStatusCode.OK)); }
public ActionResult PublicDetailsMessage(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PesanPublikToAdmin pesanPublik = db.PesanPublikToAdmin.Find(id); if (pesanPublik == null) { return(HttpNotFound()); } try { pesanPublik.DateAdminRead = DateTime.UtcNow; db.Entry(pesanPublik).State = EntityState.Modified; db.SaveChanges(); DetailPublicMessageViewModel detailPublicMessage = new DetailPublicMessageViewModel { Id = pesanPublik.Id, SenderName = pesanPublik.SenderName, SenderEmail = pesanPublik.SenderEmail, MessageContent = pesanPublik.MessageContent, DateCreated = pesanPublik.DateCreated, DateAdminRead = pesanPublik.DateAdminRead, ReplyMessage = pesanPublik.ReplyMessage, DateReply = pesanPublik.DateReply, ReplyAdminId = pesanPublik.ReplyAdminId, AlreadyReply = pesanPublik.DateReply != null }; return(PartialView(detailPublicMessage)); } catch (Exception ex) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.Message)); } }
public ActionResult ReplyMessage(ReplyPublicMessageViewModel model) { if (!ModelState.IsValid) { var errors = ModelState.Select(x => x.Value.Errors) .Where(y => y.Count > 0) .ToList(); string errorMessages = "<ul>"; for (int i = 0; i < errors.Count; i++) { ModelErrorCollection modelErrorCollection = errors[i]; for (int j = 0; j < modelErrorCollection.Count; j++) { if (!string.IsNullOrEmpty(modelErrorCollection[j].ErrorMessage)) { errorMessages += "<li>"; errorMessages += modelErrorCollection[j].ErrorMessage; errorMessages += "</li>"; } } } errorMessages += "</ul>"; return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, errorMessages)); } PesanPublikToAdmin pesanPublik = db.PesanPublikToAdmin.Find(model.Id); if (pesanPublik == null) { return(new HttpStatusCodeResult(HttpStatusCode.NotFound, "Entity not found.")); } string emailSendErrorMessage = string.Empty; if (!SendMailFromPanitiaEmail(model.ReplyToEmail, model.ReplySubject, model.ReplyMessage, out emailSendErrorMessage)) { ModelState.AddModelError("", emailSendErrorMessage); return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, emailSendErrorMessage)); } try { if (pesanPublik.DateAdminRead == null) { pesanPublik.DateAdminRead = DateTime.UtcNow; } pesanPublik.DateReply = DateTime.UtcNow; pesanPublik.ReplyMessage = model.ReplyMessage; pesanPublik.ReplyAdminId = User.Identity.GetUserId(); db.Entry(pesanPublik).State = EntityState.Modified; db.SaveChanges(); } catch (Exception ex) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.Message)); } return(new HttpStatusCodeResult(HttpStatusCode.OK)); }
protected override void Seed(SainsTekWepApp.Data.ApplicationDbContext context) { // This method will be called after migrating to the latest version. // You can use the DbSet<T>.AddOrUpdate() helper extension method // to avoid creating duplicate seed data. E.g. // // context.People.AddOrUpdate( // p => p.FullName, // new Person { FullName = "Andrew Peters" }, // new Person { FullName = "Brice Lambson" }, // new Person { FullName = "Rowan Miller" } // ); // if (!context.Roles.Any(r => r.Name == "Admin")) { var store = new RoleStore <IdentityRole>(context); var manager = new RoleManager <IdentityRole>(store); var role = new IdentityRole { Name = "Admin" }; manager.Create(role); } if (!context.Roles.Any(r => r.Name == "Peserta")) { var store = new RoleStore <IdentityRole>(context); var manager = new RoleManager <IdentityRole>(store); var role = new IdentityRole { Name = "Peserta" }; manager.Create(role); } if (!context.Roles.Any(r => r.Name == "Pemakalah")) { var store = new RoleStore <IdentityRole>(context); var manager = new RoleManager <IdentityRole>(store); var role = new IdentityRole { Name = "Pemakalah" }; manager.Create(role); } if (!context.Users.Any()) { var store = new UserStore <ApplicationUser>(context); var manager = new UserManager <ApplicationUser>(store); var user = new ApplicationUser { UserName = "******" }; manager.Create(user, "sasasa"); manager.AddToRole(user.Id, "Admin"); } if (!context.KategoriMakalah.Any()) { KategoriMakalah newKategoriMakalah1 = new KategoriMakalah { Name = "Teknik Sipil, Material dan Infrastruktur", Description = "Teknik Sipil, Material dan Infrastruktur" }; KategoriMakalah newKategoriMakalah2 = new KategoriMakalah { Name = "Arsitektur dan Perencanaan wilayah", Description = "Arsitektur dan Perencanaan wilayah" }; KategoriMakalah newKategoriMakalah3 = new KategoriMakalah { Name = "Ilmu Komputer, Informatika dan Teknik Elektro", Description = "Ilmu Komputer, Informatika dan Teknik Elektro" }; KategoriMakalah newKategoriMakalah4 = new KategoriMakalah { Name = "Pertanian, Peternakan dan Manajemen Peternakan", Description = "Pertanian, Peternakan dan Manajemen Peternakan" }; KategoriMakalah newKategoriMakalah5 = new KategoriMakalah { Name = "Matematika, Kimia, Fisika, Geofisika dan Astronomi", Description = "Matematika, Kimia, Fisika, Geofisika dan Astronomi" }; KategoriMakalah newKategoriMakalah6 = new KategoriMakalah { Name = "Geologi, Tambang, Metalurgi, dan Teknik Mesin", Description = "Geologi, Tambang, Metalurgi, dan Teknik Mesin" }; KategoriMakalah newKategoriMakalah7 = new KategoriMakalah { Name = "Kemaritiman dan Kelautan", Description = "Kemaritiman dan Kelautan" }; KategoriMakalah newKategoriMakalah8 = new KategoriMakalah { Name = "Bidang Umum Lainnya", Description = "Bidang Umum Lainnya" }; context.KategoriMakalah.Add(newKategoriMakalah1); context.KategoriMakalah.Add(newKategoriMakalah2); context.KategoriMakalah.Add(newKategoriMakalah3); context.KategoriMakalah.Add(newKategoriMakalah4); context.KategoriMakalah.Add(newKategoriMakalah5); context.KategoriMakalah.Add(newKategoriMakalah6); context.KategoriMakalah.Add(newKategoriMakalah7); context.KategoriMakalah.Add(newKategoriMakalah8); } int publicMessageCount = 1000; if (context.PesanPublikToAdmin.Count() < publicMessageCount) { List <PesanPublikToAdmin> listPesanPublic = new List <PesanPublikToAdmin>(); for (int i = 0; i < publicMessageCount; i++) { PesanPublikToAdmin publicMessage = new PesanPublikToAdmin { SenderEmail = string.Format("email{0}@hewqewq{0}.com", i + 1), SenderName = string.Format("username{0}", i + 1), MessageContent = string.Format("Message Content - {0}", i + 1), }; if (i < publicMessageCount / 3) { publicMessage.DateAdminRead = DateTime.UtcNow.AddMinutes(i + 1); } else if (i < (publicMessageCount / 3) * 2) { publicMessage.DateAdminRead = DateTime.UtcNow.AddMinutes(i + 1); publicMessage.DateReply = DateTime.UtcNow.AddMinutes(i + 5); } listPesanPublic.Add(publicMessage); } context.PesanPublikToAdmin.AddRange(listPesanPublic); } }