Current section
Files
Jump to
Current section
Files
lib/ezmodex/html/sanitizer.ex
defmodule Ezmodex.HTML.Sanitizer do
import String, only: [replace: 3]
@moduledoc """
Provides functions to sanitize HTML
"""
@doc """
Replaces instances of & \' \" < > and grave tick with HMTL entity names
## Examples
iex> Ezmodex.HTML.Sanitizer.clean("<test>")
"<test>"
iex> Ezmodex.HTML.Sanitizer.clean("Tom & Jerry")
"Tom & Jerry"
"""
@spec clean(String.t) :: String.t
def clean(""), do: ""
def clean(string) do
string
|> replace("&", "&")
|> replace("'", "'")
|> replace("`", "`")
|> replace("\"", """)
|> replace("<", "<")
|> replace(">", ">")
end
end