Browse Source

提交代码。

Signed-off-by: zouap <zouap@pcl.ac.cn>
tags/v1.22.3.2^2
zouap 3 years ago
parent
commit
e86cac2973
1 changed files with 20 additions and 7 deletions
  1. +20
    -7
      routers/search.go

+ 20
- 7
routers/search.go View File

@@ -240,7 +240,7 @@ func makePrivateRepo(repos models.RepositoryList, res *SearchRes, keyword string
record["name"] = makeHighLight(keyword, repo.Name)
record["real_name"] = repo.Name
record["owner_name"] = repo.OwnerName
record["description"] = truncLongText(makeHighLight(keyword, repo.Name), true, keyword)
record["description"] = truncLongText(makeHighLight(keyword, repo.Name), true)

hightTopics := make([]string, 0)
if len(repo.Topics) > 0 {
@@ -352,20 +352,33 @@ func dealLongText(text string, Key string, MatchedQueries []string) string {
isNeedToDealText = true
}
}
return truncLongText(text, isNeedToDealText, "color=")
return truncLongText(text, isNeedToDealText)
}

func truncLongText(text string, isNeedToDealText bool, keyword string) string {
func truncLongText(text string, isNeedToDealText bool) string {
startStr := "color="
endStr := "/font"
textRune := []rune(text)
stringlen := len(textRune)
if isNeedToDealText && stringlen > 200 {
index := chineseIndex(textRune, []rune(keyword))
index := findFont(textRune, 0, []rune(startStr))
if index > 0 {
start := index - 50
if start < 0 {
start = 0
}
end := index + 150
endIndex := findFont(textRune, index+5, []rune(endStr))
if endIndex > 0 {
endIndex2 := findFont(textRune, endIndex+5, []rune(endStr))
if endIndex2 > 0 {
if endIndex2-start < 300 {
end = endIndex2 + 10
}
} else {
end = endIndex + 50
}
}
if end >= stringlen {
end = stringlen
}
@@ -382,9 +395,9 @@ func truncLongText(text string, isNeedToDealText bool, keyword string) string {
}
}

func chineseIndex(text []rune, childText []rune) int {
for i, v := range text {
if v == childText[0] {
func findFont(text []rune, startindex int, childText []rune) int {
for i := 0; i <= len(text); i++ {
if text[i] == childText[0] {
re := true
for j, k := range childText {
if k != text[i+j] {


Loading…
Cancel
Save