public ActionResult Create([Bind(Include = "ID,DayOfWeek,SpecialPickUp,SpecialDate,PickUpCompleted,StartDate,EndDate")] PickUpDirectory pickUpDirectory)
        {
            if (ModelState.IsValid)
            {
                string   userId          = User.Identity.GetUserId();
                Customer currentCustomer = db.Customers.Where(x => x.UserId == userId).Select(x => x).FirstOrDefault();
                pickUpDirectory.CustomerID = currentCustomer.ID;
                db.PickUpDirectories.Add(pickUpDirectory);
                db.SaveChanges();

                // Create Transaction
                //Transaction newTransaction = new Transaction();
                //newTransaction.CustomerID = pickUpDirectory.CustomerID;
                //newTransaction.Amount = (pickUpDirectory.SpecialPickUp) ? 50 : 25;
                //db.Transactions.Add(newTransaction);
                //db.SaveChanges();
                if (User.IsInRole("Customer"))
                {
                    return(RedirectToAction("Index", "Customers"));
                }
                else if (User.IsInRole("Employee"))
                {
                    return(RedirectToAction("Index", "Employees"));
                }
            }

            ViewBag.CustomerID = new SelectList(db.Customers, "ID", "FirstName", pickUpDirectory.CustomerID);
            return(View(pickUpDirectory));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            PickUpDirectory pickUpDirectory = db.PickUpDirectories.Find(id);

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

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

            if (pickUpDirectory == null)
            {
                return(HttpNotFound());
            }
            ViewBag.CustomerID = new SelectList(db.Customers, "ID", "FirstName", pickUpDirectory.CustomerID);
            return(View(pickUpDirectory));
        }
        public bool IsActiveDate(PickUpDirectory directory)
        {
            DateTime today    = DateTime.Today;
            string   dtString = today.ToString("MM/dd/yyyy");

            int[] dtFormatted          = dtString.Split('/').Select(x => Int32.Parse(x)).ToArray();
            int[] startDateDtFormatted = directory.StartDate.Split('/').Select(x => Int32.Parse(x)).ToArray();
            int[] EndDateDtFormatted   = directory.EndDate.Split('/').Select(x => Int32.Parse(x)).ToArray();
            bool  isActive             = (dtFormatted[0] >= startDateDtFormatted[0] && dtFormatted[0] <= EndDateDtFormatted[0] && dtFormatted[2] >= startDateDtFormatted[2] && dtFormatted[2] <= EndDateDtFormatted[2]) ? true : false;

            if (dtFormatted[0] == EndDateDtFormatted[0])
            {
                isActive = (dtFormatted[1] <= EndDateDtFormatted[1] && dtFormatted[1] >= startDateDtFormatted[1] && isActive == true) ? true : false;
            }
            return(isActive);
        }
        public ActionResult Edit([Bind(Include = "ID,DayOfWeek,SpecialPickUp,SpecialDate,PickUpCompleted,CustomerID")] PickUpDirectory pickUpDirectory)
        {
            if (ModelState.IsValid)
            {
                db.Entry(pickUpDirectory).State = EntityState.Modified;
                db.SaveChanges();

                if (pickUpDirectory.PickUpCompleted)
                {
                    return(RedirectToAction("Create", "Transactions"));
                }
                return(RedirectToAction("Index"));
            }
            ViewBag.CustomerID = new SelectList(db.Customers, "ID", "FirstName", pickUpDirectory.CustomerID);
            return(View(pickUpDirectory));
        }