コード例 #1
0
        public AdjustDiaryPermissionResponse Permission([FromBody] AdjustDiaryPermissionRequest adjustRequest)
        {
            int adjustId = 0;

            if (ModelState.IsValid && int.TryParse(adjustRequest.Id, out adjustId))
            {
                ApplicationUser user = _dbContext.GetUserWithToken(adjustRequest.Token);
                if (user != null)
                {
                    IQueryable <Diary> result = _dbContext.Diaries.Where(
                        p => p.Author == user.UserName &&
                        p.Id == adjustId);

                    if (result.Count() == 1)
                    {
                        Diary toAdjust = result.First();
                        toAdjust.IsPublic = adjustRequest.IsPublic;
                        _dbContext.Diaries.Update(toAdjust);
                        if (_dbContext.SaveChanges() > 0)
                        {
                            return(new AdjustDiaryPermissionResponse()
                            {
                                Status = true
                            });
                        }
                    }
                }
            }

            return(new AdjustDiaryPermissionResponse()
            {
                Status = false,
                Error = "Invalid authentication token."
            });
        }
コード例 #2
0
        public bool Edit(String token, DiaryPost post)
        {
            try
            {
                HttpClient client = new HttpClient();
                client.BaseAddress = new Uri(BASE_URL);
                client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                AdjustDiaryPermissionRequest diaryRequest = new AdjustDiaryPermissionRequest
                {
                    Token    = token,
                    Id       = post.Id.ToString(),
                    IsPublic = !post.IsPublic
                };

                HttpResponseMessage response = client.PostAsync("diary/permission", new StringContent(JsonConvert.SerializeObject(diaryRequest), Encoding.UTF8, "application/json")).Result;

                return(response.IsSuccessStatusCode);
            }
            catch
            {
                return(false);
            }
        }