Compare commits
	
		
			2 Commits
		
	
	
		
			97aa2d626e
			...
			01b0cbce3e
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 01b0cbce3e | |||
| d9fe0c6789 | 
@@ -9,15 +9,23 @@ import (
 | 
			
		||||
func listNewsArticles(c *fiber.Ctx) error {
 | 
			
		||||
	take := c.QueryInt("take", 0)
 | 
			
		||||
	offset := c.QueryInt("offset", 0)
 | 
			
		||||
	source := c.Query("source")
 | 
			
		||||
 | 
			
		||||
	tx := database.C
 | 
			
		||||
 | 
			
		||||
	if len(source) > 0 {
 | 
			
		||||
		tx = tx.Where("source = ?", source)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	var count int64
 | 
			
		||||
	if err := database.C.Model(&models.NewsArticle{}).Count(&count).Error; err != nil {
 | 
			
		||||
	countTx := tx
 | 
			
		||||
	if err := countTx.Model(&models.NewsArticle{}).Count(&count).Error; err != nil {
 | 
			
		||||
		return fiber.NewError(fiber.StatusInternalServerError, err.Error())
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	var articles []models.NewsArticle
 | 
			
		||||
	if err := database.C.Limit(take).Offset(offset).
 | 
			
		||||
		Omit("Content").Order("created_at DESC").
 | 
			
		||||
	if err := tx.Limit(take).Offset(offset).
 | 
			
		||||
		Omit("Content").Order("COALESCE(published_at, created_at) DESC").
 | 
			
		||||
		Find(&articles).Error; err != nil {
 | 
			
		||||
		return fiber.NewError(fiber.StatusInternalServerError, err.Error())
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1,10 +1,14 @@
 | 
			
		||||
package api
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"git.solsynth.dev/hypernet/reader/pkg/internal/models"
 | 
			
		||||
	"git.solsynth.dev/hypernet/reader/pkg/internal/services"
 | 
			
		||||
	"github.com/gofiber/fiber/v2"
 | 
			
		||||
	"github.com/samber/lo"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func getNewsSources(c *fiber.Ctx) error {
 | 
			
		||||
	return c.JSON(services.NewsSources)
 | 
			
		||||
	return c.JSON(lo.Filter(services.NewsSources, func(item models.NewsSource, index int) bool {
 | 
			
		||||
		return item.Enabled
 | 
			
		||||
	}))
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user