Example #1
0
        // 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());
        }
Example #2
0
 // POST: api/Collections
 public IHttpActionResult Post([FromBody] CollectionAPI collectionApi)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest());
     }
     _collectionRepository.Insert(collectionApi.ToCollectionNoBookmarks());
     return(Ok());
 }
Example #3
0
        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));
            }
        }
Example #4
0
        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));
            }
        }