aboutsummaryrefslogtreecommitdiffhomepage
path: root/storage/feed.go
diff options
context:
space:
mode:
Diffstat (limited to 'storage/feed.go')
-rw-r--r--storage/feed.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/storage/feed.go b/storage/feed.go
index 5250b9a..844f58e 100644
--- a/storage/feed.go
+++ b/storage/feed.go
@@ -268,6 +268,33 @@ func (s *Storage) UpdateFeed(feed *model.Feed) (err error) {
return nil
}
+// UpdateFeedError updates feed errors.
+func (s *Storage) UpdateFeedError(feed *model.Feed) (err error) {
+ defer timer.ExecutionTime(time.Now(), fmt.Sprintf("[Storage:UpdateFeedError] feedID=%d", feed.ID))
+
+ query := `
+ UPDATE feeds
+ SET
+ parsing_error_msg=$1,
+ parsing_error_count=$2,
+ checked_at=$3
+ WHERE id=$4 AND user_id=$5`
+
+ _, err = s.db.Exec(query,
+ feed.ParsingErrorMsg,
+ feed.ParsingErrorCount,
+ feed.CheckedAt,
+ feed.ID,
+ feed.UserID,
+ )
+
+ if err != nil {
+ return fmt.Errorf("unable to update feed error #%d (%s): %v", feed.ID, feed.FeedURL, err)
+ }
+
+ return nil
+}
+
// RemoveFeed removes a feed.
func (s *Storage) RemoveFeed(userID, feedID int64) error {
defer timer.ExecutionTime(time.Now(), fmt.Sprintf("[Storage:RemoveFeed] userID=%d, feedID=%d", userID, feedID))