예제 #1
0
        public async Task <IHttpActionResult> GetUser([FromUri] int id)
        {
            _deviceGuid = Request.GetOwinContext().Get <Guid>("DeviceGuid");
            var user = await _getUsersService.GetUserByIdAsync(_deviceGuid, id);

            return(Ok((User)user));
        }
        public async Task <bool> IsAuthorizedToStoreProgress(Models.DTO.ChallengeProgress challengeProgress, Guid deviceGuid)
        {
            var postingUser = await _getUsersService.GetUserByDeviceAsync(deviceGuid);

            var targetUser = await _getUsersService.GetUserByIdAsync(deviceGuid, challengeProgress.UserId);

            if (targetUser == null)
            {
                return(false);
            }

            if (targetUser == postingUser && challengeProgress.Status <= Models.ProgressStatus.Completed)
            {
                return(true);
            }

            return(postingUser.UnitAdmin);
        }