Explorar o código

fix:兼容老文档的TOC

lifei6671 %!s(int64=7) %!d(string=hai) anos
pai
achega
eb8bac4eec
Modificáronse 2 ficheiros con 10 adicións e 5 borrados
  1. 0 4
      models/DocumentModel.go
  2. 10 1
      utils/html.go

+ 0 - 4
models/DocumentModel.go

@@ -291,8 +291,6 @@ func (item *Document) Processor() *Document {
 							selector.AppendHtml(content.String())
 						} else if selector := docQuery.Find("article.markdown-article-inner").First(); selector.Size() > 0 {
 							selector.AppendHtml(content.String())
-						} else {
-							docQuery.Children().WrapHtml("<article class=\"markdown-article-inner\"></article>").AppendHtml(content.String())
 						}
 					}
 				}
@@ -316,8 +314,6 @@ func (item *Document) Processor() *Document {
 					selector.AppendHtml(release)
 				} else if selector := docQuery.Find("article.markdown-article-inner").First(); selector.Size() > 0 {
 					selector.First().AppendHtml(release)
-				} else {
-					docQuery.Children().WrapHtml("<article class=\"markdown-article-inner\"></article>").AppendHtml(release);
 				}
 			}
 

+ 10 - 1
utils/html.go

@@ -105,7 +105,16 @@ func SafetyProcessor(html string) string {
 				}
 			}
 		})
-
+		//添加文档标签包裹
+		if selector := docQuery.Find("article.markdown-article-inner").First(); selector.Size() <= 0 {
+			docQuery.Children().WrapAllHtml("<article class=\"markdown-article-inner\"></article>")
+		}
+		//解决文档内容缺少包裹标签的问题
+		if selector := docQuery.Find("div.markdown-article").First(); selector.Size() <= 0 {
+			if selector := docQuery.Find("div.markdown-toc").First(); selector.Size() > 0 {
+				docQuery.Find("div.markdown-toc").NextAll().WrapAllHtml("<div class=\"markdown-article\"></div>")
+			}
+		}
 
 
 		if html, err := docQuery.Html(); err == nil {