예제 #1
0
        public Task <ActionResult <UserView> > PutBasicAsync([FromBody] UserBasicPost data)
        {
            return(ThrowToAction <UserView>(async() =>
            {
                var userView = await GetCurrentUser();
                var requester = GetRequesterNoFail();

                return mapper.Map <UserView>(await service.WriteSpecialAsync(userView.id, requester, p =>
                {
                    //Only set avatar if they gave us something
                    if (data.avatar != null) //>= 0)
                    {
                        userView.avatar = (long)data.avatar;
                        service.Source.SetAvatar(p, userView);
                    }

                    if (data.special != null)
                    {
                        userView.special = data.special;
                        service.Source.SetSpecial(p, userView);
                    }

                    if (data.hidelist != null)
                    {
                        userView.hidelist = data.hidelist;
                        service.Source.SetHidelist(p, userView);
                    }
                }));


                //Basic doesn't create a new history item (I hope)
                //return mapper.Map<UserView>(await service.WriteAsyncHistoric(userView, GetRequesterNoFail(), false));
            }));
        }
예제 #2
0
        public Task <ActionResult <UserView> > PutBasicAsync([FromBody] UserBasicPost data)
        {
            return(ThrowToAction <UserView>(async() =>
            {
                var original = await GetCurrentUser();
                var userView = mapper.Map <UserViewFull>(original);
                var requester = GetRequesterNoFail();

                if (data.avatar != null)
                {
                    userView.avatar = (long)data.avatar;
                }
                if (data.special != null)
                {
                    userView.special = data.special;
                }
                if (data.hidelist != null)
                {
                    userView.hidelist = data.hidelist;
                }

                return mapper.Map <UserView>(await SpecialWrite(original, userView, requester));
            }));
        }