spree_slider 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +11 -0
- data/.rspec +1 -0
- data/Gemfile +13 -0
- data/Gemfile.lock +210 -0
- data/LICENSE +26 -0
- data/README.textile +43 -0
- data/Rakefile +1 -0
- data/Versionfile +10 -0
- data/app/controllers/spree/admin/slides_controller.rb +8 -0
- data/app/models/spree/slide.rb +4 -0
- data/app/overrides/add_slider_to_layout.rb +8 -0
- data/app/overrides/add_slides_to_admin_configurations_menu.rb +9 -0
- data/app/overrides/add_slides_to_admin_configurations_sidebar_menu.rb +7 -0
- data/app/views/spree/admin/slides/_form.html.erb +21 -0
- data/app/views/spree/admin/slides/edit.html.erb +10 -0
- data/app/views/spree/admin/slides/index.html.erb +35 -0
- data/app/views/spree/admin/slides/new.html.erb +9 -0
- data/app/views/spree/admin/slides/show.html.erb +41 -0
- data/app/views/spree/home/index.html.erb +14 -0
- data/config/locales/en.yml +5 -0
- data/config/routes.rb +5 -0
- data/db/migrate/20120222184238_create_slides.rb +16 -0
- data/lib/generators/spree_slider/install_anything_generator.rb +30 -0
- data/lib/generators/spree_slider/install_nivo_generator.rb +34 -0
- data/lib/generators/spree_slider/templates/anything_slider.html.erb +26 -0
- data/lib/generators/spree_slider/templates/nivo_slider.html.erb +38 -0
- data/lib/spree_slider/engine.rb +23 -0
- data/lib/spree_slider.rb +2 -0
- data/script/rails +5 -0
- data/spec/spec_helper.rb +32 -0
- data/spree_slider.gemspec +26 -0
- data/vendor/assets/anything-slider/README.textile +13 -0
- data/vendor/assets/anything-slider/css/anythingslider-ie.css +45 -0
- data/vendor/assets/anything-slider/css/anythingslider.css +204 -0
- data/vendor/assets/anything-slider/css/theme-construction.css +142 -0
- data/vendor/assets/anything-slider/css/theme-cs-portfolio.css +148 -0
- data/vendor/assets/anything-slider/css/theme-metallic.css +146 -0
- data/vendor/assets/anything-slider/css/theme-minimalist-round.css +144 -0
- data/vendor/assets/anything-slider/css/theme-minimalist-square.css +144 -0
- data/vendor/assets/anything-slider/demos/colorbox/border.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/colorbox.css +62 -0
- data/vendor/assets/anything-slider/demos/colorbox/controls.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderBottomCenter.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderBottomLeft.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderBottomRight.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderMiddleLeft.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderMiddleRight.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderTopCenter.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderTopLeft.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/internet_explorer/borderTopRight.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/jquery.colorbox-min.js +4 -0
- data/vendor/assets/anything-slider/demos/colorbox/jquery.colorbox.js +769 -0
- data/vendor/assets/anything-slider/demos/colorbox/loading.gif +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/loading_background.png +0 -0
- data/vendor/assets/anything-slider/demos/colorbox/overlay.png +0 -0
- data/vendor/assets/anything-slider/demos/css/page.css +148 -0
- data/vendor/assets/anything-slider/demos/images/251356.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/apple-touch-icon.png +0 -0
- data/vendor/assets/anything-slider/demos/images/favicon.ico +0 -0
- data/vendor/assets/anything-slider/demos/images/slide-civil-1.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/slide-civil-2.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/slide-env-1.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/slide-env-2.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/slide-tele-1.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/slide-tele-2.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/th-slide-civil-1.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/th-slide-civil-2.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/th-slide-env-1.jpg +0 -0
- data/vendor/assets/anything-slider/demos/images/th-slide-env-2.jpg +0 -0
- data/vendor/assets/anything-slider/demos/js/demo.js +132 -0
- data/vendor/assets/anything-slider/demos/video/movie.mp4 +0 -0
- data/vendor/assets/anything-slider/demos/video/movie.ogg +0 -0
- data/vendor/assets/anything-slider/demos/video/movie.webm +0 -0
- data/vendor/assets/anything-slider/demos.html +740 -0
- data/vendor/assets/anything-slider/expand.html +97 -0
- data/vendor/assets/anything-slider/images/arrows-metallic.png +0 -0
- data/vendor/assets/anything-slider/images/arrows-minimalist.png +0 -0
- data/vendor/assets/anything-slider/images/construction.gif +0 -0
- data/vendor/assets/anything-slider/images/cs-portfolio.png +0 -0
- data/vendor/assets/anything-slider/images/default.png +0 -0
- data/vendor/assets/anything-slider/index.html +470 -0
- data/vendor/assets/anything-slider/js/jquery.anythingslider.fx.js +165 -0
- data/vendor/assets/anything-slider/js/jquery.anythingslider.fx.min.js +6 -0
- data/vendor/assets/anything-slider/js/jquery.anythingslider.js +791 -0
- data/vendor/assets/anything-slider/js/jquery.anythingslider.min.js +7 -0
- data/vendor/assets/anything-slider/js/jquery.anythingslider.video.js +367 -0
- data/vendor/assets/anything-slider/js/jquery.anythingslider.video.min.js +8 -0
- data/vendor/assets/anything-slider/js/jquery.easing.1.2.js +140 -0
- data/vendor/assets/anything-slider/js/jquery.min.js +18 -0
- data/vendor/assets/anything-slider/js/swfobject.js +4 -0
- data/vendor/assets/anything-slider/license.txt +165 -0
- data/vendor/assets/anything-slider/simple.html +79 -0
- data/vendor/assets/anything-slider/video.html +341 -0
- data/vendor/assets/nivo-slider/README +1 -0
- data/vendor/assets/nivo-slider/demo/demo.html +39 -0
- data/vendor/assets/nivo-slider/demo/images/dev7logo.png +0 -0
- data/vendor/assets/nivo-slider/demo/images/nemo.jpg +0 -0
- data/vendor/assets/nivo-slider/demo/images/toystory.jpg +0 -0
- data/vendor/assets/nivo-slider/demo/images/up.jpg +0 -0
- data/vendor/assets/nivo-slider/demo/images/walle.jpg +0 -0
- data/vendor/assets/nivo-slider/demo/scripts/jquery-1.6.1.min.js +18 -0
- data/vendor/assets/nivo-slider/demo/style.css +100 -0
- data/vendor/assets/nivo-slider/jquery.nivo.slider.js +685 -0
- data/vendor/assets/nivo-slider/jquery.nivo.slider.pack.js +67 -0
- data/vendor/assets/nivo-slider/license.txt +22 -0
- data/vendor/assets/nivo-slider/nivo-slider.css +89 -0
- data/vendor/assets/nivo-slider/themes/default/arrows.png +0 -0
- data/vendor/assets/nivo-slider/themes/default/bullets.png +0 -0
- data/vendor/assets/nivo-slider/themes/default/default.css +74 -0
- data/vendor/assets/nivo-slider/themes/default/loading.gif +0 -0
- data/vendor/assets/nivo-slider/themes/orman/arrows.png +0 -0
- data/vendor/assets/nivo-slider/themes/orman/bullets.png +0 -0
- data/vendor/assets/nivo-slider/themes/orman/loading.gif +0 -0
- data/vendor/assets/nivo-slider/themes/orman/orman.css +98 -0
- data/vendor/assets/nivo-slider/themes/orman/readme.txt +1 -0
- data/vendor/assets/nivo-slider/themes/orman/ribbon.png +0 -0
- data/vendor/assets/nivo-slider/themes/orman/slider.png +0 -0
- data/vendor/assets/nivo-slider/themes/pascal/bullets.png +0 -0
- data/vendor/assets/nivo-slider/themes/pascal/controlnav.png +0 -0
- data/vendor/assets/nivo-slider/themes/pascal/featured.png +0 -0
- data/vendor/assets/nivo-slider/themes/pascal/loading.gif +0 -0
- data/vendor/assets/nivo-slider/themes/pascal/pascal.css +102 -0
- data/vendor/assets/nivo-slider/themes/pascal/readme.txt +1 -0
- data/vendor/assets/nivo-slider/themes/pascal/ribbon.png +0 -0
- data/vendor/assets/nivo-slider/themes/pascal/slider.png +0 -0
- metadata +236 -0
data/.gitignore
ADDED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--colour
|
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,210 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
spree_slider (1.0.0)
|
5
|
+
spree_core (~> 1.0.0)
|
6
|
+
|
7
|
+
GEM
|
8
|
+
remote: http://rubygems.org/
|
9
|
+
specs:
|
10
|
+
actionmailer (3.1.3)
|
11
|
+
actionpack (= 3.1.3)
|
12
|
+
mail (~> 2.3.0)
|
13
|
+
actionpack (3.1.3)
|
14
|
+
activemodel (= 3.1.3)
|
15
|
+
activesupport (= 3.1.3)
|
16
|
+
builder (~> 3.0.0)
|
17
|
+
erubis (~> 2.7.0)
|
18
|
+
i18n (~> 0.6)
|
19
|
+
rack (~> 1.3.5)
|
20
|
+
rack-cache (~> 1.1)
|
21
|
+
rack-mount (~> 0.8.2)
|
22
|
+
rack-test (~> 0.6.1)
|
23
|
+
sprockets (~> 2.0.3)
|
24
|
+
active_utils (1.0.3)
|
25
|
+
activesupport (>= 2.3.11)
|
26
|
+
i18n
|
27
|
+
activemerchant (1.20.1)
|
28
|
+
active_utils (>= 1.0.1)
|
29
|
+
activesupport (>= 2.3.11)
|
30
|
+
braintree (>= 2.0.0)
|
31
|
+
builder (>= 2.0.0)
|
32
|
+
i18n
|
33
|
+
json (>= 1.5.1)
|
34
|
+
money (<= 3.7.1)
|
35
|
+
activemodel (3.1.3)
|
36
|
+
activesupport (= 3.1.3)
|
37
|
+
builder (~> 3.0.0)
|
38
|
+
i18n (~> 0.6)
|
39
|
+
activerecord (3.1.3)
|
40
|
+
activemodel (= 3.1.3)
|
41
|
+
activesupport (= 3.1.3)
|
42
|
+
arel (~> 2.2.1)
|
43
|
+
tzinfo (~> 0.3.29)
|
44
|
+
activeresource (3.1.3)
|
45
|
+
activemodel (= 3.1.3)
|
46
|
+
activesupport (= 3.1.3)
|
47
|
+
activesupport (3.1.3)
|
48
|
+
multi_json (~> 1.0)
|
49
|
+
acts_as_list (0.1.4)
|
50
|
+
archive-tar-minitar (0.5.2)
|
51
|
+
arel (2.2.3)
|
52
|
+
braintree (2.13.4)
|
53
|
+
builder (>= 2.0.0)
|
54
|
+
builder (3.0.0)
|
55
|
+
capybara (1.0.1)
|
56
|
+
mime-types (>= 1.16)
|
57
|
+
nokogiri (>= 1.3.3)
|
58
|
+
rack (>= 1.0.0)
|
59
|
+
rack-test (>= 0.5.4)
|
60
|
+
selenium-webdriver (~> 2.0)
|
61
|
+
xpath (~> 0.1.4)
|
62
|
+
childprocess (0.3.1)
|
63
|
+
ffi (~> 1.0.6)
|
64
|
+
cocaine (0.2.1)
|
65
|
+
columnize (0.3.6)
|
66
|
+
deface (0.7.2)
|
67
|
+
nokogiri (~> 1.5.0)
|
68
|
+
rails (>= 3.0.9)
|
69
|
+
diff-lcs (1.1.3)
|
70
|
+
erubis (2.7.0)
|
71
|
+
factory_girl (2.6.0)
|
72
|
+
activesupport (>= 2.3.9)
|
73
|
+
ffaker (1.12.1)
|
74
|
+
ffi (1.0.11)
|
75
|
+
highline (1.6.8)
|
76
|
+
hike (1.2.1)
|
77
|
+
i18n (0.6.0)
|
78
|
+
jquery-rails (1.0.19)
|
79
|
+
railties (~> 3.0)
|
80
|
+
thor (~> 0.14)
|
81
|
+
json (1.6.5)
|
82
|
+
json_pure (1.6.5)
|
83
|
+
kaminari (0.13.0)
|
84
|
+
actionpack (>= 3.0.0)
|
85
|
+
activesupport (>= 3.0.0)
|
86
|
+
railties (>= 3.0.0)
|
87
|
+
linecache19 (0.5.12)
|
88
|
+
ruby_core_source (>= 0.1.4)
|
89
|
+
mail (2.3.0)
|
90
|
+
i18n (>= 0.4.0)
|
91
|
+
mime-types (~> 1.16)
|
92
|
+
treetop (~> 1.4.8)
|
93
|
+
meta_search (1.1.1)
|
94
|
+
actionpack (~> 3.1.0)
|
95
|
+
activerecord (~> 3.1.0)
|
96
|
+
activesupport (~> 3.1.0)
|
97
|
+
polyamorous (~> 0.5.0)
|
98
|
+
mime-types (1.17.2)
|
99
|
+
money (3.7.1)
|
100
|
+
i18n (~> 0.4)
|
101
|
+
multi_json (1.1.0)
|
102
|
+
nested_set (1.6.8)
|
103
|
+
activerecord (>= 3.0.0)
|
104
|
+
railties (>= 3.0.0)
|
105
|
+
nokogiri (1.5.0)
|
106
|
+
paperclip (2.5.0)
|
107
|
+
activerecord (>= 2.3.0)
|
108
|
+
activesupport (>= 2.3.2)
|
109
|
+
cocaine (>= 0.0.2)
|
110
|
+
mime-types
|
111
|
+
polyamorous (0.5.0)
|
112
|
+
activerecord (~> 3.0)
|
113
|
+
polyglot (0.3.3)
|
114
|
+
rack (1.3.6)
|
115
|
+
rack-cache (1.1)
|
116
|
+
rack (>= 0.4)
|
117
|
+
rack-mount (0.8.3)
|
118
|
+
rack (>= 1.0.0)
|
119
|
+
rack-ssl (1.3.2)
|
120
|
+
rack
|
121
|
+
rack-test (0.6.1)
|
122
|
+
rack (>= 1.0)
|
123
|
+
rails (3.1.3)
|
124
|
+
actionmailer (= 3.1.3)
|
125
|
+
actionpack (= 3.1.3)
|
126
|
+
activerecord (= 3.1.3)
|
127
|
+
activeresource (= 3.1.3)
|
128
|
+
activesupport (= 3.1.3)
|
129
|
+
bundler (~> 1.0)
|
130
|
+
railties (= 3.1.3)
|
131
|
+
railties (3.1.3)
|
132
|
+
actionpack (= 3.1.3)
|
133
|
+
activesupport (= 3.1.3)
|
134
|
+
rack-ssl (~> 1.3.2)
|
135
|
+
rake (>= 0.8.7)
|
136
|
+
rdoc (~> 3.4)
|
137
|
+
thor (~> 0.14.6)
|
138
|
+
rake (0.9.2.2)
|
139
|
+
rdoc (3.12)
|
140
|
+
json (~> 1.4)
|
141
|
+
rspec (2.8.0)
|
142
|
+
rspec-core (~> 2.8.0)
|
143
|
+
rspec-expectations (~> 2.8.0)
|
144
|
+
rspec-mocks (~> 2.8.0)
|
145
|
+
rspec-core (2.8.0)
|
146
|
+
rspec-expectations (2.8.0)
|
147
|
+
diff-lcs (~> 1.1.2)
|
148
|
+
rspec-mocks (2.8.0)
|
149
|
+
rspec-rails (2.8.1)
|
150
|
+
actionpack (>= 3.0)
|
151
|
+
activesupport (>= 3.0)
|
152
|
+
railties (>= 3.0)
|
153
|
+
rspec (~> 2.8.0)
|
154
|
+
ruby-debug-base19 (0.11.25)
|
155
|
+
columnize (>= 0.3.1)
|
156
|
+
linecache19 (>= 0.5.11)
|
157
|
+
ruby_core_source (>= 0.1.4)
|
158
|
+
ruby-debug19 (0.11.6)
|
159
|
+
columnize (>= 0.3.1)
|
160
|
+
linecache19 (>= 0.5.11)
|
161
|
+
ruby-debug-base19 (>= 0.11.19)
|
162
|
+
ruby_core_source (0.1.5)
|
163
|
+
archive-tar-minitar (>= 0.5.2)
|
164
|
+
rubyzip (0.9.6.1)
|
165
|
+
selenium-webdriver (2.13.0)
|
166
|
+
childprocess (>= 0.2.1)
|
167
|
+
ffi (~> 1.0.9)
|
168
|
+
json_pure
|
169
|
+
rubyzip
|
170
|
+
spree_core (1.0.0)
|
171
|
+
activemerchant (= 1.20.1)
|
172
|
+
acts_as_list (= 0.1.4)
|
173
|
+
deface (>= 0.7.2)
|
174
|
+
ffaker (~> 1.12.0)
|
175
|
+
highline (= 1.6.8)
|
176
|
+
jquery-rails (>= 1.0.18, <= 1.0.19)
|
177
|
+
kaminari (>= 0.13.0)
|
178
|
+
meta_search (= 1.1.1)
|
179
|
+
nested_set (= 1.6.8)
|
180
|
+
paperclip (= 2.5.0)
|
181
|
+
rails (>= 3.1.1, <= 3.1.3)
|
182
|
+
state_machine (= 1.1.1)
|
183
|
+
stringex (~> 1.3.0)
|
184
|
+
sprockets (2.0.3)
|
185
|
+
hike (~> 1.2)
|
186
|
+
rack (~> 1.0)
|
187
|
+
tilt (~> 1.1, != 1.3.0)
|
188
|
+
sqlite3 (1.3.5)
|
189
|
+
state_machine (1.1.1)
|
190
|
+
stringex (1.3.2)
|
191
|
+
thor (0.14.6)
|
192
|
+
tilt (1.3.3)
|
193
|
+
treetop (1.4.10)
|
194
|
+
polyglot
|
195
|
+
polyglot (>= 0.3.1)
|
196
|
+
tzinfo (0.3.31)
|
197
|
+
xpath (0.1.4)
|
198
|
+
nokogiri (~> 1.3)
|
199
|
+
|
200
|
+
PLATFORMS
|
201
|
+
ruby
|
202
|
+
|
203
|
+
DEPENDENCIES
|
204
|
+
capybara (= 1.0.1)
|
205
|
+
factory_girl
|
206
|
+
ffaker
|
207
|
+
rspec-rails (~> 2.7)
|
208
|
+
ruby-debug19
|
209
|
+
spree_slider!
|
210
|
+
sqlite3
|
data/LICENSE
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
Copyright (c) 2012 R.S.A.
|
2
|
+
All rights reserved.
|
3
|
+
|
4
|
+
Redistribution and use in source and binary forms, with or without modification,
|
5
|
+
are permitted provided that the following conditions are met:
|
6
|
+
|
7
|
+
* Redistributions of source code must retain the above copyright notice,
|
8
|
+
this list of conditions and the following disclaimer.
|
9
|
+
* Redistributions in binary form must reproduce the above copyright notice,
|
10
|
+
this list of conditions and the following disclaimer in the documentation
|
11
|
+
and/or other materials provided with the distribution.
|
12
|
+
* Neither the name Spree nor the names of its contributors may be used to
|
13
|
+
endorse or promote products derived from this software without specific
|
14
|
+
prior written permission.
|
15
|
+
|
16
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
17
|
+
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
18
|
+
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
19
|
+
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
20
|
+
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
21
|
+
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
22
|
+
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
23
|
+
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
24
|
+
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
25
|
+
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
26
|
+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/README.textile
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
h1. SpreeSlider
|
2
|
+
|
3
|
+
Add a slider to the homepage of your spree site
|
4
|
+
|
5
|
+
h2. Installation
|
6
|
+
|
7
|
+
To install, add spree_slider to your @Gemfile@ and run `bundle install`:
|
8
|
+
|
9
|
+
<pre>
|
10
|
+
gem 'spree_slider'
|
11
|
+
</pre>
|
12
|
+
|
13
|
+
This extension uses two sliders plugins: Nivo and Anything slider
|
14
|
+
Depending on which plugin you want to install, run the following command:
|
15
|
+
|
16
|
+
h3. Anything slider
|
17
|
+
|
18
|
+
<pre>
|
19
|
+
rails generate spree_slider:install_anything
|
20
|
+
</pre>
|
21
|
+
|
22
|
+
h3. Nivo slider
|
23
|
+
|
24
|
+
<pre>
|
25
|
+
rails generate spree_slider:install_nivo
|
26
|
+
</pre>
|
27
|
+
|
28
|
+
The slider is almost unstyled. To customize you have to add your own css and
|
29
|
+
eventually modify the partial copied into your app folder:
|
30
|
+
app/views/shared/_slider.html.erb
|
31
|
+
|
32
|
+
|
33
|
+
h2. Dynamic content management
|
34
|
+
|
35
|
+
To add dynamic content, go to the spree admin section, under 'Configuration'
|
36
|
+
and find the Spree Slider menu.
|
37
|
+
|
38
|
+
|
39
|
+
Copyright (c) 2012 "R.S.A.":http://www.rsaweb.com released under the New BSD License
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/Versionfile
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
# This file is used to designate compatibilty with different versions of Spree
|
2
|
+
# Please see http://spreecommerce.com/documentation/extensions.html#versionfile for details
|
3
|
+
|
4
|
+
# Examples
|
5
|
+
#
|
6
|
+
# "0.70.x" => { :branch => "master"}
|
7
|
+
# "0.60.x" => { :branch => "0-60-stable" }
|
8
|
+
# "0.40.x" => { :tag => "v1.0.0", :version => "1.0.0" }
|
9
|
+
|
10
|
+
"1.0.x" => { :branch => "master"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
Deface::Override.new(:virtual_path => 'spree/admin/configurations/index',
|
2
|
+
:name => 'add_slides_to_admin_configurations_menu',
|
3
|
+
:insert_bottom => "[data-hook='admin_configurations_menu']",
|
4
|
+
:text => %q{
|
5
|
+
<tr>
|
6
|
+
<td><%= link_to 'Spree Slider', admin_slides_path %></td>
|
7
|
+
<td>Manage Spree Slider contents</td>
|
8
|
+
</tr> })
|
9
|
+
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Deface::Override.new(:virtual_path => 'spree/admin/shared/_configuration_menu',
|
2
|
+
:name => 'add_slides_to_admin_configurations_sidebar_menu',
|
3
|
+
:insert_bottom => "[data-hook='admin_configurations_sidebar_menu']",
|
4
|
+
:text => %q{
|
5
|
+
<%= configurations_sidebar_menu_item 'Spree Slider', admin_slides_path %>
|
6
|
+
})
|
7
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<%= f.field_container :name do %>
|
2
|
+
<%= f.label :name, t(:name) %><br />
|
3
|
+
<%= f.text_field :name %>
|
4
|
+
<% end %>
|
5
|
+
<%= f.field_container :body do %>
|
6
|
+
<%= f.label :body, t(:body) %><br />
|
7
|
+
<%= f.text_area :body, {:cols => 60, :rows => 4, :class => 'fullwidth'} %>
|
8
|
+
<% end %>
|
9
|
+
<%= f.field_container :link_url do %>
|
10
|
+
<%= f.label :link_url, t(:link_url) %><br />
|
11
|
+
<%= f.text_field :link_url %>
|
12
|
+
<% end %>
|
13
|
+
<%= f.field_container :image do %>
|
14
|
+
<%= f.label :image, t(:image) %><br />
|
15
|
+
<%= f.file_field :image %>
|
16
|
+
<% end %>
|
17
|
+
<%= f.field_container :published do %>
|
18
|
+
<%= f.label :is_published, t(:published) %><br />
|
19
|
+
<%= f.check_box :published %>
|
20
|
+
<% end %>
|
21
|
+
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<%= render :partial => 'spree/admin/shared/configuration_menu' %>
|
2
|
+
|
3
|
+
<h1>Editing Slide</h1>
|
4
|
+
|
5
|
+
<%= render 'spree/shared/error_messages', :target => @slide %>
|
6
|
+
|
7
|
+
<%= form_for [:admin, @slide], :html => { :multipart => true } do |f| %>
|
8
|
+
<%= render :partial => 'form', :locals => { :f => f } %>
|
9
|
+
<%= render :partial => 'spree/admin/shared/edit_resource_links' %>
|
10
|
+
<% end %>
|
@@ -0,0 +1,35 @@
|
|
1
|
+
<%= render :partial => 'spree/admin/shared/configuration_menu' %>
|
2
|
+
|
3
|
+
<div class="toolbar" data-hook="toolbar">
|
4
|
+
<ul class="actions">
|
5
|
+
<li>
|
6
|
+
<p><%= button_link_to 'New Slide', new_object_url, :icon => 'add', :id => 'admin_new_slide_link' %></p>
|
7
|
+
</li>
|
8
|
+
</ul>
|
9
|
+
<br class="clear" />
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<h1>Slides</h1>
|
13
|
+
|
14
|
+
<table class="index" id="listing_slides" data-hook>
|
15
|
+
<thead>
|
16
|
+
<tr data-hook="admin_slides_index_headers">
|
17
|
+
<th>Name</th>
|
18
|
+
<th data-hook="admin_slides_index_header_actions"></th>
|
19
|
+
</tr>
|
20
|
+
</thead>
|
21
|
+
<tbody>
|
22
|
+
<% @slides.each do |slide|%>
|
23
|
+
<tr id="<%= dom_id slide %>" data-hook="admin_slides_index_rows">
|
24
|
+
<td width="350px" ><%=link_to slide.name, object_url(slide) %></td>
|
25
|
+
<td data-hook="admin_slides_index_row_actions">
|
26
|
+
<%= link_to_edit slide, :class => 'edit' %>
|
27
|
+
<%= link_to_delete slide %>
|
28
|
+
</td>
|
29
|
+
</tr>
|
30
|
+
<% end %>
|
31
|
+
</tbody>
|
32
|
+
</table>
|
33
|
+
|
34
|
+
|
35
|
+
|
@@ -0,0 +1,9 @@
|
|
1
|
+
<%= render :partial => 'spree/admin/shared/configuration_menu' %>
|
2
|
+
|
3
|
+
<h1>New Slide</h1>
|
4
|
+
<%= render 'spree/shared/error_messages', :target => @slide %>
|
5
|
+
|
6
|
+
<%= form_for [:admin, @slide] , :html => { :multipart => true } do |f| %>
|
7
|
+
<%= render :partial => 'form', :locals => { :f => f } %>
|
8
|
+
<p class="form-buttons" data-hook="buttons"><%= button t(:create) %></p>
|
9
|
+
<% end %>
|
@@ -0,0 +1,41 @@
|
|
1
|
+
<%= render :partial => 'admin/shared/configuration_menu' %>
|
2
|
+
|
3
|
+
<h1><%= t(:slide) %></h1>
|
4
|
+
|
5
|
+
<table>
|
6
|
+
<tr data-hook="name">
|
7
|
+
<th><%= t(:name) %></th>
|
8
|
+
<td>
|
9
|
+
<%= @slide.name %>
|
10
|
+
</td>
|
11
|
+
</tr>
|
12
|
+
<tr data-hook="body">
|
13
|
+
<th><%= t(:body) %></th>
|
14
|
+
<td>
|
15
|
+
<%= @slide.body %>
|
16
|
+
</td>
|
17
|
+
</tr>
|
18
|
+
<tr data-hook="link_url">
|
19
|
+
<th><%= t(:link_url) %></th>
|
20
|
+
<td>
|
21
|
+
<%= @slide.link_url %>
|
22
|
+
</td>
|
23
|
+
</tr>
|
24
|
+
<tr data-hook="published">
|
25
|
+
<th><%= t(:published) %></th>
|
26
|
+
<td>
|
27
|
+
<%= @slide.published %>
|
28
|
+
</td>
|
29
|
+
</tr>
|
30
|
+
<tr data-hook="image_file_name">
|
31
|
+
<th><%= t(:image_file_name) %></th>
|
32
|
+
<td>
|
33
|
+
<%= @slide.image_file_name %>
|
34
|
+
</td>
|
35
|
+
</tr>
|
36
|
+
</table>
|
37
|
+
|
38
|
+
<p>
|
39
|
+
<%= link_to_edit @slide, :class => 'edit_slide' %> <%= t(:or) %>
|
40
|
+
<%= link_to t(:back), collection_url %>
|
41
|
+
</p>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<% content_for :spree_slider do %>
|
2
|
+
<%= render 'shared/slider' %>
|
3
|
+
<% end %>
|
4
|
+
|
5
|
+
<% content_for :sidebar do %>
|
6
|
+
<div data-hook="homepage_sidebar_navigation">
|
7
|
+
<%= render :partial => 'spree/shared/taxonomies' %>
|
8
|
+
</div>
|
9
|
+
<% end %>
|
10
|
+
|
11
|
+
<div data-hook="homepage_products">
|
12
|
+
<%= render :partial => 'spree/shared/products', :locals => { :products => @products } %>
|
13
|
+
</div>
|
14
|
+
|
data/config/routes.rb
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
class CreateSlides < ActiveRecord::Migration
|
2
|
+
def change
|
3
|
+
create_table :spree_slides do |t|
|
4
|
+
t.string :name
|
5
|
+
t.text :body
|
6
|
+
t.string :link_url
|
7
|
+
t.boolean :published
|
8
|
+
t.string :image_file_name
|
9
|
+
t.string :image_content_type
|
10
|
+
t.integer :image_file_size
|
11
|
+
t.datetime :image_updated_at
|
12
|
+
|
13
|
+
t.timestamps
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module SpreeSlider
|
2
|
+
class InstallAnythingGenerator < Rails::Generators::Base
|
3
|
+
source_root File.expand_path("../templates", __FILE__)
|
4
|
+
def install
|
5
|
+
#copy slider partial
|
6
|
+
copy_file "anything_slider.html.erb", "app/views/shared/_slider.html.erb"
|
7
|
+
|
8
|
+
#add javascripts
|
9
|
+
append_file "app/assets/javascripts/store/all.js", "//= require js/jquery.anythingslider\n"
|
10
|
+
append_file "app/assets/javascripts/store/all.js", "//= require js/jquery.anythingslider.fx\n"
|
11
|
+
append_file "app/assets/javascripts/store/all.js", "//= require js/jquery.anythingslider.video\n"
|
12
|
+
|
13
|
+
#add stylesheets
|
14
|
+
inject_into_file "app/assets/stylesheets/store/all.css", " *= require css/anythingslider\n", :before => /\*\//, :verbose => true
|
15
|
+
|
16
|
+
#copy migrations
|
17
|
+
run 'bundle exec rake railties:install:migrations FROM=spree_slider'
|
18
|
+
|
19
|
+
#run migrations
|
20
|
+
res = ask "Would you like to run the migrations now? [Y/n]"
|
21
|
+
if res == "" || res.downcase == "y"
|
22
|
+
run 'bundle exec rake db:migrate'
|
23
|
+
else
|
24
|
+
puts "Skiping rake db:migrate, don't forget to run it!"
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
@@ -0,0 +1,34 @@
|
|
1
|
+
module SpreeSlider
|
2
|
+
class InstallNivoGenerator < Rails::Generators::Base
|
3
|
+
source_root File.expand_path("../templates", __FILE__)
|
4
|
+
def install
|
5
|
+
#copy slider partial
|
6
|
+
copy_file "nivo_slider.html.erb", "app/views/shared/_slider.html.erb"
|
7
|
+
|
8
|
+
#add javascripts
|
9
|
+
append_file "app/assets/javascripts/store/all.js", "//= require jquery.nivo.slider.pack.js\n"
|
10
|
+
|
11
|
+
#add stylesheets
|
12
|
+
inject_into_file "app/assets/stylesheets/store/all.css", " *= require themes/default/default\n", :before => /\*\//, :verbose => true
|
13
|
+
inject_into_file "app/assets/stylesheets/store/all.css", " *= require themes/pascal/pascal\n", :before => /\*\//, :verbose => true
|
14
|
+
inject_into_file "app/assets/stylesheets/store/all.css", " *= require themes/orman/orman\n", :before => /\*\//, :verbose => true
|
15
|
+
inject_into_file "app/assets/stylesheets/store/all.css", " *= require nivo-slider\n", :before => /\*\//, :verbose => true
|
16
|
+
|
17
|
+
#copy migrations
|
18
|
+
run 'bundle exec rake railties:install:migrations FROM=spree_slider'
|
19
|
+
|
20
|
+
#run migrations
|
21
|
+
res = ask "Would you like to run the migrations now? [Y/n]"
|
22
|
+
if res == "" || res.downcase == "y"
|
23
|
+
run 'bundle exec rake db:migrate'
|
24
|
+
else
|
25
|
+
puts "Skiping rake db:migrate, don't forget to run it!"
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<% if Spree::Slide.published.count > 0 %>
|
2
|
+
<!-- Define slider dimensions here -->
|
3
|
+
<style>
|
4
|
+
#slider { width: 680px; height: 317px; }
|
5
|
+
.slider-wrapper { margin:0 auto 50px auto; }
|
6
|
+
</style>
|
7
|
+
|
8
|
+
<!-- AnythingSlider initialization -->
|
9
|
+
<script>
|
10
|
+
// DOM Ready
|
11
|
+
$(function(){
|
12
|
+
$('#slider').anythingSlider();
|
13
|
+
});
|
14
|
+
</script>
|
15
|
+
|
16
|
+
<div class="slider-wrapper">
|
17
|
+
<ul id="slider">
|
18
|
+
<% Spree::Slide.published.each do |s| %>
|
19
|
+
<li><%= link_to image_tag(s.image.url, :title => '#' + s.name.to_url), s.link_url %></li>
|
20
|
+
<% end %>
|
21
|
+
</ul>
|
22
|
+
</div>
|
23
|
+
<% end %>
|
24
|
+
|
25
|
+
|
26
|
+
|
@@ -0,0 +1,38 @@
|
|
1
|
+
<% if Spree::Slide.published.count > 0 %>
|
2
|
+
<style type="text/css">
|
3
|
+
.theme-default #slider {
|
4
|
+
margin:0 auto 0 auto;
|
5
|
+
width:618px; /* Make sure your images are the same size */
|
6
|
+
height:246px; /* Make sure your images are the same size */
|
7
|
+
}
|
8
|
+
.slider-wrapper {
|
9
|
+
margin:0 auto 50px auto;
|
10
|
+
}
|
11
|
+
</style>
|
12
|
+
|
13
|
+
<div class="slider-wrapper theme-default">
|
14
|
+
<div class="ribbon"></div>
|
15
|
+
<div id="slider" class="nivoSlider">
|
16
|
+
<% Spree::Slide.published.each do |s| %>
|
17
|
+
<% if s.body != "" %>
|
18
|
+
<%= link_to image_tag(s.image.url, :title => '#' + s.name.to_url), s.link_url %>
|
19
|
+
<% else %>
|
20
|
+
<%= link_to image_tag(s.image.url), s.link_url %>
|
21
|
+
<% end %>
|
22
|
+
<% end %>
|
23
|
+
</div>
|
24
|
+
|
25
|
+
<% Spree::Slide.published.each do |s| %>
|
26
|
+
<div id='<%= s.name.to_url %>' class='nivo-html-caption'>
|
27
|
+
<%= s.body.html_safe %>
|
28
|
+
</div>
|
29
|
+
<% end %>
|
30
|
+
</div>
|
31
|
+
|
32
|
+
<script type="text/javascript">
|
33
|
+
$(window).load(function() {
|
34
|
+
$('#slider').nivoSlider();
|
35
|
+
});
|
36
|
+
</script>
|
37
|
+
<% end %>
|
38
|
+
|