using System; using System.Collections.Generic; using System.Data; using System.Data.Entity; using System.Linq; using System.Net; using System.Web; using System.Web.Mvc; using Church.Net.DAL.EF; using Church.Net.Entity; namespace Chruch.Net.Areas.dashboard.Controllers { public class FamilyMembersController : Controller { private ChurchNetContext db = new ChurchNetContext(); // GET: dashboard/FamilyMembers public ActionResult Index() { var familyMembers = db.Users.Include(f => f.Career); return View(familyMembers.ToList()); } // GET: dashboard/FamilyMembers/Details/5 public ActionResult Details(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FamilyMember familyMember = db.Users.Find(id); if (familyMember == null) { return HttpNotFound(); } return View(familyMember); } // GET: dashboard/FamilyMembers/Create public ActionResult Create() { ViewBag.CareerId = new SelectList(db.Careers, "CareerId", "Name"); return View(); } // POST: dashboard/FamilyMembers/Create // 若要免於過量張貼攻擊,請啟用想要繫結的特定屬性,如需 // 詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=317598。 [HttpPost] [ValidateAntiForgeryToken] public ActionResult Create([Bind(Include = "Id,FirstName,LastName,Gender,Birthday,Married,Baptized,DateOfBaptized,DateOfWalkIn,Address,ComunityAppId,CareerId,ProfileImage,Email,EmailConfirmed,PasswordHash,SecurityStamp,PhoneNumber,PhoneNumberConfirmed,TwoFactorEnabled,LockoutEndDateUtc,LockoutEnabled,AccessFailedCount,UserName")] FamilyMember familyMember) { if (ModelState.IsValid) { db.Users.Add(familyMember); db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.CareerId = new SelectList(db.Careers, "CareerId", "Name", familyMember.CareerId); return View(familyMember); } // GET: dashboard/FamilyMembers/Edit/5 public ActionResult Edit(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FamilyMember familyMember = db.Users.Find(id); if (familyMember == null) { return HttpNotFound(); } ViewBag.CareerId = new SelectList(db.Careers, "CareerId", "Name", familyMember.CareerId); return View(familyMember); } // POST: dashboard/FamilyMembers/Edit/5 // 若要免於過量張貼攻擊,請啟用想要繫結的特定屬性,如需 // 詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=317598。 [HttpPost] [ValidateAntiForgeryToken] public ActionResult Edit([Bind(Include = "Id,FirstName,LastName,Gender,Birthday,Married,Baptized,DateOfBaptized,DateOfWalkIn,Address,ComunityAppId,CareerId,ProfileImage,Email,EmailConfirmed,PasswordHash,SecurityStamp,PhoneNumber,PhoneNumberConfirmed,TwoFactorEnabled,LockoutEndDateUtc,LockoutEnabled,AccessFailedCount,UserName")] FamilyMember familyMember) { if (ModelState.IsValid) { db.Entry(familyMember).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.CareerId = new SelectList(db.Careers, "CareerId", "Name", familyMember.CareerId); return View(familyMember); } // GET: dashboard/FamilyMembers/Delete/5 public ActionResult Delete(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FamilyMember familyMember = db.Users.Find(id); if (familyMember == null) { return HttpNotFound(); } return View(familyMember); } // POST: dashboard/FamilyMembers/Delete/5 [HttpPost, ActionName("Delete")] [ValidateAntiForgeryToken] public ActionResult DeleteConfirmed(string id) { FamilyMember familyMember = db.Users.Find(id); db.Users.Remove(familyMember); db.SaveChanges(); return RedirectToAction("Index"); } protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); } } }