thumbs_yup 0.1.1 → 0.1.2
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 +4 -4
- data/lib/thumbs_yup/review_decorator.rb +33 -0
- data/lib/thumbs_yup/reviews.erb +2 -2
- data/lib/thumbs_yup/server_embed.rb +1 -11
- data/lib/thumbs_yup/template_renderer.rb +34 -15
- data/lib/thumbs_yup/templates/bubble_hollow.erb +4 -2
- data/lib/thumbs_yup/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3ed198c40962e0e720ebd79f6269cab89fdae92e
|
|
4
|
+
data.tar.gz: a69a51d22ae74f955b32ab34e074f7506ff9ddd1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c3b38f2c2643004cc3a33d2e743ef05a8376f92dd13ee3a33a637449ecdbde20391a315f266009767bba9884c516b3e914343781faf9c8dbd30318aa667a5525
|
|
7
|
+
data.tar.gz: b79da320c197e9ccf1bfa28e6bd3e7779dd5dbbb59a7a1112e031ef7ef7b1b1aba9b0a5b19aad5db0bbb06fefc3d9c3483d3cd96f0a125ad4f36638174e62d36
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
class ReviewDecorator
|
|
2
|
+
attr_accessor :review
|
|
3
|
+
|
|
4
|
+
def initialize(vars)
|
|
5
|
+
@review = {
|
|
6
|
+
"body" => vars["body"],
|
|
7
|
+
"full_name" => "#{vars["first_name"]} #{vars["last_name"]}",
|
|
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
|
|
13
|
+
|
|
14
|
+
private
|
|
15
|
+
|
|
16
|
+
def title_and_business_name(vars)
|
|
17
|
+
separator = ", " if vars["title"] && vars["business_name"]
|
|
18
|
+
"#{vars["title"]}#{separator}#{vars["business_name"]}"
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def city_state_and_country(vars)
|
|
22
|
+
separator1 = ", " if vars["city"] && vars["state"]
|
|
23
|
+
separator2 = ", " if (vars["city"] && vars["country"]) || (vars["state"] && vars["country"])
|
|
24
|
+
"#{vars["city"]}#{separator1}#{vars["state"]}#{separator2}#{vars["country"]}"
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def clean_vars(vars)
|
|
28
|
+
vars.each do |key, value|
|
|
29
|
+
vars[key] ||= ""
|
|
30
|
+
vars[key] = CGI::escapeHTML(vars[key])
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
data/lib/thumbs_yup/reviews.erb
CHANGED
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
</script>
|
|
17
|
-
<div class="thumbsYup">
|
|
17
|
+
<div class="thumbsYup yui3-cssreset">
|
|
18
18
|
<div class="pagination">
|
|
19
19
|
</div>
|
|
20
|
-
<%=
|
|
20
|
+
<%= reviews %>
|
|
21
21
|
</div>
|
|
22
22
|
<script type='text/javascript' src=<%= "'#{settings[:thumbs_yup_url]}" %>/assets/thumbs-yup-client.js'></script>
|
|
@@ -8,20 +8,14 @@ module ThumbsYup
|
|
|
8
8
|
def render_public_reviews(page: nil)
|
|
9
9
|
check_user_identifer!
|
|
10
10
|
|
|
11
|
-
reviews_html = ""
|
|
12
|
-
|
|
13
11
|
review_data = json_review_data(page: page)
|
|
14
12
|
reviews = review_data["reviews"]
|
|
15
13
|
metadata = review_data["metadata"]
|
|
16
14
|
|
|
17
|
-
reviews.each do |review|
|
|
18
|
-
reviews_html += decorate(review)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
15
|
html = TemplateRenderer::render_page(
|
|
22
16
|
settings: settings,
|
|
23
17
|
pagination: pagination(metadata),
|
|
24
|
-
|
|
18
|
+
reviews: reviews
|
|
25
19
|
)
|
|
26
20
|
|
|
27
21
|
html.html_safe
|
|
@@ -56,10 +50,6 @@ module ThumbsYup
|
|
|
56
50
|
JSON.parse(response.body)
|
|
57
51
|
end
|
|
58
52
|
|
|
59
|
-
def decorate(json_review)
|
|
60
|
-
TemplateRenderer::render_review(json_review)
|
|
61
|
-
end
|
|
62
|
-
|
|
63
53
|
def settings
|
|
64
54
|
{
|
|
65
55
|
review_style: ThumbsYup.configuration.review_style,
|
|
@@ -1,23 +1,42 @@
|
|
|
1
1
|
require 'erb'
|
|
2
2
|
require 'ostruct'
|
|
3
|
+
require_relative 'review_decorator'
|
|
3
4
|
|
|
4
5
|
class TemplateRenderer < OpenStruct
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
6
|
+
class << self
|
|
7
|
+
def render_page(vars)
|
|
8
|
+
vars[:reviews] = reviews_html(vars[:reviews])
|
|
9
|
+
|
|
10
|
+
TemplateRenderer.new(vars).render(page_template)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
private
|
|
14
|
+
|
|
15
|
+
def reviews_html(reviews)
|
|
16
|
+
reviews.reduce("") do |acc, review|
|
|
17
|
+
acc << render_review(review)
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def render_review(vars)
|
|
22
|
+
vars = ReviewDecorator.new(vars).review
|
|
23
|
+
TemplateRenderer.new(vars).render(review_template)
|
|
24
|
+
end
|
|
25
|
+
|
|
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
|
|
15
34
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
35
|
+
def page_template
|
|
36
|
+
File.read(
|
|
37
|
+
File.join(File.dirname(__FILE__), 'reviews.erb')
|
|
38
|
+
)
|
|
39
|
+
end
|
|
21
40
|
end
|
|
22
41
|
|
|
23
42
|
def render(template)
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
<div class="review<%= ThumbsYup.configuration.review_size.capitalize %>">
|
|
2
2
|
<div class="rstyle<%= ThumbsYup.configuration.review_color.capitalize + ThumbsYup.configuration.review_style.capitalize + ThumbsYup.configuration.review_background.capitalize %>">
|
|
3
|
-
<%=
|
|
3
|
+
<%= body %>
|
|
4
4
|
</div>
|
|
5
5
|
<p class="signature">
|
|
6
|
-
<%=
|
|
6
|
+
<%= full_name %><% unless full_name.blank? %><br><% end %>
|
|
7
|
+
<%= title_and_business_name %><% unless title_and_business_name.blank? %><br><% end %>
|
|
8
|
+
<%= city_state_and_country %>
|
|
7
9
|
</p>
|
|
8
10
|
</div>
|
data/lib/thumbs_yup/version.rb
CHANGED
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.
|
|
4
|
+
version: 0.1.2
|
|
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-
|
|
12
|
+
date: 2017-05-14 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: bundler
|
|
@@ -73,6 +73,7 @@ files:
|
|
|
73
73
|
- bin/setup
|
|
74
74
|
- lib/thumbs_yup.rb
|
|
75
75
|
- lib/thumbs_yup/configuration.rb
|
|
76
|
+
- lib/thumbs_yup/review_decorator.rb
|
|
76
77
|
- lib/thumbs_yup/reviews.erb
|
|
77
78
|
- lib/thumbs_yup/server_embed.rb
|
|
78
79
|
- lib/thumbs_yup/template_renderer.rb
|