solidus_static_content 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.rspec +3 -0
  4. data/.travis.yml +21 -0
  5. data/Gemfile +13 -0
  6. data/Guardfile +9 -0
  7. data/LICENSE.md +26 -0
  8. data/README.md +105 -0
  9. data/Rakefile +15 -0
  10. data/app/assets/javascripts/spree/backend/spree_static_content.js +1 -0
  11. data/app/assets/javascripts/spree/frontend/spree_static_content.js +1 -0
  12. data/app/assets/stylesheets/spree/backend/spree_static_content.css +3 -0
  13. data/app/assets/stylesheets/spree/frontend/spree_static_content.css +7 -0
  14. data/app/controllers/spree/admin/pages_controller.rb +3 -0
  15. data/app/controllers/spree/static_content_controller.rb +20 -0
  16. data/app/helpers/spree/pages_helper.rb +6 -0
  17. data/app/models/spree/page.rb +54 -0
  18. data/app/overrides/pages_in_footer.rb +5 -0
  19. data/app/overrides/pages_in_header.rb +5 -0
  20. data/app/overrides/pages_in_menu.rb +5 -0
  21. data/app/overrides/pages_in_sidebar.rb +5 -0
  22. data/app/views/spree/admin/pages/_form.html.erb +98 -0
  23. data/app/views/spree/admin/pages/edit.html.erb +18 -0
  24. data/app/views/spree/admin/pages/index.html.erb +51 -0
  25. data/app/views/spree/admin/pages/new.html.erb +18 -0
  26. data/app/views/spree/static_content/_static_content_footer.html.erb +3 -0
  27. data/app/views/spree/static_content/_static_content_header.html.erb +1 -0
  28. data/app/views/spree/static_content/_static_content_list.html.erb +6 -0
  29. data/app/views/spree/static_content/_static_content_sidebar.html.erb +6 -0
  30. data/app/views/spree/static_content/show.html.erb +26 -0
  31. data/bin/rails +7 -0
  32. data/config/locales/de.yml +37 -0
  33. data/config/locales/en.yml +37 -0
  34. data/config/locales/es.yml +37 -0
  35. data/config/locales/et.yml +37 -0
  36. data/config/locales/fr.yml +37 -0
  37. data/config/locales/it.yml +37 -0
  38. data/config/locales/nl.yml +37 -0
  39. data/config/locales/pl.yml +39 -0
  40. data/config/locales/pt-BR.yml +37 -0
  41. data/config/locales/pt.yml +37 -0
  42. data/config/locales/ro.yml +39 -0
  43. data/config/locales/ru.yml +39 -0
  44. data/config/locales/sv.yml +37 -0
  45. data/config/routes.rb +8 -0
  46. data/db/migrate/20081216193152_create_pages.rb +15 -0
  47. data/db/migrate/20090625125735_extend_pages.rb +28 -0
  48. data/db/migrate/20090814113100_add_visible_to_pages.rb +17 -0
  49. data/db/migrate/20090814142845_add_default_true_to_visible_for_page.rb +8 -0
  50. data/db/migrate/20090829000527_add_index_for_page.rb +10 -0
  51. data/db/migrate/20091219021134_add_meta_fields_to_pages.rb +9 -0
  52. data/db/migrate/20100204105222_add_layout_to_pages.rb +9 -0
  53. data/db/migrate/20100323085528_add_show_in_sidebar_option_to_pages.rb +9 -0
  54. data/db/migrate/20110717103112_add_meta_title_to_page.rb +9 -0
  55. data/db/migrate/20120723144115_add_render_as_partial_for_layout_for_spree_pages.rb +13 -0
  56. data/db/migrate/20140926121757_add_pages_stores.rb +14 -0
  57. data/lib/generators/solidus_static_content/install/install_generator.rb +24 -0
  58. data/lib/solidus_static_content.rb +21 -0
  59. data/lib/spree_static_content/engine.rb +17 -0
  60. data/solidus_static_content.gemspec +32 -0
  61. data/spec/controllers/static_content_controller_spec.rb +37 -0
  62. data/spec/factories/page_factory.rb +18 -0
  63. data/spec/features/admin/pages_spec.rb +67 -0
  64. data/spec/features/static_content_spec.rb +53 -0
  65. data/spec/helpers/page_helper_spec.rb +14 -0
  66. data/spec/lib/spree_static.content_spec.rb +34 -0
  67. data/spec/models/page_spec.rb +46 -0
  68. data/spec/spec_helper.rb +50 -0
  69. metadata +294 -0
