aboutsummaryrefslogtreecommitdiff
path: root/service/service.go
diff options
context:
space:
mode:
authorr <r@freesoftwareextremist.com>2021-01-30 16:51:09 +0000
committerr <r@freesoftwareextremist.com>2021-01-30 16:53:57 +0000
commit4f1425febf6efb45eaf91aff19b215b8c7e77bec (patch)
treeb6b72093906cac8c98ef9d593eed62214c3b5ceb /service/service.go
parent3ac95ab3b117ee8867a30c8e4b30ab37411e5ccf (diff)
downloadbloat-4f1425febf6efb45eaf91aff19b215b8c7e77bec.tar.gz
bloat-4f1425febf6efb45eaf91aff19b215b8c7e77bec.zip
Add filters
Diffstat (limited to 'service/service.go')
-rw-r--r--service/service.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/service/service.go b/service/service.go
index ce689fd..8149f33 100644
--- a/service/service.go
+++ b/service/service.go
@@ -641,6 +641,22 @@ func (s *service) SettingsPage(c *client) (err error) {
return s.renderer.Render(rCtx, c, renderer.SettingsPage, data)
}
+func (svc *service) FiltersPage(c *client) (err error) {
+ filters, err := c.GetFilters(ctx)
+ if err != nil {
+ return
+ }
+
+ commonData := svc.getCommonData(c, "filters")
+ data := &renderer.FiltersData{
+ CommonData: commonData,
+ Filters: filters,
+ }
+
+ rCtx := getRendererContext(c)
+ return svc.renderer.Render(rCtx, c, renderer.FiltersPage, data)
+}
+
func (s *service) SingleInstance() (instance string, ok bool) {
if len(s.singleInstance) > 0 {
instance = s.singleInstance
@@ -908,3 +924,12 @@ func (s *service) UnBookmark(c *client, id string) (err error) {
_, err = c.Unbookmark(ctx, id)
return
}
+
+func (svc *service) Filter(c *client, phrase string, wholeWord bool) (err error) {
+ fctx := []string{"home", "notifications", "public", "thread"}
+ return c.AddFilter(ctx, phrase, fctx, true, wholeWord, nil)
+}
+
+func (svc *service) UnFilter(c *client, id string) (err error) {
+ return c.RemoveFilter(ctx, id)
+}