|
|
|
@@ -355,29 +355,27 @@ func makePrivateRepo(repos models.RepositoryList, res *SearchRes, keyword string |
|
|
|
} |
|
|
|
|
|
|
|
func makeHighLight(keyword string, dest string) string { |
|
|
|
textRune := []rune(strings.ToLower(dest)) |
|
|
|
index := findFont(textRune, 0, []rune(strings.ToLower(keyword))) |
|
|
|
if index >= 0 { |
|
|
|
dest = replaceIngoreUpperOrLower(dest, strings.ToLower(dest), strings.ToLower(keyword), "\u003cfont color='red'\u003e"+keyword+"\u003c/font\u003e") |
|
|
|
} |
|
|
|
|
|
|
|
dest = replaceIngoreUpperOrLower(dest, strings.ToLower(dest), strings.ToLower(keyword)) |
|
|
|
|
|
|
|
return dest |
|
|
|
} |
|
|
|
|
|
|
|
func replaceIngoreUpperOrLower(dest string, destLower string, keyword string, replace string) string { |
|
|
|
func replaceIngoreUpperOrLower(dest string, destLower string, keywordLower string) string { |
|
|
|
re := "" |
|
|
|
last := 0 |
|
|
|
for i := 0; i < len(destLower); i++ { |
|
|
|
if destLower[i] == keyword[0] { |
|
|
|
if destLower[i] == keywordLower[0] { |
|
|
|
isFind := true |
|
|
|
for j := 1; j < len(keyword); j++ { |
|
|
|
if keyword[j] != destLower[i+j] { |
|
|
|
for j := 1; j < len(keywordLower); j++ { |
|
|
|
if keywordLower[j] != destLower[i+j] { |
|
|
|
isFind = false |
|
|
|
break |
|
|
|
} |
|
|
|
} |
|
|
|
if isFind { |
|
|
|
re += dest[last:i] + replace |
|
|
|
i = i + len(keyword) |
|
|
|
re += dest[last:i] + "\u003cfont color='red'\u003e" + dest[i:(i+len(keywordLower))] + "\u003c/font\u003e" |
|
|
|
i = i + len(keywordLower) |
|
|
|
last = i |
|
|
|
} |
|
|
|
} |
|
|
|
|