thumbs_yup 0.1.3 → 0.1.4

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9746afa6d09ed650865ec20099fec741fbfbe3d5
4
- data.tar.gz: a3598fedb3171e3953e744e388e77857091fde76
3
+ metadata.gz: f1e2e7d3db1c9820e0823a74fc39d28c7be0273f
4
+ data.tar.gz: 2d0e05f76594e52d97f20cdbf162deea22ef2950
5
5
  SHA512:
6
- metadata.gz: 2299be6f20ee2c4b06ff29556574096d00d6872fb52a2b659fa230a1c370956082e0017d82aec096c3021894bdb841de7e1e80705c6f975b760fd536a5ce9483
7
- data.tar.gz: 61db0a76290ed0241bfb568306b3a4a0787c2c56a9761113d661eea35e52b42c3f288234dcc7b5cc85f5f0db5f4c140e05a2172bc36980dfd4bfa3d84ce5f0aa
6
+ metadata.gz: 9fbb3c802389fb3c49407039fb666f5d56652be2aa3be4731f2022519739bd91221d20632e135441780b499a5f10f23c038dc797b2bcab45bdfcf33011057967
7
+ data.tar.gz: 252e10ccaf078759fdbd48343249b3cc67673cd15c23625616599ccde1ab9cbdcd4e16ac77407c86fda475f89425eb511ef9af533bfc072df932e473226cad8e
@@ -1,42 +1,44 @@
1
- class ReviewDecorator
2
- attr_accessor :review
3
-
4
- def initialize(vars)
5
- @review = {
6
- "body" => vars["body"],
7
- "full_name" => full_name(vars),
8
- "title_and_business_name" => title_and_business_name(vars),
9
- "city_state_and_country" => city_state_and_country(vars),
10
- }
11
- @review = clean_vars(@review)
12
- end
1
+ module ThumbsYup
2
+ class ReviewDecorator
3
+ attr_accessor :review
4
+
5
+ def initialize(vars)
6
+ @review = {
7
+ "body" => vars["body"],
8
+ "full_name" => full_name(vars),
9
+ "title_and_business_name" => title_and_business_name(vars),
10
+ "city_state_and_country" => city_state_and_country(vars),
11
+ }
12
+ @review = clean_vars(@review)
13
+ end
13
14
 
14
- private
15
+ private
15
16
 
16
- def full_name(vars)
17
- return "Anonymous" unless vars["first_name"] || vars["middle_name"] || vars["last_name"] || vars["business_name"]
17
+ def full_name(vars)
18
+ return "Anonymous" unless vars["first_name"] || vars["middle_name"] || vars["last_name"] || vars["business_name"]
18
19
 
19
- separator1 = " " if vars["first_name"] && vars["middle_name"]
20
- separator2 = " " if (vars["first_name"] && vars["last_name"]) || (vars["middle_name"] && vars["last_name"])
20
+ separator1 = " " if vars["first_name"] && vars["middle_name"]
21
+ separator2 = " " if (vars["first_name"] && vars["last_name"]) || (vars["middle_name"] && vars["last_name"])
21
22
 
22
- "#{vars["first_name"]}#{separator1}#{vars["middle_name"]}#{separator2}#{vars["last_name"]}"
23
- end
23
+ "#{vars["first_name"]}#{separator1}#{vars["middle_name"]}#{separator2}#{vars["last_name"]}"
24
+ end
24
25
 
25
- def title_and_business_name(vars)
26
- separator = ", " if vars["title"] && vars["business_name"]
27
- "#{vars["title"]}#{separator}#{vars["business_name"]}"
28
- end
26
+ def title_and_business_name(vars)
27
+ separator = ", " if vars["title"] && vars["business_name"]
28
+ "#{vars["title"]}#{separator}#{vars["business_name"]}"
29
+ end
29
30
 
30
- def city_state_and_country(vars)
31
- separator1 = ", " if vars["city"] && vars["state"]
32
- separator2 = ", " if (vars["city"] && vars["country"]) || (vars["state"] && vars["country"])
33
- "#{vars["city"]}#{separator1}#{vars["state"]}#{separator2}#{vars["country"]}"
34
- end
31
+ def city_state_and_country(vars)
32
+ separator1 = ", " if vars["city"] && vars["state"]
33
+ separator2 = ", " if (vars["city"] && vars["country"]) || (vars["state"] && vars["country"])
34
+ "#{vars["city"]}#{separator1}#{vars["state"]}#{separator2}#{vars["country"]}"
35
+ end
35
36
 
36
- def clean_vars(vars)
37
- vars.each do |key, value|
38
- vars[key] ||= ""
39
- vars[key] = CGI::escapeHTML(vars[key])
37
+ def clean_vars(vars)
38
+ vars.each do |key, value|
39
+ vars[key] ||= ""
40
+ vars[key] = CGI::escapeHTML(vars[key])
41
+ end
40
42
  end
