Skip to content

Commit

Permalink
🐛 Search ignore is not working in some cases
Browse files Browse the repository at this point in the history
  • Loading branch information
88250 committed Oct 2, 2024
1 parent 512e727 commit 655b6bc
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 28 deletions.
19 changes: 18 additions & 1 deletion kernel/model/block.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
package model

import (
"bytes"
"errors"
"fmt"
"strconv"
Expand Down Expand Up @@ -298,7 +299,23 @@ func IsBlockFolded(id string) (isFolded, isRoot bool) {
func RecentUpdatedBlocks() (ret []*Block) {
ret = []*Block{}

sqlBlocks := sql.QueryRecentUpdatedBlocks()
sqlStmt := "SELECT * FROM blocks WHERE type = 'p' AND length > 1"
if util.ContainerIOS == util.Container || util.ContainerAndroid == util.Container {
sqlStmt = "SELECT * FROM blocks WHERE type = 'd'"
}

if ignoreLines := getSearchIgnoreLines(); 0 < len(ignoreLines) {
// Support ignore search results https://github.com/siyuan-note/siyuan/issues/10089
buf := bytes.Buffer{}
for _, line := range ignoreLines {
buf.WriteString(" AND ")
buf.WriteString(line)
}
sqlStmt += buf.String()
}

sqlStmt += " ORDER BY updated DESC"
sqlBlocks := sql.SelectBlocksRawStmt(sqlStmt, 1, 16)
if 1 > len(sqlBlocks) {
return
}
Expand Down
27 changes: 0 additions & 27 deletions kernel/sql/block_query.go
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ import (
sqlparser2 "github.com/rqlite/sql"
"github.com/siyuan-note/logging"
"github.com/siyuan-note/siyuan/kernel/treenode"
"github.com/siyuan-note/siyuan/kernel/util"
)

func QueryEmptyContentEmbedBlocks() (ret []*Block) {
Expand Down Expand Up @@ -123,32 +122,6 @@ func queryBlockIDByParentID(parentID string) (ret []string) {
return
}

func QueryRecentUpdatedBlocks() (ret []*Block) {
sqlStmt := "SELECT * FROM blocks WHERE type = 'p' AND length > 1 ORDER BY updated DESC LIMIT 16"
if util.ContainerIOS == util.Container || util.ContainerAndroid == util.Container {
sqlStmt = "SELECT * FROM blocks WHERE type = 'd' ORDER BY updated DESC LIMIT 16"
}
rows, err := query(sqlStmt)
if err != nil {
logging.LogErrorf("sql query [%s] failed: %s", sqlStmt, err)
return
}
defer rows.Close()
for rows.Next() {
if block := scanBlockRows(rows); nil != block {
ret = append(ret, block)
}
}
return
}

func QueryBlockByNameOrAlias(rootID, text string) (ret *Block) {
sqlStmt := "SELECT * FROM blocks WHERE root_id = ? AND (alias LIKE ? OR name = ?)"
row := queryRow(sqlStmt, rootID, "%"+text+"%", text)
ret = scanBlockRow(row)
return
}

func QueryBlockAliases(rootID string) (ret []string) {
sqlStmt := "SELECT alias FROM blocks WHERE root_id = ? AND alias != ''"
rows, err := query(sqlStmt, rootID)
Expand Down

0 comments on commit 655b6bc

Please sign in to comment.