1
0
Fork 0
mirror of https://github.com/miniflux/v2.git synced 2025-08-16 18:01:37 +00:00

feat: add entry filters at the feed level

This commit is contained in:
Frédéric Guillot 2025-06-19 14:45:46 -07:00
parent cb59944d6b
commit 2a9d91c783
37 changed files with 513 additions and 350 deletions

View file

@ -46,9 +46,11 @@ func (h *handler) showEditFeedPage(w http.ResponseWriter, r *http.Request) {
Description: feed.Description,
ScraperRules: feed.ScraperRules,
RewriteRules: feed.RewriteRules,
UrlRewriteRules: feed.UrlRewriteRules,
BlocklistRules: feed.BlocklistRules,
KeeplistRules: feed.KeeplistRules,
UrlRewriteRules: feed.UrlRewriteRules,
BlockFilterEntryRules: feed.BlockFilterEntryRules,
KeepFilterEntryRules: feed.KeepFilterEntryRules,
Crawler: feed.Crawler,
UserAgent: feed.UserAgent,
Cookie: feed.Cookie,

View file

@ -18,9 +18,11 @@ type FeedForm struct {
Description string
ScraperRules string
RewriteRules string
UrlRewriteRules string
BlocklistRules string
KeeplistRules string
UrlRewriteRules string
BlockFilterEntryRules string
KeepFilterEntryRules string
Crawler bool
UserAgent string
Cookie string
@ -54,9 +56,11 @@ func (f FeedForm) Merge(feed *model.Feed) *model.Feed {
feed.Description = f.Description
feed.ScraperRules = f.ScraperRules
feed.RewriteRules = f.RewriteRules
feed.UrlRewriteRules = f.UrlRewriteRules
feed.BlocklistRules = f.BlocklistRules
feed.KeeplistRules = f.KeeplistRules
feed.UrlRewriteRules = f.UrlRewriteRules
feed.BlockFilterEntryRules = f.BlockFilterEntryRules
feed.KeepFilterEntryRules = f.KeepFilterEntryRules
feed.Crawler = f.Crawler
feed.UserAgent = f.UserAgent
feed.Cookie = f.Cookie
@ -108,9 +112,11 @@ func NewFeedForm(r *http.Request) *FeedForm {
UserAgent: r.FormValue("user_agent"),
Cookie: r.FormValue("cookie"),
RewriteRules: r.FormValue("rewrite_rules"),
UrlRewriteRules: r.FormValue("urlrewrite_rules"),
BlocklistRules: r.FormValue("blocklist_rules"),
KeeplistRules: r.FormValue("keeplist_rules"),
UrlRewriteRules: r.FormValue("urlrewrite_rules"),
BlockFilterEntryRules: r.FormValue("block_filter_entry_rules"),
KeepFilterEntryRules: r.FormValue("keep_filter_entry_rules"),
Crawler: r.FormValue("crawler") == "1",
CategoryID: int64(categoryID),
Username: r.FormValue("feed_username"),

View file

@ -24,9 +24,11 @@ type SubscriptionForm struct {
Password string
ScraperRules string
RewriteRules string
UrlRewriteRules string
BlocklistRules string
KeeplistRules string
UrlRewriteRules string
BlockFilterEntryRules string
KeepFilterEntryRules string
DisableHTTP2 bool
ProxyURL string
}
@ -79,9 +81,11 @@ func NewSubscriptionForm(r *http.Request) *SubscriptionForm {
Password: r.FormValue("feed_password"),
ScraperRules: r.FormValue("scraper_rules"),
RewriteRules: r.FormValue("rewrite_rules"),
UrlRewriteRules: r.FormValue("urlrewrite_rules"),
BlocklistRules: r.FormValue("blocklist_rules"),
KeeplistRules: r.FormValue("keeplist_rules"),
UrlRewriteRules: r.FormValue("urlrewrite_rules"),
KeepFilterEntryRules: r.FormValue("keep_filter_entry_rules"),
BlockFilterEntryRules: r.FormValue("block_filter_entry_rules"),
DisableHTTP2: r.FormValue("disable_http2") == "1",
ProxyURL: r.FormValue("proxy_url"),
}

View file

@ -58,9 +58,11 @@ func (h *handler) showChooseSubscriptionPage(w http.ResponseWriter, r *http.Requ
Password: subscriptionForm.Password,
ScraperRules: subscriptionForm.ScraperRules,
RewriteRules: subscriptionForm.RewriteRules,
UrlRewriteRules: subscriptionForm.UrlRewriteRules,
BlocklistRules: subscriptionForm.BlocklistRules,
KeeplistRules: subscriptionForm.KeeplistRules,
UrlRewriteRules: subscriptionForm.UrlRewriteRules,
KeepFilterEntryRules: subscriptionForm.KeepFilterEntryRules,
BlockFilterEntryRules: subscriptionForm.BlockFilterEntryRules,
FetchViaProxy: subscriptionForm.FetchViaProxy,
DisableHTTP2: subscriptionForm.DisableHTTP2,
ProxyURL: subscriptionForm.ProxyURL,

View file

@ -106,9 +106,11 @@ func (h *handler) submitSubscription(w http.ResponseWriter, r *http.Request) {
Password: subscriptionForm.Password,
ScraperRules: subscriptionForm.ScraperRules,
RewriteRules: subscriptionForm.RewriteRules,
UrlRewriteRules: subscriptionForm.UrlRewriteRules,
BlocklistRules: subscriptionForm.BlocklistRules,
KeeplistRules: subscriptionForm.KeeplistRules,
UrlRewriteRules: subscriptionForm.UrlRewriteRules,
KeepFilterEntryRules: subscriptionForm.KeepFilterEntryRules,
BlockFilterEntryRules: subscriptionForm.BlockFilterEntryRules,
FetchViaProxy: subscriptionForm.FetchViaProxy,
DisableHTTP2: subscriptionForm.DisableHTTP2,
ProxyURL: subscriptionForm.ProxyURL,
@ -134,9 +136,11 @@ func (h *handler) submitSubscription(w http.ResponseWriter, r *http.Request) {
Password: subscriptionForm.Password,
ScraperRules: subscriptionForm.ScraperRules,
RewriteRules: subscriptionForm.RewriteRules,
UrlRewriteRules: subscriptionForm.UrlRewriteRules,
BlocklistRules: subscriptionForm.BlocklistRules,
KeeplistRules: subscriptionForm.KeeplistRules,
UrlRewriteRules: subscriptionForm.UrlRewriteRules,
KeepFilterEntryRules: subscriptionForm.KeepFilterEntryRules,
BlockFilterEntryRules: subscriptionForm.BlockFilterEntryRules,
FetchViaProxy: subscriptionForm.FetchViaProxy,
DisableHTTP2: subscriptionForm.DisableHTTP2,
ProxyURL: subscriptionForm.ProxyURL,