|
|
|
|
@ -215,10 +215,11 @@ func NormalizeHTMLforTelegram(s string) (out string) {
@@ -215,10 +215,11 @@ func NormalizeHTMLforTelegram(s string) (out string) {
|
|
|
|
|
|
|
|
|
|
domDocTest := html.NewTokenizer(strings.NewReader(s)) |
|
|
|
|
previousStartTokenTest := domDocTest.Token() |
|
|
|
|
flagendtag := false |
|
|
|
|
for { |
|
|
|
|
tt := domDocTest.Next() |
|
|
|
|
if len(out) > 2500 { |
|
|
|
|
if e := in_array(previousStartTokenTest.Data, tags) && previousStartTokenTest.Data != "img" && previousStartTokenTest.Data != "br"; e { |
|
|
|
|
if e := in_array(previousStartTokenTest.Data, tags) && previousStartTokenTest.Data != "img" && previousStartTokenTest.Data != "br" && !flagendtag; e { |
|
|
|
|
out += fmt.Sprintf("</%s> ...", previousStartTokenTest.Data) |
|
|
|
|
} else { |
|
|
|
|
out += " ..." |
|
|
|
|
@ -241,6 +242,7 @@ func NormalizeHTMLforTelegram(s string) (out string) {
@@ -241,6 +242,7 @@ func NormalizeHTMLforTelegram(s string) (out string) {
|
|
|
|
|
default: |
|
|
|
|
out += fmt.Sprintf(" <%s>", previousStartTokenTest.Data) |
|
|
|
|
} |
|
|
|
|
flagendtag = false |
|
|
|
|
} |
|
|
|
|
case tt == html.EndTagToken: |
|
|
|
|
t := domDocTest.Token() |
|
|
|
|
@ -251,6 +253,7 @@ func NormalizeHTMLforTelegram(s string) (out string) {
@@ -251,6 +253,7 @@ func NormalizeHTMLforTelegram(s string) (out string) {
|
|
|
|
|
// default:
|
|
|
|
|
out += fmt.Sprintf("</%s> ", t.Data) |
|
|
|
|
// }
|
|
|
|
|
flagendtag = true |
|
|
|
|
} |
|
|
|
|
case tt == html.SelfClosingTagToken: |
|
|
|
|
t := domDocTest.Token() |
|
|
|
|
|