aboutsummaryrefslogtreecommitdiffhomepage
path: root/reader/feed
diff options
context:
space:
mode:
authorGravatar Frédéric Guillot <fred@miniflux.net>2017-11-24 22:29:20 -0800
committerGravatar Frédéric Guillot <fred@miniflux.net>2017-11-24 22:29:20 -0800
commit71bf7e43580377a9bb98c6444c32e95b53602f12 (patch)
tree477d57670a17345a28af8e09a077113d3c7b827f /reader/feed
parent747da03e4cf1478937a434792fdb52dd10ae8cda (diff)
Improve API
Diffstat (limited to 'reader/feed')
-rw-r--r--reader/feed/handler.go15
1 files changed, 10 insertions, 5 deletions
diff --git a/reader/feed/handler.go b/reader/feed/handler.go
index c046ad9..c6dc448 100644
--- a/reader/feed/handler.go
+++ b/reader/feed/handler.go
@@ -18,11 +18,12 @@ import (
)
var (
- errRequestFailed = "Unable to execute request: %v"
- errServerFailure = "Unable to fetch feed (statusCode=%d)."
- errDuplicate = "This feed already exists (%s)."
- errNotFound = "Feed %d not found"
- errEncoding = "Unable to normalize encoding: %v."
+ errRequestFailed = "Unable to execute request: %v"
+ errServerFailure = "Unable to fetch feed (statusCode=%d)."
+ errDuplicate = "This feed already exists (%s)."
+ errNotFound = "Feed %d not found"
+ errEncoding = "Unable to normalize encoding: %v."
+ errCategoryNotFound = "Category not found for this user."
)
// Handler contains all the logic to create and refresh feeds.
@@ -34,6 +35,10 @@ type Handler struct {
func (h *Handler) CreateFeed(userID, categoryID int64, url string) (*model.Feed, error) {
defer helper.ExecutionTime(time.Now(), fmt.Sprintf("[Handler:CreateFeed] feedUrl=%s", url))
+ if !h.store.CategoryExists(userID, categoryID) {
+ return nil, errors.NewLocalizedError(errCategoryNotFound)
+ }
+
client := http.NewClient(url)
response, err := client.Get()
if err != nil {