void handlePPDogEvent(PPEvent eventName, Dog dog) { if (eventName == PPEvent.ScoutingDogLoaded) { SendToSlot(dog, dog.ScoutingIndex); } }
public async Task <IActionResult> Update([FromHeader] string authToken, string id, PPEventUpdate update) { if (!await _authenticationService.CheckAccess(authToken, "ppEventMgr")) { return(Unauthorized()); } var ppEvent = await _ppEventService.Get(id); if (ppEvent == null) { return(NotFound()); } _ppEventService.Update(ppEvent, update); await _logService.Create(new Log( null, AuthenticationHelpers.GetUserIdFromToken(authToken), DateTime.UtcNow, "Document modified.", "pp.events", id, JsonSerializer.Serialize(PPEvent.FromUpdate(ppEvent, update)) )); return(Ok()); }
public async Task <PPEvent> Create(PPEventCreate create) { var ppEvent = PPEvent.FromCreate(create); await _ppEvents.InsertOneAsync(ppEvent); return(ppEvent); }
public async Task <ActionResult <List <User> > > Get([FromHeader] string authToken) { string userId = AuthenticationHelpers.GetUserIdFromToken(authToken); User user = await _userService.Get(userId); if (user.ProPoints != null) { List <Dictionary <string, object> > eventsAttended = new List <Dictionary <string, object> >(); foreach (PPUserEntry entry in user.ProPoints) { Dictionary <string, object> userEntry = new Dictionary <string, object>(); PPEvent eventt = await _ppEventService.Get(entry.EventId); userEntry["eventName"] = eventt.Name; userEntry["checkInUtc"] = entry.CheckInUtc; userEntry["checkOutUtc"] = entry.CheckOutUtc; userEntry["points"] = entry.Points; eventsAttended.Add(userEntry); } return(Ok(eventsAttended)); } return(NotFound()); }
void handlePPDogEvent(PPEvent gameEvent, Dog dog) { if (gameEvent == PPEvent.ClickDogSlot) { handleDogSlotClicked(dog); } }
void handlePPDogEvent(PPEvent eventType, Dog dog) { switch (eventType) { case PPEvent.DogRedeemedFromScouting: addDogToRoom(dog); break; } }
public async Task <ActionResult> SwipeOut([FromHeader] string authToken, string techId, string eventId) { if (!await _authenticationService.CheckAccess(authToken, "ppSwipe")) { return(Unauthorized()); } User user = await _userService.GetByTechId(techId); PPEvent ppEvent = await _ppEventService.Get(eventId); if (user == null) { return(NotFound("tech id not found")); } if (ppEvent == null) { return(NotFound("pro point event not found")); } PPUserEntry userEvent = user.ProPoints.Find(entry => entry.EventId == eventId); if (userEvent == null) { return(Problem("user never checked in")); } if (userEvent.CheckOutUtc != null) { return(Problem("user already checked out")); } DateTime now = DateTime.UtcNow; TimeSpan elapsed = now - userEvent.CheckInUtc; int hours = (int)Math.Round(elapsed.TotalHours); int points = (hours * ppEvent.HourlyPointRate) + ppEvent.BasePointRate; userEvent.CheckOutUtc = now; userEvent.Points = points; _userService.Update(user.Id, user); await _logService.Create(new Log( null, AuthenticationHelpers.GetUserIdFromToken(authToken), DateTime.UtcNow, "User checked out for Pro Point Event.", "auth.users", user.Id, JsonSerializer.Serialize(user) )); return(Ok()); }
public static void Event(PPEvent gameEvent, Dog dog, bool isCallback = false) { if (hasInstance) { if (Instance.OnPPDogEvent != null) { Instance.OnPPDogEvent(gameEvent, dog); } if (Instance.alsoCallPPEventsAsStrings && !isCallback) { callPPDogEventAsString(gameEvent, dog); } } }
public async Task <ActionResult <PPEvent> > Create([FromHeader] string authToken, PPEventCreate create) { if (!await _authenticationService.CheckAccess(authToken, "ppEventMgr")) { return(Unauthorized()); } PPEvent created = await _ppEventService.Create(create); await _logService.Create(new Log( null, AuthenticationHelpers.GetUserIdFromToken(authToken), DateTime.UtcNow, "Document created.", "pp.events", created.Id, JsonSerializer.Serialize(created) )); return(Ok(create)); }
static void callPPDogEventAsString(PPEvent gameEvent, Dog dog) { Event(gameEvent.ToString(), dog, isCallback: true); }
static void callPPEventAsString(PPEvent gameEvent) { Event(gameEvent.ToString(), isCallback: true); }
public async void Update(PPEvent original, PPEventUpdate update) => await _ppEvents.ReplaceOneAsync(ppEvent => ppEvent.Id == original.Id, PPEvent.FromUpdate(original, update));
public async Task <ActionResult> SwipeIn([FromHeader] string authToken, string techId, string eventId) { if (!await _authenticationService.CheckAccess(authToken, "ppSwipe")) { return(Unauthorized()); } User user = await _userService.GetByTechId(techId); PPEvent ppEvent = await _ppEventService.Get(eventId); if (user == null) { user = await _userService.Create(new User( null, techId, null, null, null, null, null, null, null, null, false, null, null, null, null, null, new List <PPUserEntry>(), null, "Active - ProPoint Account Creation" )); await _logService.Create(new Log( null, AuthenticationHelpers.GetUserIdFromToken(authToken), DateTime.UtcNow, "User created for Pro Point Event.", "auth.users", user.Id, JsonSerializer.Serialize(user) )); //return NotFound("tech id not found"); } if (ppEvent == null) { return(NotFound("pro point event not found")); } if (user.ProPoints.Find(entry => entry.EventId == eventId) != null) { return(Problem("user is already checked in")); } user.ProPoints.Add(new PPUserEntry( eventId, DateTime.UtcNow, null, null, "Active" )); _userService.Update(user.Id, user); await _logService.Create(new Log( null, AuthenticationHelpers.GetUserIdFromToken(authToken), DateTime.UtcNow, "User checked in for Pro Point Event.", "auth.users", user.Id, JsonSerializer.Serialize(user) )); return(Ok()); }