You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
615 B
29 lines
615 B
package utils |
|
|
|
import ( |
|
"strings" |
|
|
|
"github.com/microcosm-cc/bluemonday" |
|
) |
|
|
|
// StripHTML will strip HTML tags from a string. |
|
func StripHTML(s string) string { |
|
p := bluemonday.NewPolicy() |
|
return p.Sanitize(s) |
|
} |
|
|
|
// MakeSafeStringOfLength will take a string and strip HTML tags, |
|
// trim whitespace, and limit the length. |
|
func MakeSafeStringOfLength(s string, length int) string { |
|
newString := s |
|
newString = StripHTML(newString) |
|
|
|
if len(newString) > length { |
|
newString = newString[:length] |
|
} |
|
|
|
newString = strings.ReplaceAll(newString, "\r", "") |
|
newString = strings.TrimSpace(newString) |
|
|
|
return newString |
|
}
|
|
|