public HttpResponseMessage UpdateChoreList(string AuthToken, int ChoreListId, string Name, int StatusId) { try { ChoreList ChoreListObject = new ChoreList { Id = ChoreListId, Name = Name, StatusId = StatusId }; var User = UserRepository.RefreshAuthToken(AuthToken); //check if User Matches Id if (User.Id != ChoreRepository.GetChoreList(ChoreListId).UserId) { throw new Exception("Unathorized"); } return(OKResponse(new _ChoreList(ChoreRepository.UpdateChoreList(ChoreListId, ChoreListObject)))); } catch (Exception ex) { return(ErrorResponse(ex)); } }
public ChoreList UpdateChoreList(int Id, ChoreList NewChoreList) { try { var OldChoreList = db.ChoreLists.SingleOrDefault(x => x.Id == Id); OldChoreList.Name = NewChoreList.Name; //save changes to before setting active db.SaveChanges(); OldChoreList.StatusId = NewChoreList.StatusId; if (ChoreListIsValid(Id)) { db.SaveChanges(); } else { OldChoreList.StatusId = 2; db.SaveChanges(); } db.SaveChanges(); return(OldChoreList); } catch (Exception ex) { throw Utility.ThrowException(ex); } }
private void UpdateCurrentChore() { if (ChoreList.Count > 0) { CurrentChore = ChoreList.FirstOrDefault(); } else { EndSession(); } }
public async Task <IActionResult> CreateChoreList([Bind("DayOfWeek,Reward,Title,Comment,ChildId")] ChoreList choreList) { if (ModelState.IsValid) { _context.Add(choreList); await _context.SaveChangesAsync(); return(RedirectToAction("CreateChoreItem", new { id = choreList.Id })); } return(RedirectToAction(nameof(Index))); }
public ChoreList CreateChoreList(ChoreList Value) { try { //always start as inactive Value.StatusId = 2; Value = db.ChoreLists.Add(Value); db.SaveChanges(); return(GetChoreList(Value.Id)); } catch (Exception ex) { throw Utility.ThrowException(ex); } }
public _ChoreList(ChoreList Value) { //recreate chorelist sub lists Value.ChoreUsers = Value.ChoreUsers.Where(x => x.IsActive).OrderBy(x => x.SortOrder).ToList(); Value.Chores = Value.Chores.Where(x => x.IsActive).OrderBy(x => x.SortOrder).ToList(); Value.RotationIntervals = Value.RotationIntervals.Where(x => x.IsActive).ToList(); TinyMapper.Bind <ChoreList, _ChoreList>(config => { config.Bind(x => x.ChoreUsers, x => x.ChoreUsers); config.Bind(x => x.Chores, x => x.Chores); config.Bind(x => x.RotationIntervals, x => x.RotationIntervals); }); TinyMapper.Map <ChoreList, _ChoreList>(Value, this); if (Value.ChoreListStatu != null) { ChoreListStatusName = Value.ChoreListStatu.ChoreListStatusName; } }
private void StartSession() { ChoreSessionStatus = SessionStatus.InProgress; SessionMinutesLabelVisible = false; SessionMinutesVisible = false; TimeRemaining = NumberOfSessionMinutes * 60; ChoreTimer = new Timer(NumberOfSessionMinutes * 60 * 1000); ChoreTimer.Interval = 1000; ChoreTimer.Elapsed += ChoreTimer_Elapsed; ChoreTimer.Start(); TimerValue = "Chorin' Time Left " + TimeSpan.FromSeconds(TimeRemaining).ToString("t"); TimerValueVisible = true; FinishChoreButtonVisible = true; CurrentChoreNameVisible = true; var allChores = _choreService.GetActiveChoresNoAsync() as List <Chore>; var choreStillAvailable = true; var minutesRemaining = NumberOfSessionMinutes; do { var addChore = allChores.Where(x => x.Minutes < minutesRemaining) .Where(x => ChoreList.Contains(x) == false) .OrderByDescending(x => x.Minutes) .FirstOrDefault(); if (addChore != null) { minutesRemaining -= addChore.Minutes; ChoreList.Add(addChore); } else { choreStillAvailable = false; } } while (choreStillAvailable); UpdateCurrentChore(); UpdateSessionButtons(); }
public HttpResponseMessage CreateChoreList(string AuthToken, string ChoreListValues) { try { _User User = new _User(UserRepository.RefreshAuthToken(AuthToken)); ChoreList ChoreListObject = JsonConvert.DeserializeObject <ChoreList>(ChoreListValues); //check if User Matches Id if (User.Id != ChoreListObject.UserId) { throw new Exception("Unathorized"); } return(OKResponse(new _ChoreList(ChoreRepository.CreateChoreList(ChoreListObject)))); } catch (Exception ex) { return(ErrorResponse(ex)); } }
public ChoreProgressPageViewModel() { Title = "Time for Chorin'"; StartSession_Clicked = new Command( execute: () => { StartSession(); RefreshCanExecute(); }, canExecute: () => { return(ChoreSessionStatus == SessionStatus.NewSession); }); PauseSession_Clicked = new Command( execute: () => { PauseSession(); RefreshCanExecute(); }, canExecute: () => { return(ChoreSessionStatus == SessionStatus.InProgress); }); ContinueSession_Clicked = new Command( execute: () => { ContinueSession(); RefreshCanExecute(); }, canExecute: () => { return(ChoreSessionStatus == SessionStatus.Paused); }); EndSession_Clicked = new Command( execute: () => { EndSession(); RefreshCanExecute(); }, canExecute: () => { return(ChoreSessionStatus == SessionStatus.Paused || ChoreSessionStatus == SessionStatus.InProgress); }); FinishCurrentChore_Clicked = new Command( execute: () => { ChoreList.Remove(CurrentChore); if (CurrentChore.Repeatable) { _choreService.Save(new Chore(CurrentChore)); } CurrentChore.ChoreStatus = ChoreStatus.Completed; CurrentChore.DateLastModifed = DateTime.Now; _choreService.Save(CurrentChore); UpdateCurrentChore(); }, canExecute: () => { return(true); }); }