// PUT: api/Collections public IHttpActionResult Put([FromBody] CollectionAPI collectionApi) { if (!ModelState.IsValid) { return(BadRequest()); } try { Collection oldcollection = _collectionRepository.GetById(collectionApi.Id); if (oldcollection == null) { _collectionRepository.Insert(collectionApi.ToCollectionNoBookmarks()); } else { Collection updatedColl = collectionApi.ToCollectionNoBookmarks(); updatedColl.Bookmarks = oldcollection.Bookmarks; updatedColl.Created = oldcollection.Created; _collectionRepository.Update(updatedColl); } } catch (Exception ex) { // TODO: Log errors return(InternalServerError(ex)); } return(Ok()); }
// POST: api/Collections public IHttpActionResult Post([FromBody] CollectionAPI collectionApi) { if (!ModelState.IsValid) { return(BadRequest()); } _collectionRepository.Insert(collectionApi.ToCollectionNoBookmarks()); return(Ok()); }
public IHttpActionResult GetCollectionById(Guid userid, Guid id) { try { var user = _repo.GetById(userid); if (user == null) { return(BadRequest()); } if (user.Collections == null || !user.Collections.Any(x => x.Id == id)) { return(NotFound()); } var collection = new CollectionAPI(user.Collections.FirstOrDefault(x => x.Id == id)); return(Ok(collection)); } catch (Exception ex) { //TODO: Log error return(InternalServerError(ex)); } }
public IHttpActionResult GetCollectionByIndex(Guid userid, int index) { try { var user = _repo.GetById(userid); if (user == null || index <= 0) { return(BadRequest()); } if (user.Collections == null || user.Collections.Count < index) { return(NotFound()); } var collection = new CollectionAPI(user.Collections.ElementAt(index - 1)); return(Ok(collection)); } catch (Exception ex) { //TODO: Log error return(InternalServerError(ex)); } }