Преглед на файлове

Merge remote-tracking branch 'origin/dev' into dev

Vanessa преди 2 години
родител
ревизия
981aa900c9
променени са 1 файла, в които са добавени 6 реда и са изтрити 9 реда
  1. 6 9
      kernel/model/tag.go

+ 6 - 9
kernel/model/tag.go

@@ -128,7 +128,7 @@ func RenameTag(oldLabel, newLabel string) (err error) {
 	}
 
 	util.PushEndlessProgress(Conf.Language(110))
-	util.RandomSleep(1000, 2000)
+	util.RandomSleep(500, 1000)
 
 	tags := sql.QueryTagSpansByKeyword(oldLabel, 102400)
 	treeBlocks := map[string][]string{}
@@ -157,17 +157,14 @@ func RenameTag(oldLabel, newLabel string) (err error) {
 			if ast.NodeDocument == node.Type {
 				if docTagsVal := node.IALAttr("tags"); strings.Contains(docTagsVal, oldLabel) {
 					docTags := strings.Split(docTagsVal, ",")
-					if gulu.Str.Contains(newLabel, docTags) {
-						continue
-					}
 					var tmp []string
-					for i, docTag := range docTags {
-						if !strings.Contains(docTag, oldLabel) {
+					for _, docTag := range docTags {
+						if docTag != oldLabel {
 							tmp = append(tmp, docTag)
 							continue
 						}
-						if newTag := strings.ReplaceAll(docTags[i], oldLabel, newLabel); !gulu.Str.Contains(newTag, tmp) {
-							tmp = append(tmp, newTag)
+						if !gulu.Str.Contains(newLabel, tmp) {
+							tmp = append(tmp, newLabel)
 						}
 					}
 					node.SetIALAttr("tags", strings.Join(tmp, ","))
@@ -179,7 +176,7 @@ func RenameTag(oldLabel, newLabel string) (err error) {
 			for _, nodeTag := range nodeTags {
 				nodeLabels := nodeTag.ChildrenByType(ast.NodeText)
 				for _, nodeLabel := range nodeLabels {
-					if bytes.Contains(nodeLabel.Tokens, []byte(oldLabel)) {
+					if bytes.Equal(nodeLabel.Tokens, []byte(oldLabel)) {
 						nodeLabel.Tokens = bytes.ReplaceAll(nodeLabel.Tokens, []byte(oldLabel), []byte(newLabel))
 					}
 				}