public void History()
        {
            var user = db.Users.Find(HttpContext.Current.User.Identity.GetUserId());

            if (DateTime.Now.ToString("MMMM") != user.LastLogIn.ToString("MMMM"))
            {
                var mybudget  = db.Budgets.Where(u => u.HouseHoldId == user.HouseHoldId).ToList();
                var oldbudget = db.Budgets.AsNoTracking().Where(u => u.HouseHoldId == user.HouseHoldId).ToList();
                foreach (var b in oldbudget)
                {
                    BudgetHistory budget = new BudgetHistory();
                    budget.Budgeted          = b.ConstAmount;
                    budget.Date              = DateTimeOffset.Now;
                    budget.FrequencyId       = b.FrequencyId;
                    budget.HouseHoldId       = user.HouseHoldId ?? 1;
                    budget.Name              = b.Name;
                    budget.TransactionAmount = b.TransactionAmount;
                    if (DateTimeOffset.Now.ToString("MMMM") != "January")
                    {
                        budget.Title = (DateTimeOffset.Now.AddMonths(-1).ToString("MMMM") + " " + DateTimeOffset.Now.ToString("yyyy"));
                    }
                    else
                    {
                        budget.Title = (DateTimeOffset.Now.AddMonths(-1).ToString("MMMM") + " " + DateTimeOffset.Now.AddYears(-1).ToString("yyyy"));
                    }
                    db.BudgetHistories.Add(budget);
                    db.SaveChanges();
                }
                foreach (var m in mybudget)
                {
                    m.TransactionAmount = 0;
                    db.SaveChanges();
                }
            }
        }
        public ActionResult DeleteConfirmed(int id)
        {
            BudgetHistory budgetHistory = db.BudgetHistories.Find(id);

            db.BudgetHistories.Remove(budgetHistory);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
 public ActionResult Edit([Bind(Include = "Id,Title,Date,Name,HouseHoldId,FrequencyId,TransactionAmount,Budgeted")] BudgetHistory budgetHistory)
 {
     if (ModelState.IsValid)
     {
         db.Entry(budgetHistory).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.FrequencyId = new SelectList(db.Frequencies, "Id", "Name", budgetHistory.FrequencyId);
     ViewBag.HouseHoldId = new SelectList(db.HouseHolds, "Id", "Name", budgetHistory.HouseHoldId);
     return(View(budgetHistory));
 }
        // GET: BudgetHistories/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            BudgetHistory budgetHistory = db.BudgetHistories.Find(id);

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

            if (budgetHistory == null)
            {
                return(HttpNotFound());
            }
            ViewBag.FrequencyId = new SelectList(db.Frequencies, "Id", "Name", budgetHistory.FrequencyId);
            ViewBag.HouseHoldId = new SelectList(db.HouseHolds, "Id", "Name", budgetHistory.HouseHoldId);
            return(View(budgetHistory));
        }