diff --git a/kernel/conf/search.go b/kernel/conf/search.go index 5223451d3..b193cb62b 100644 --- a/kernel/conf/search.go +++ b/kernel/conf/search.go @@ -42,6 +42,7 @@ type Search struct { VideoBlock bool `json:"videoBlock"` IFrameBlock bool `json:"iframeBlock"` WidgetBlock bool `json:"widgetBlock"` + Callout bool `json:"callout"` Limit int `json:"limit"` CaseSensitive bool `json:"caseSensitive"` @@ -84,6 +85,7 @@ func NewSearch() *Search { VideoBlock: false, IFrameBlock: false, WidgetBlock: false, + Callout: false, Limit: 64, CaseSensitive: false, @@ -227,6 +229,12 @@ func (s *Search) TypeFilter() string { buf.WriteByte('\'') buf.WriteString(",") } + if s.Callout { + buf.WriteByte('\'') + buf.WriteString(treenode.TypeAbbr(ast.NodeCallout.String())) + buf.WriteByte('\'') + buf.WriteString(",") + } ret := buf.String() if "" == ret { diff --git a/kernel/model/search.go b/kernel/model/search.go index d32814241..98663f15c 100644 --- a/kernel/model/search.go +++ b/kernel/model/search.go @@ -1433,6 +1433,7 @@ func buildTypeFilter(types map[string]bool) string { s.VideoBlock = types["videoBlock"] s.IFrameBlock = types["iframeBlock"] s.WidgetBlock = types["widgetBlock"] + s.Callout = types["callout"] } else { s.Document = Conf.Search.Document s.Heading = Conf.Search.Heading @@ -1451,6 +1452,7 @@ func buildTypeFilter(types map[string]bool) string { s.VideoBlock = Conf.Search.VideoBlock s.IFrameBlock = Conf.Search.IFrameBlock s.WidgetBlock = Conf.Search.WidgetBlock + s.Callout = Conf.Search.Callout } return s.TypeFilter() }