41
43
  end
42
44
  end
@@ -12,13 +12,13 @@ module ThumbsYup
12
12
  reviews = review_data["reviews"]
13
13
  metadata = review_data["metadata"]
14
14
 
15
- html = TemplateRenderer::render_page(
15
+ html = ThumbsYup::TemplateRenderer::render_page(
16
16
  settings: settings,
17
17
  pagination: pagination(metadata),
18
18
  reviews: reviews
19
19
  )
20
20
 
21
- html.html_safe
21
+ html.respond_to?(:html_safe) ? html.html_safe : html
22
22
  end
23
23
 
24
24
  private
@@ -2,44 +2,46 @@ require 'erb'
2
2
  require 'ostruct'
3
3
  require_relative 'review_decorator'
4
4
 
5
- class TemplateRenderer < OpenStruct
6
- class << self
7
- def render_page(vars)
8
- vars[:reviews] = reviews_html(vars[:reviews])
5
+ module ThumbsYup
6
+ class TemplateRenderer < OpenStruct
7
+ class << self
8
+ def render_page(vars)
9
+ vars[:reviews] = reviews_html(vars[:reviews])
9
10
 
10
- TemplateRenderer.new(vars).render(page_template)
11
- end
11
+ TemplateRenderer.new(vars).render(page_template)
12
+ end
12
13
 
13
- private
14
+ private
14
15
 
15
- def reviews_html(reviews)
16
- reviews.reduce("") do |acc, review|
17
- acc << render_review(review)
16
+ def reviews_html(reviews)
17
+ reviews.reduce("") do |acc, review|
18
+ acc << render_review(review)
19
+ end
18
20
  end
19
- end
20
21
 
21
- def render_review(vars)
22
- vars = ReviewDecorator.new(vars).review
23
- TemplateRenderer.new(vars).render(review_template)
24
- end
22
+ def render_review(vars)
23
+ vars = ThumbsYup::ReviewDecorator.new(vars).review
24
+ TemplateRenderer.new(vars).render(review_template)
25
+ end
25
26
 
26
- def review_template
27
- style = ThumbsYup.configuration.review_style
28
- background = ThumbsYup.configuration.review_background
29
- template_file = style + "_" + background + ".erb"
30
- File.read(
31
- File.join(File.dirname(__FILE__), 'templates', template_file)
32
- )
33
- end
27
+ def review_template
28
+ style = ThumbsYup.configuration.review_style
29
+ background = ThumbsYup.configuration.review_background
30
+ template_file = style + "_" + background + ".erb"
31
+ File.read(
32
+ File.join(File.dirname(__FILE__), 'templates', template_file)
33
+ )
34
+ end
34
35
 
35
- def page_template
36
- File.read(
37
- File.join(File.dirname(__FILE__), 'reviews.erb')
38
- )
36
+ def page_template
37
+ File.read(
38
+ File.join(File.dirname(__FILE__), 'reviews.erb')
39
+ )
40
+ end
39
41
  end
40
- end
41
42
 
42
- def render(template)
43
- ERB.new(template).result(binding)
43
+ def render(template)
44
+ ERB.new(template).result(binding)
45
+ end
44
46
  end
45
47
  end
@@ -3,8 +3,8 @@
3
3
  <%= body %>
4
4
  </div>
5
5
  <p class="signature">
6
- <%= full_name %><% unless full_name.blank? %><br><% end %>
7
- <%= title_and_business_name %><% unless title_and_business_name.blank? %><br><% end %>
6
+ <%= full_name %><% unless full_name.empty? %><br><% end %>
7
+ <%= title_and_business_name %><% unless title_and_business_name.empty? %><br><% end %>
8
8
  <%= city_state_and_country %>
9
9
  </p>
10
10
  </div>
@@ -1,3 +1,3 @@
1
1
  module ThumbsYup
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
data/thumbs_yup.gemspec CHANGED
@@ -36,4 +36,5 @@ Gem::Specification.new do |spec|
36
36
  spec.add_development_dependency "bundler", "~> 1.14"
37
37
  spec.add_development_dependency "rake", "~> 10.0"
38
38
  spec.add_development_dependency "rspec", "~> 3.0"
39
+ spec.add_development_dependency "pry"
39
40
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thumbs_yup
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jomana Malone
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2017-05-14 00:00:00.000000000 Z
12
+ date: 2017-05-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -53,6 +53,20 @@ dependencies:
53
53
  - - "~>"
54
54
  - !ruby/object:Gem::Version
55
55
  version: '3.0'
56
+ - !ruby/object:Gem::Dependency
57
+ name: pry
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: '0'
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - ">="
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
56
70
  description: Creates the HTML, styling, javascript and review data necessary to embed
57
71
  reviews in a website.
58
72
  email: