lib/middleman-protect-emails/extension.rb in middleman-protect-emails-0.2.0 vs lib/middleman-protect-emails/extension.rb in middleman-protect-emails-0.3.0

- old
+ new

@@ -39,10 +39,14 @@ # Keeps track of email replaces replaced_email = false # Replaces mailto links with ROT13 equivalent # TODO: Don't replace plaintext mailto links - new_content = body.gsub /mailto:([A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}(\?[A-Z0-9_\-&=%# ]*)?)/i do + invalid_character = '\s"\'>' + email_username = "[^@#{invalid_character}]+" + email_domain = "[^?#{invalid_character}]+" + email_param = "[^&#{invalid_character}]+" + new_content = body.gsub /mailto:(#{email_username}@#{email_domain}(\?#{email_param}(\&#{email_param})*)?)/is do replaced_email = true email = $1.tr 'A-Za-z','N-ZA-Mn-za-m' "#email-protection-#{email}" end