Exemple #1
0
        public ActionResult DeleteContact(ContactsModels model)
        {
            // if deleting a contact then we need to remove it also from
            // TrialContactsModels
            // and ContactTrialGroupModels
            // Thus removing the contact from all trials but also from
            // the access table for all trials.
            var trialContactsModels = (from tc in db.TrialContactsModels
                                       where tc.ContactId == model.Id
                                       select tc).ToList();

            foreach (var tcm in trialContactsModels)
            {
                db.TrialContactsModels.Remove(tcm);
            }

            var contactTrialGroupModels = (from c in db.ContactTrialGroupModels
                                           where c.ContactId == model.Id
                                           select c).ToList();

            foreach (var ctg in contactTrialGroupModels)
            {
                db.ContactTrialGroupModels.Remove(ctg);
            }

            ContactsModels contactsModels = db.ContactsModels.Find(model.Id);

            db.ContactsModels.Remove(contactsModels);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #2
0
        public ActionResult DeleteConfirmed(int id)
        {
            ContactsModels contactsModels = db.ContactsModels.Find(id);

            db.ContactsModels.Remove(contactsModels);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #3
0
 public ActionResult Edit([Bind(Include = "Id,ContactName,Organisation,Telephone,Email,ContactStatusId,ContactNotes")] ContactsModels contactsModels)
 {
     if (ModelState.IsValid)
     {
         db.Entry(contactsModels).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ContactStatusId = new SelectList(db.ContactStatusModels, "Id", "ContactStatusName", contactsModels.ContactStatusId);
     return(View(contactsModels));
 }
Exemple #4
0
        // GET: Contacts/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ContactsModels contactsModels = db.ContactsModels.Find(id);

            if (contactsModels == null)
            {
                return(HttpNotFound());
            }
            return(View(contactsModels));
        }
Exemple #5
0
        // GET: Contacts/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ContactsModels contactsModels = db.ContactsModels.Find(id);

            if (contactsModels == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ContactStatusId = new SelectList(db.ContactStatusModels, "Id", "ContactStatusName", contactsModels.ContactStatusId);
            return(View(contactsModels));
        }
Exemple #6
0
        public ActionResult Create([Bind(Include = "Id,ContactName,UserId,Organisation,Telephone,Email,ContactStatusId,ContactNotes")] ContactsModels contactsModels)
        {
            if (contactsModels.UserId == null)
            {
                //lets try to find the userId from the UserName
                string userName = contactsModels.ContactName;
                string email    = contactsModels.Email.ToLower();
                email = email.Replace("ncl", "newcastle");
                using (PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "campus.ncl.ac.uk"))
                {
                    PrincipalSearcher search = new PrincipalSearcher();
                    UserPrincipal     user   = new UserPrincipal(ctx);
                    user.Enabled       = true;
                    user.DisplayName   = userName;
                    user.EmailAddress  = email;
                    search.QueryFilter = user;
                    PrincipalSearchResult <Principal> results = search.FindAll();

                    if (results.Count() == 1)
                    {
                        //have definitely found the user and can now save the users ID
                        contactsModels.UserId = results.FirstOrDefault().SamAccountName;
                    }
                }
            }

            if (ModelState.IsValid)
            {
                db.ContactsModels.Add(contactsModels);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.ContactStatusId = new SelectList(db.ContactStatusModels.Where(s => s.Deleted == null), "Id", "ContactStatusName", contactsModels.ContactStatusId);
            return(View(contactsModels));
        }