// return View(db.DirectorName1.Where(x => x.FirstName.StartsWith(search) || search == null).ToList());

        //  GET: DirectorName1

        // GET: DirectorName1/Details/5
        public ActionResult Details(int?id)
        {
            int directorId = id ?? 0;

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DirectorName1 directorName1 = db.DirectorName1.Find(id);

            var    ldir     = db.DirectorQualifications.Where(x => x.DirectorID.Equals(directorId)).Select(x => x.Qualification).ToList();
            string qualList = "<ul>";

            foreach (var item in ldir)
            {
                qualList += $"<li>{item.Description}</li>";
            }
            qualList += "</ul>";
            ViewBag.Qualifactions = qualList;

            if (directorName1 == null)
            {
                return(HttpNotFound());
            }
            return(View(directorName1));
        }
        // GET: DirectorName1/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DirectorName1 directorName1 = db.DirectorName1.Find(id);

            ////fetch and edit
            int directorId = id ?? 0;

            var    ldir     = db.DirectorQualifications.Where(x => x.DirectorID.Equals(directorId)).ToList();
            string qualList = "<table width=\"100%\">";

            foreach (var item in ldir)
            {
                qualList += "<tr>";
                qualList += $"<td width=\"80%\">{item.Qualification.Description}</td><td><a href=\"/DirectorName1/DeleteQualification/{item.ID}\">Remove</a></td>";
                qualList += "</tr>";
            }
            qualList += "</table>";
            qualList += $"<a href=\"/DirectorName1/AddQualification/{0}\">Add</a>";
            ViewBag.Qualifactions = qualList;


            if (directorName1 == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Grouping = new SelectList(db.Groupings, "ID", "GroupType", directorName1.Grouping);
            return(View(directorName1));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            DirectorName1 directorName1 = db.DirectorName1.Find(id);

            db.DirectorName1.Remove(directorName1);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        // GET: DirectorName1/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DirectorName1 directorName1 = db.DirectorName1.Find(id);

            if (directorName1 == null)
            {
                return(HttpNotFound());
            }
            return(View(directorName1));
        }
        public ActionResult Edit([Bind(Include = "DirectorID,Surname,Initials,FirstName,Title,YearOfBirth,Gender,Grouping,Profile,UpdateDate")] DirectorName1 directorName1)
        {
            System.Threading.Thread.Sleep(2000);

            if (ModelState.IsValid)
            {
                directorName1.UpdateDate      = DateTime.Now;
                db.Entry(directorName1).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.Grouping = new SelectList(db.Groupings, "ID", "GroupType", directorName1.Grouping);
            return(View(directorName1));
        }