mirror of
https://github.com/nkanaev/yarr.git
synced 2026-06-28 02:55:17 +00:00
add storage interface, fix all references
This commit is contained in:
@@ -20,7 +20,7 @@ import (
|
||||
"github.com/nkanaev/yarr/src/server/gzip"
|
||||
"github.com/nkanaev/yarr/src/server/opml"
|
||||
"github.com/nkanaev/yarr/src/server/router"
|
||||
"github.com/nkanaev/yarr/src/storage"
|
||||
"github.com/nkanaev/yarr/src/storage/model"
|
||||
"github.com/nkanaev/yarr/src/worker"
|
||||
)
|
||||
|
||||
@@ -141,7 +141,7 @@ func (s *Server) handleFolder(c *router.Context) {
|
||||
c.Out.WriteHeader(http.StatusBadRequest)
|
||||
return
|
||||
}
|
||||
s.db.UpdateFolder(id, storage.UpdateFolderParams{
|
||||
s.db.UpdateFolder(id, model.UpdateFolderParams{
|
||||
Title: body.Title,
|
||||
IsExpanded: body.IsExpanded,
|
||||
})
|
||||
@@ -248,7 +248,7 @@ func (s *Server) handleFeedList(c *router.Context) {
|
||||
map[string]any{"status": "multiple", "choice": result.Sources},
|
||||
)
|
||||
case result.Feed != nil:
|
||||
feed := s.db.CreateFeed(storage.CreateFeedParams{
|
||||
feed := s.db.CreateFeed(model.CreateFeedParams{
|
||||
Title: result.Feed.Title,
|
||||
Link: result.Feed.SiteURL,
|
||||
FeedLink: result.FeedLink,
|
||||
@@ -288,7 +288,7 @@ func (s *Server) handleFeed(c *router.Context) {
|
||||
c.Out.WriteHeader(http.StatusBadRequest)
|
||||
return
|
||||
}
|
||||
params := storage.UpdateFeedParams{}
|
||||
params := model.UpdateFeedParams{}
|
||||
if title, ok := body["title"]; ok {
|
||||
if reflect.TypeOf(title).Kind() == reflect.String {
|
||||
t := title.(string)
|
||||
@@ -297,10 +297,10 @@ func (s *Server) handleFeed(c *router.Context) {
|
||||
}
|
||||
if f_id, ok := body["folder_id"]; ok {
|
||||
if f_id == nil {
|
||||
params.FolderID = storage.SetNullable[int64](nil)
|
||||
params.FolderID = model.SetNullable[int64](nil)
|
||||
} else if reflect.TypeOf(f_id).Kind() == reflect.Float64 {
|
||||
folderId := int64(f_id.(float64))
|
||||
params.FolderID = storage.SetNullable(&folderId)
|
||||
params.FolderID = model.SetNullable(&folderId)
|
||||
}
|
||||
}
|
||||
if link, ok := body["feed_link"]; ok {
|
||||
@@ -366,7 +366,7 @@ func (s *Server) handleItemList(c *router.Context) {
|
||||
perPage := 20
|
||||
query := c.Req.URL.Query()
|
||||
|
||||
filter := storage.ItemFilter{}
|
||||
filter := model.ItemFilter{}
|
||||
if folderID, err := c.QueryInt64("folder_id"); err == nil {
|
||||
filter.FolderID = &folderID
|
||||
}
|
||||
@@ -377,7 +377,7 @@ func (s *Server) handleItemList(c *router.Context) {
|
||||
filter.After = &after
|
||||
}
|
||||
if status := query.Get("status"); len(status) != 0 {
|
||||
statusValue := storage.StatusValues[status]
|
||||
statusValue := model.StatusValues[status]
|
||||
filter.Status = &statusValue
|
||||
}
|
||||
if search := query.Get("search"); len(search) != 0 {
|
||||
@@ -403,7 +403,7 @@ func (s *Server) handleItemList(c *router.Context) {
|
||||
"has_more": hasMore,
|
||||
})
|
||||
} else if c.Req.Method == "PUT" {
|
||||
filter := storage.MarkFilter{}
|
||||
filter := model.MarkFilter{}
|
||||
|
||||
if folderID, err := c.QueryInt64("folder_id"); err == nil {
|
||||
filter.FolderID = &folderID
|
||||
@@ -422,7 +422,7 @@ func (s *Server) handleSettings(c *router.Context) {
|
||||
if c.Req.Method == "GET" {
|
||||
c.JSON(http.StatusOK, s.db.GetSettings())
|
||||
} else if c.Req.Method == "PUT" {
|
||||
var params storage.UpdateSettingsParams
|
||||
var params model.UpdateSettingsParams
|
||||
if err := json.NewDecoder(c.Req.Body).Decode(¶ms); err != nil {
|
||||
c.Out.WriteHeader(http.StatusBadRequest)
|
||||
return
|
||||
@@ -452,7 +452,7 @@ func (s *Server) handleOPMLImport(c *router.Context) {
|
||||
return
|
||||
}
|
||||
for _, f := range doc.Feeds {
|
||||
s.db.CreateFeed(storage.CreateFeedParams{
|
||||
s.db.CreateFeed(model.CreateFeedParams{
|
||||
Title: f.Title,
|
||||
Link: f.SiteUrl,
|
||||
FeedLink: f.FeedUrl,
|
||||
@@ -461,7 +461,7 @@ func (s *Server) handleOPMLImport(c *router.Context) {
|
||||
for _, f := range doc.Folders {
|
||||
folder := s.db.CreateFolder(f.Title)
|
||||
for _, ff := range f.AllFeeds() {
|
||||
s.db.CreateFeed(storage.CreateFeedParams{
|
||||
s.db.CreateFeed(model.CreateFeedParams{
|
||||
Title: ff.Title,
|
||||
Link: ff.SiteUrl,
|
||||
FeedLink: ff.FeedUrl,
|
||||
@@ -485,7 +485,7 @@ func (s *Server) handleOPMLExport(c *router.Context) {
|
||||
|
||||
doc := opml.Folder{}
|
||||
|
||||
feedsByFolderID := make(map[int64][]*storage.Feed)
|
||||
feedsByFolderID := make(map[int64][]*model.Feed)
|
||||
for _, feed := range s.db.ListFeeds() {
|
||||
if feed.FolderId == nil {
|
||||
doc.Feeds = append(doc.Feeds, opml.Feed{
|
||||
|
||||
Reference in New Issue
Block a user