@@ -0,0 +1,37 @@
1
+ require 'spec_helper'
2
+
3
+ describe Spree::StaticContentController, type: :controller do
4
+ before do
5
+ controller.stub spree_current_user: nil
6
+ end
7
+
8
+ let!(:store) { create(:store, default: true) }
9
+
10
+ context '#show' do
11
+ it 'accepts path as root' do
12
+ page = create(:page, slug: '/', stores: [store])
13
+ request.path = page.slug
14
+ spree_get :show, path: page.slug
15
+ expect(response).to be_success
16
+ end
17
+
18
+ it 'accepts path as string' do
19
+ page = create(:page, slug: 'hello', stores: [store])
20
+ request.path = page.slug
21
+ spree_get :show, path: page.slug
22
+ expect(response).to be_success
23
+ end
24
+
25
+ it 'accepts path as nested' do
26
+ page = create(:page, slug: 'aa/bb/cc', stores: [store])
27
+ request.path = page.slug
28
+ spree_get :show, path: page.slug
29
+ expect(response).to be_success
30
+ end
31
+
32
+ it 'respond with a 404 when no page exists' do
33
+ spree_get :show
34
+ expect(response.response_code).to eq(404)
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,18 @@
1
+ FactoryGirl.define do
2
+ factory :page, class: Spree::Page do
3
+ title { generate(:random_string) }
4
+ body { generate(:random_description) }
5
+
6
+ sequence(:slug) { |n| "/page#{n}" }
7
+
8
+ trait :with_foreign_link do
9
+ foreign_link do
10
+ if defined?(FFaker)
11
+ FFaker::Internet.http_url
12
+ else
13
+ Faker::Internet.http_url
14
+ end
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,67 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.feature 'Admin Static Content', js: true do
4
+ stub_authorization!
5
+
6
+ context 'when no page exists' do
7
+ background do
8
+ visit spree.admin_path
9
+ click_link 'Pages'
10
+ end
11
+
12
+ scenario 'can create new page' do
13
+ expect(page).to have_text /No Pages found, Add One!/i
14
+
15
+ click_link 'New page'
16
+ expect(page).to have_text 'Static pages'
17
+
18
+ fill_in 'page_title', with: 'Contact us'
19
+ fill_in 'page_slug', with: 'contact-us'
20
+ fill_in 'page_body', with: 'hello..'
21
+
22
+ fill_in 'page_meta_title', with: 'Contact us'
23
+ fill_in 'page_meta_keywords', with: 'spree, contact'
24
+ fill_in 'page_meta_description', with: 'Short description for contact page.'
25
+
26
+ check 'page_show_in_sidebar'
27
+ check 'page_show_in_header'
28
+ check 'page_show_in_footer'
29
+
30
+ expect(find('#page_visible')).to be_checked
31
+
32
+ click_button 'Create'
33
+ expect(page).to have_text 'successfully created!'
34
+ end
35
+ end
36
+
37
+ context 'when page exists' do
38
+ given!(:static_page) { create(:page) }
39
+
40
+ background do
41
+ visit spree.admin_path
42
+ click_link 'Pages'
43
+ end
44
+
45
+ scenario 'can be updated' do
46
+ within_row(1) do
47
+ click_icon :edit
48
+ end
49
+
50
+ fill_in 'page_title', with: 'Contact'
51
+ fill_in 'page_slug', with: 'contact'
52
+
53
+ click_button 'Update'
54
+ expect(page).to have_text 'successfully updated!'
55
+ end
56
+
57
+ scenario 'can be deleted' do
58
+ within_row(1) do
59
+ click_icon :trash
60
+ end
61
+
62
+ page.driver.browser.switch_to.alert.accept unless Capybara.javascript_driver == :poltergeist
63
+
64
+ expect(page).not_to have_text static_page.title
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,53 @@
1
+ require 'spec_helper'
2
+
3
+ feature 'Static Content Page', js: true do
4
+
5
+ let!(:store) { create(:store, default: true) }
6
+
7
+ context 'render page' do
8
+ scenario 'is a query string' do
9
+ create(:page, slug: '/page', title: 'Query Test', stores: [store])
10
+ visit '/page?test'
11
+ expect(page).to have_text 'Query Test'
12
+ end
13
+
14
+ scenario 'can have slug not starting by /' do
15
+ create(:page, slug: 'page2', title: 'No Slash Prefix Test', stores: [store])
16
+ visit '/page2'
17
+ expect(page).to have_text 'No Slash Prefix Test'
18
+ end
19
+
20
+ scenario 'can have slug with multiple /' do
21
+ create(:page, slug: '/hello/shoppers/page3', title: 'Multiple Slash Test', stores: [store])
22
+ visit '/hello/shoppers/page3'
23
+ expect(page).to have_text 'Multiple Slash Test'
24
+ end
25
+
26
+ scenario 'can be a custom root page' do
27
+ create(:page, slug: '/', title: 'Root Page Test', stores: [store])
28
+ visit '/'
29
+ expect(page).to have_text 'Root Page Test'
30
+ end
31
+
32
+ scenario 'is limited within its own constraints' do
33
+ create(:page, slug: '/t/categories/page3', title: 'Constraint Test', stores: [store])
34
+ visit '/t/categories/page3'
35
+ expect(page).not_to have_text 'Constraint Test'
36
+ end
37
+
38
+ scenario 'fetch correct page' do
39
+ create(:page, slug: '/', stores: [store])
40
+ create(:page, slug: 'hello', title: 'Hello', stores: [store])
41
+ create(:page, slug: 'somwhere', stores: [store])
42
+ create(:page, :with_foreign_link, slug: 'whatever', stores: [store])
43
+ visit '/hello'
44
+ expect(page).to have_text 'Hello'
45
+ end
46
+
47
+ scenario 'do not effect the rendering of the rest of the site' do
48
+ product = create(:product)
49
+ visit spree.product_path(product)
50
+ expect(page).to have_text product.name
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,14 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Spree::PagesHelper, type: :helper do
4
+ context '.render_snippet' do
5
+ it 'return body when page exists' do
6
+ page = create(:page)
7
+ expect(render_snippet(page.slug)).to eq page.body
8
+ end
9
+
10
+ it 'return nil when no page exist' do
11
+ expect(render_snippet('hello')).to be_nil
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,34 @@
1
+ require 'spec_helper'
2
+
3
+ describe StaticPage do
4
+ context '.remove_spree_mount_point' do
5
+ specify do
6
+ path = '/hello'
7
+ expect(subject.remove_spree_mount_point(path)).to eq 'hello'
8
+ end
9
+ end
10
+ end
11
+
12
+ describe Spree::StaticPage do
13
+ subject { described_class }
14
+
15
+ context '.matches?' do
16
+ it 'is true when valid page' do
17
+ page = create(:page, slug: 'hello', visible: true)
18
+ request = double('request', path: page.slug)
19
+ expect(subject.matches?(request)).to be true
20
+ end
21
+
22
+ it 'is false when using reserved slug name' do
23
+ page = create(:page, slug: 'login', visible: true)
24
+ request = double('request', path: page.slug)
25
+ expect(subject.matches?(request)).to be false
26
+ end
27
+
28
+ it 'is false when page is not accessible' do
29
+ page = create(:page, slug: 'hello', visible: false)
30
+ request = double('request', path: page.slug)
31
+ expect(subject.matches?(request)).to be false
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,46 @@
1
+ require 'spec_helper'
2
+
3
+ describe Spree::Page do
4
+ let!(:page) { create(:page) }
5
+
6
+ context 'factory' do
7
+ it 'is valid' do
8
+ expect(page).to be_valid
9
+ end
10
+ end
11
+
12
+ it 'always add / prefix to slug' do
13
+ page = create(:page, slug: 'hello')
14
+ expect(page.slug).to eq '/hello'
15
+ end
16
+
17
+ context '.link' do
18
+ it 'return slug if foreign_link blank' do
19
+ page = create(:page, slug: 'hello')
20
+ expect(page.link).to eq page.slug
21
+ end
22
+
23
+ it 'return foreign_link if set' do
24
+ page = create(:page, :with_foreign_link, slug: 'hello')
25
+ expect(page.link).to eq page.foreign_link
26
+ end
27
+ end
28
+
29
+
30
+ context "pages in stores" do
31
+
32
+ before(:each) do
33
+ @store = create(:store)
34
+ @page = create(:page, :stores => [@store])
35
+ @page2 = create(:page)
36
+ end
37
+
38
+ it 'should correctly find pages by store' do
39
+ pages_by_store = Spree::Page.by_store(@store)
40
+ expect(pages_by_store).to include(@page)
41
+ expect(pages_by_store).to_not include(@page2)
42
+ end
43
+
44
+ end
45
+
46
+ end
@@ -0,0 +1,50 @@
1
+ require 'simplecov'
2
+ SimpleCov.start 'rails'
3
+
4
+ ENV["RAILS_ENV"] = "test"
5
+
6
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
7
+
8
+ require 'ffaker'
9
+ require 'rspec/rails'
10
+ require 'database_cleaner'
11
+ require 'capybara/rspec'
12
+ require 'capybara/rails'
13
+ require 'capybara/poltergeist'
14
+
15
+ Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
16
+
17
+ require 'spree/testing_support/factories'
18
+ require 'spree/testing_support/url_helpers'
19
+ require 'spree/testing_support/controller_requests'
20
+ require 'spree/testing_support/authorization_helpers'
21
+ require 'spree/testing_support/capybara_ext'
22
+
23
+ FactoryGirl.find_definitions
24
+
25
+ RSpec.configure do |config|
26
+ config.mock_with :rspec
27
+ config.use_transactional_fixtures = false
28
+
29
+ config.include Spree::TestingSupport::ControllerRequests, type: :controller
30
+ config.include Spree::TestingSupport::UrlHelpers
31
+ config.include FactoryGirl::Syntax::Methods
32
+
33
+ config.extend Spree::TestingSupport::AuthorizationHelpers::Request, type: :feature
34
+
35
+ config.before(:suite) do
36
+ DatabaseCleaner.strategy = :transaction
37
+ DatabaseCleaner.clean_with(:truncation)
38
+ end
39
+
40
+ config.before(:each) do
41
+ DatabaseCleaner.strategy = RSpec.current_example.metadata[:js] ? :truncation : :transaction
42
+ DatabaseCleaner.start
43
+ end
44
+
45
+ config.after(:each) do
46
+ DatabaseCleaner.clean
47
+ end
48
+
49
+ Capybara.javascript_driver = :poltergeist
50
+ end
metadata ADDED
@@ -0,0 +1,294 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: solidus_static_content
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Peter Berkenbosch
8
+ - Roman Smirnov
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2016-09-22 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: solidus
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '1.1'
21
+ - - "<"
22
+ - !ruby/object:Gem::Version
23
+ version: '3'
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - ">="
29
+ - !ruby/object:Gem::Version
30
+ version: '1.1'
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '3'
34
+ - !ruby/object:Gem::Dependency
35
+ name: deface
36
+ requirement: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 1.0.2
41
+ type: :runtime
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 1.0.2
48
+ - !ruby/object:Gem::Dependency
49
+ name: capybara
50
+ requirement: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '2.7'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.7'
62
+ - !ruby/object:Gem::Dependency
63
+ name: factory_girl
64
+ requirement: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '4.7'
69
+ type: :development
70
+ prerelease: false
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '4.7'
76
+ - !ruby/object:Gem::Dependency
77
+ name: ffaker
78
+ requirement: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ - !ruby/object:Gem::Dependency
91
+ name: database_cleaner
92
+ requirement: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '1.5'
97
+ type: :development
98
+ prerelease: false
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '1.5'
104
+ - !ruby/object:Gem::Dependency
105
+ name: rspec-rails
106
+ requirement: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '3.5'
111
+ type: :development
112
+ prerelease: false
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '3.5'
118
+ - !ruby/object:Gem::Dependency
119
+ name: sqlite3
120
+ requirement: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.3'
125
+ type: :development
126
+ prerelease: false
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '1.3'
132
+ - !ruby/object:Gem::Dependency
133
+ name: poltergeist
134
+ requirement: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '1.10'
139
+ type: :development
140
+ prerelease: false
141
+ version_requirements: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '1.10'
146
+ - !ruby/object:Gem::Dependency
147
+ name: simplecov
148
+ requirement: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '0.12'
153
+ type: :development
154
+ prerelease: false
155
+ version_requirements: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.12'
160
+ - !ruby/object:Gem::Dependency
161
+ name: pry-rails
162
+ requirement: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ type: :development
168
+ prerelease: false
169
+ version_requirements: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ - !ruby/object:Gem::Dependency
175
+ name: test-unit
176
+ requirement: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ type: :development
182
+ prerelease: false
183
+ version_requirements: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ description: Extention to manage the static pages for your Spree shop.
189
+ email: peter@pero-ict.nl
190
+ executables: []
191
+ extensions: []
192
+ extra_rdoc_files: []
193
+ files:
194
+ - ".gitignore"
195
+ - ".rspec"
196
+ - ".travis.yml"
197
+ - Gemfile
198
+ - Guardfile
199
+ - LICENSE.md
200
+ - README.md
201
+ - Rakefile
202
+ - app/assets/javascripts/spree/backend/spree_static_content.js
203
+ - app/assets/javascripts/spree/frontend/spree_static_content.js
204
+ - app/assets/stylesheets/spree/backend/spree_static_content.css
205
+ - app/assets/stylesheets/spree/frontend/spree_static_content.css
206
+ - app/controllers/spree/admin/pages_controller.rb
207
+ - app/controllers/spree/static_content_controller.rb
208
+ - app/helpers/spree/pages_helper.rb
209
+ - app/models/spree/page.rb
210
+ - app/overrides/pages_in_footer.rb
211
+ - app/overrides/pages_in_header.rb
212
+ - app/overrides/pages_in_menu.rb
213
+ - app/overrides/pages_in_sidebar.rb
214
+ - app/views/spree/admin/pages/_form.html.erb
215
+ - app/views/spree/admin/pages/edit.html.erb
216
+ - app/views/spree/admin/pages/index.html.erb
217
+ - app/views/spree/admin/pages/new.html.erb
218
+ - app/views/spree/static_content/_static_content_footer.html.erb
219
+ - app/views/spree/static_content/_static_content_header.html.erb
220
+ - app/views/spree/static_content/_static_content_list.html.erb
221
+ - app/views/spree/static_content/_static_content_sidebar.html.erb
222
+ - app/views/spree/static_content/show.html.erb
223
+ - bin/rails
224
+ - config/locales/de.yml
225
+ - config/locales/en.yml
226
+ - config/locales/es.yml
227
+ - config/locales/et.yml
228
+ - config/locales/fr.yml
229
+ - config/locales/it.yml
230
+ - config/locales/nl.yml
231
+ - config/locales/pl.yml
232
+ - config/locales/pt-BR.yml
233
+ - config/locales/pt.yml
234
+ - config/locales/ro.yml
235
+ - config/locales/ru.yml
236
+ - config/locales/sv.yml
237
+ - config/routes.rb
238
+ - db/migrate/20081216193152_create_pages.rb
239
+ - db/migrate/20090625125735_extend_pages.rb
240
+ - db/migrate/20090814113100_add_visible_to_pages.rb
241
+ - db/migrate/20090814142845_add_default_true_to_visible_for_page.rb
242
+ - db/migrate/20090829000527_add_index_for_page.rb
243
+ - db/migrate/20091219021134_add_meta_fields_to_pages.rb
244
+ - db/migrate/20100204105222_add_layout_to_pages.rb
245
+ - db/migrate/20100323085528_add_show_in_sidebar_option_to_pages.rb
246
+ - db/migrate/20110717103112_add_meta_title_to_page.rb
247
+ - db/migrate/20120723144115_add_render_as_partial_for_layout_for_spree_pages.rb
248
+ - db/migrate/20140926121757_add_pages_stores.rb
249
+ - lib/generators/solidus_static_content/install/install_generator.rb
250
+ - lib/solidus_static_content.rb
251
+ - lib/spree_static_content/engine.rb
252
+ - solidus_static_content.gemspec
253
+ - spec/controllers/static_content_controller_spec.rb
254
+ - spec/factories/page_factory.rb
255
+ - spec/features/admin/pages_spec.rb
256
+ - spec/features/static_content_spec.rb
257
+ - spec/helpers/page_helper_spec.rb
258
+ - spec/lib/spree_static.content_spec.rb
259
+ - spec/models/page_spec.rb
260
+ - spec/spec_helper.rb
261
+ homepage: http://spreecommerce.com/extensions/139-static-content
262
+ licenses:
263
+ - BSD-3
264
+ metadata: {}
265
+ post_install_message:
266
+ rdoc_options: []
267
+ require_paths:
268
+ - lib
269
+ required_ruby_version: !ruby/object:Gem::Requirement
270
+ requirements:
271
+ - - ">="
272
+ - !ruby/object:Gem::Version
273
+ version: 1.9.3
274
+ required_rubygems_version: !ruby/object:Gem::Requirement
275
+ requirements:
276
+ - - ">="
277
+ - !ruby/object:Gem::Version
278
+ version: '0'
279
+ requirements:
280
+ - none
281
+ rubyforge_project:
282
+ rubygems_version: 2.5.1
283
+ signing_key:
284
+ specification_version: 4
285
+ summary: Extention to manage the static pages for your Spree shop.
286
+ test_files:
287
+ - spec/controllers/static_content_controller_spec.rb
288
+ - spec/factories/page_factory.rb
289
+ - spec/features/admin/pages_spec.rb
290
+ - spec/features/static_content_spec.rb
291
+ - spec/helpers/page_helper_spec.rb
292
+ - spec/lib/spree_static.content_spec.rb
293
+ - spec/models/page_spec.rb
294
+ - spec/spec_helper.rb