module Jekyll::EmailProtect::EmailProtectionFilter

Public Instance Methods

encode_email(input) click to toggle source

Percent-encode alphanumeric characters of an email address

# File lib/jekyll/email-protect.rb, line 6
def encode_email(input)
  input.to_s.chars.inject(String.new) do |result, char|
    if char =~ /\p{Alnum}/
      char.bytes.inject(result) do |result, byte|
        result << '%%%02X' % byte
      end
    else
      result << char
    end
  end
end
html_encode_email(input) click to toggle source

HTML-encode characters of an email address

# File lib/jekyll/email-protect.rb, line 19
def html_encode_email(input)
  input.to_s.chars.inject(String.new) do |result, char|
    char.bytes.inject(result) do |result, byte|
      result << '&#' + byte.to_s + ';'
    end
  end
end