spamspanify 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/spamspanify/version.rb +1 -1
- data/lib/spamspanify.rb +6 -4
- data/spec/spamspanify_spec.rb +10 -3
- data/spec/spec_helper.rb +2 -1
- metadata +2 -2
data/lib/spamspanify/version.rb
CHANGED
data/lib/spamspanify.rb
CHANGED
@@ -39,7 +39,7 @@ module Spamspanify
|
|
39
39
|
# SpamSpam markup
|
40
40
|
def mailto_links input, paranoia_level = 1
|
41
41
|
input.gsub(MAILTO_REGEXP) do |mailto|
|
42
|
-
create_markup(mailto[EMAIL_REGEXP], paranoia_level)
|
42
|
+
create_markup(mailto[EMAIL_REGEXP], paranoia_level, mailto.split(">")[1].split("<")[0])
|
43
43
|
end
|
44
44
|
end
|
45
45
|
|
@@ -47,18 +47,20 @@ module Spamspanify
|
|
47
47
|
#
|
48
48
|
# @param [String] email_address
|
49
49
|
# @param [Integer] paranoia_level
|
50
|
+
# @param [String] mailto_link_text
|
50
51
|
# @return [String] SpamSpan HTML markup
|
51
52
|
# @raise [Spamspanify::ParanoiaLevelNotSupportedError] when a not supported
|
52
53
|
# paranoia level is requested
|
53
|
-
def create_markup email_address, paranoia_level = 1
|
54
|
+
def create_markup email_address, paranoia_level = 1, mailto_link_text = nil
|
55
|
+
mailto_link_text = nil if (email_address == mailto_link_text)
|
54
56
|
user, domain = email_address.split("@")
|
55
57
|
case paranoia_level
|
56
58
|
when 1
|
57
59
|
"<span class='spamspan'><span class='u'>#{ user }</span>@<span class='d'>"\
|
58
|
-
"#{ domain }</span
|
60
|
+
"#{ domain }</span>#{ "(<span class='t'>#{ mailto_link_text }</span>)" if mailto_link_text }</span>"
|
59
61
|
when 3
|
60
62
|
"<span class='spamspan'><span class='u'>#{ undotify(user) }</span> [at] "\
|
61
|
-
"<span class='d'>#{ undotify(domain) }</span
|
63
|
+
"<span class='d'>#{ undotify(domain) }</span>#{ "(<span class='t'>#{ mailto_link_text }</span>)" if mailto_link_text }</span>"
|
62
64
|
else
|
63
65
|
Raise ParanoiaLevelNotSupportError
|
64
66
|
end
|
data/spec/spamspanify_spec.rb
CHANGED
@@ -20,8 +20,15 @@ describe Spamspanify do
|
|
20
20
|
"'u'>major.seven</span>@<span class='d'>a-flat.com</span></span>."
|
21
21
|
end
|
22
22
|
|
23
|
-
|
24
|
-
|
25
|
-
|
23
|
+
describe "should transform html <a href='mailto:..> links as well" do
|
24
|
+
it "when link text is email address" do
|
25
|
+
s = "Email <a href='mailto:b.flat@minor.com'>b.flat@minor.com</a> please."
|
26
|
+
expect(s.spamspanify(1)).to eq "Email <span class='spamspan'><span class='u'>b.flat</span>@<span class='d'>minor.com</span></span> please."
|
27
|
+
end
|
28
|
+
|
29
|
+
it "using the link text as link text again" do
|
30
|
+
s = "Email <a href='mailto:b.flat@minor.com'>B.Flat</a> please."
|
31
|
+
expect(s.spamspanify(1)).to eq "Email <span class='spamspan'><span class='u'>b.flat</span>@<span class='d'>minor.com</span>(<span class='t'>B.Flat</span>)</span> please."
|
32
|
+
end
|
26
33
|
end
|
27
34
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spamspanify
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-12-
|
12
|
+
date: 2012-12-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|