//returns the DiaryToddlerStatus line for a given toddler (and location) private DiaryToddlerStatus getDiaryToddlerStatus(Toddler tod) { DiaryToddlerStatus dts = db.DiaryToddlerStatus.FirstOrDefault(d => d.ToddlerId == tod.ToddlerId);//add location search if (dts == null) { DiaryToddlerStatus createNewDts = new DiaryToddlerStatus(); createNewDts.Toddler = tod; createNewDts.Status = (int)ChildStatus.Home; //add location if (location != null) { createNewDts.Location = location; } try { db.DiaryToddlerStatus.Add(createNewDts); db.SaveChanges(); } catch (Exception ex) { throw ex; } dts = db.DiaryToddlerStatus.First(d => d.ToddlerId == tod.ToddlerId); } return(dts); }
// SET FUNCTIONS // Sets the Status (Home, Sleeping, Normal) of the child public void SetChildStatus(string ChildId, ChildStatus status) { foreach (Child c in children) { if (c.Id == ChildId) { ChildStatus realStatus = status; if (status == ChildStatus.Sleeping && c.Status == ChildStatus.Sleeping) { realStatus = ChildStatus.Normal; } if (status == ChildStatus.Sleeping && c.Status == ChildStatus.Home) { return; } //Send to database DiaryToddlerStatus try { DiaryToddlerStatus dts = getDiaryToddlerStatus(c.Toddler); dts.Status = (int)realStatus; db.SaveChanges(); children.First(ch => ch.Id == ChildId).Status = realStatus; } catch { } } } }