public async Task <ActionResult> Create([Bind(Include = "ChildId,TrackedDate,FamilyTime,ScreenTime,ScreenTimeGoal")] TrackedTime trackedTime) { try { if (ModelState.IsValid) { var selectedChild = db.Children.Find(trackedTime.ChildId); trackedTime.ScreenTimeGoal = selectedChild.ScreenTimeGoal; db.TrackedTimes.Add(trackedTime); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } } catch (DataException) { ModelState.AddModelError("", "Oop! Unable to save data. There is problem with our server. Please try again next time!"); } var userId = User.Identity.GetUserId(); var userChildren = db.Children.Where(child => child.UserId == userId).ToList(); ViewBag.ChildId = new SelectList(userChildren, "Id", "Name", trackedTime.ChildId); return(View(trackedTime)); }
public async Task <ActionResult> DeleteConfirmed(int id) { TrackedTime trackedTime = new TrackedTime { Id = id }; db.Entry(trackedTime).State = EntityState.Deleted; await db.SaveChangesAsync(); return(RedirectToAction("Index")); }
// GET: TrackedTimes/Delete/5 public async Task <ActionResult> Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TrackedTime trackedTime = await db.TrackedTimes.FindAsync(id); if (trackedTime == null || trackedTime.Child.UserId != User.Identity.GetUserId()) { return(HttpNotFound()); } return(View(trackedTime)); }
public async Task <ActionResult> Edit(TrackedTime trackedTime) { if (ModelState.IsValid) { db.Entry(trackedTime).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } List <Child> userChildren = new List <Child> { trackedTime.Child }; ViewBag.ChildId = new SelectList(userChildren, "Id", "Name", trackedTime.ChildId); return(View(trackedTime)); }
public static string ConvertTotalTimeToText(TrackedTime trackedTime, bool isTimeTrackingAllowed) { if (trackedTime.Status == TrackedTime.EStatus.NotAvailable) { return("N/A"); } if (trackedTime.Status == TrackedTime.EStatus.Loading) { return("Loading..."); } Debug.Assert(trackedTime.Amount.HasValue); if (trackedTime.Amount.Value != TimeSpan.Zero) { return(trackedTime.Amount.Value.ToString(@"hh\:mm\:ss")); } return(isTimeTrackingAllowed ? Constants.NotStartedTimeTrackingText : Constants.NotAllowedTimeTrackingText); }
// GET: TrackedTimes/Edit/5 public async Task <ActionResult> Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TrackedTime trackedTime = await db.TrackedTimes.FindAsync(id); if (trackedTime == null || trackedTime.Child.UserId != User.Identity.GetUserId()) { return(HttpNotFound()); } List <Child> children = new List <Child> { trackedTime.Child }; ViewBag.ChildId = new SelectList(children, "Id", "Name", trackedTime.ChildId); return(View(trackedTime)); }