Пример #1
0
        public Task AddBookmark([FromBody] AddBookmarkRequest request)
        {
            //return _bookmarkService.AddBookmark(request, UserId);
            #region tmp ki lesz veve
            return(_bookmarkService.AddBookmark(request, request.UserIdentifier));

            #endregion
        }
Пример #2
0
 public BookmarkEntity ToEntity(AddBookmarkRequest request)
 {
     return(new BookmarkEntity()
     {
         UserId = request.UserId,
         PostId = request.PostId
     });
 }
        public async Task AddBookmarkAsync_ShouldAddBookmark()
        {
            // arrange
            var request = new AddBookmarkRequest("http://www.google.com");

            // act
            var result = await Client.PostAsJsonAsync($"api/v1/bookmarks", request);

            // assert
            Assert.Equal(HttpStatusCode.Created, result.StatusCode);
        }
Пример #4
0
        public async Task <ResponseBase> AddBookmarkAsync(AddBookmarkRequest request)
        {
            var response = new ResponseBase();

            request.UserId = _userProvider.GetUserId();

            var entity    = _bookmarkMapper.ToEntity(request);
            var isSuccess = await _bookmarkRepository.AddAsync(entity);

            if (!isSuccess)
            {
                response.StatusCode = (int)HttpStatusCode.InternalServerError;
            }

            return(response);
        }
        public async Task <Bookmark> AddBookmarkAsync(AddBookmarkRequest request)
        {
            var bookmark = new Bookmark(request.Url);

            _context.Bookmarks.Add(bookmark);

            var outboxMessage = new OutboxMessage(
                "bookmark.inserted",
                new BookmarkInserted(bookmark.Id, bookmark.Url));

            _context.OutboxMessages.Add(outboxMessage);

            await _context.SaveChangesAsync();

            _logger.LogInformation("Bookmark {url} added", request.Url);

            return(bookmark);
        }
Пример #6
0
        public async Task AddBookmark(AddBookmarkRequest request, string userIdentifier)
        {
            var book = await _context.Book.AsNoTracking().FirstOrDefaultAsync(b => b.BookId == request.BookId)
                       ?? throw new HbrException("Ilyen azonosítójú könyv nem létezik!");

            if (book.PageNumber < request.PageNumber)
            {
                throw new HbrException("A könyvjelző oldalszáma nem lehet nagyobb mint a könyv oldalainak száma!");
            }

            var entity = _mapper.Map <Bookmark>(request);

            entity.LastUpdated = _timeService.UtcNow;

            await _context.Bookmark.AddAsync(entity);

            await _context.SaveChangesAsync();
        }
Пример #7
0
        private async void AddBookMarkButtonClick(object sender, EventArgs e)
        {
            var config = new PromptConfig
            {
                Title      = "Könyvjelző hozzáadása",
                Message    = "Adja meg a könyvjelző oldalszámát!",
                OkText     = "Mentés",
                CancelText = "Mégse"
            };
            var result = await UserDialogs.Instance.PromptAsync(config);

            if (result.Ok)
            {
                try
                {
                    var pageNumber = int.Parse(result.Text);

                    var dialog = UserDialogs.Instance.Loading("Loading");

                    using (var client = new HttpClient())
                    {
                        var bookmark = new ClientBookmarkDto
                        {
                            BookId      = Dto.BookId,
                            PageNumber  = pageNumber,
                            BookmarkId  = new Guid().ToString(),
                            LastUpdated = DateTime.Now,
                            #region tmp ki lesz veve
                            UserIdentifier = HbrApplication.UserIdentifier
                                             #endregion
                        };

                        var request = new AddBookmarkRequest
                        {
                            BookmarkId = bookmark.BookmarkId,
                            BookId     = bookmark.BookId,
                            PageNumber = bookmark.PageNumber,
                            #region tmp ki lesz veve
                            UserIdentifier = HbrApplication.UserIdentifier
                                             #endregion
                        };

                        if (CheckInternetConnection())
                        {
                            await client.PostAsJsonAsync("https://hbr.azurewebsites.net/api/Bookmark/AddBookmark", request);
                        }

                        BookmarkAdapter.AddBookmark(new List <ClientBookmarkDto> {
                            bookmark
                        });
                        _database.AddElement(bookmark);
                    }
                    dialog.Dispose();
                }
                catch (Exception)
                {
                    await UserDialogs.Instance.AlertAsync(new AlertConfig
                    {
                        Title   = "Hibás oldalszám!",
                        Message = "Az oldalszám csak szám lehet, ezért a könyvjelző nem lett hozzáadva!"
                    });
                }
            }
        }
Пример #8
0
        public void ShouldBeInvalid(string url)
        {
            var request = new AddBookmarkRequest(url);

            Assert.False(_validator.Validate(request).IsValid);
        }
Пример #9
0
        public async Task <ActionResult <Bookmark> > AddBookmark([FromBody] AddBookmarkRequest request)
        {
            var addedBookmark = await _bookmarkService.AddBookmarkAsync(request);

            return(CreatedAtAction(nameof(GetBookmark), new { addedBookmark.Id }, addedBookmark));
        }