spree_bootstrap_frontend 1.0.1

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.
Files changed (66) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +14 -0
  3. data/.rspec +1 -0
  4. data/Gemfile +7 -0
  5. data/LICENSE +23 -0
  6. data/README.md +109 -0
  7. data/Rakefile +15 -0
  8. data/app/assets/images/store/spree-header.jpg +0 -0
  9. data/app/assets/images/store/spree.png +0 -0
  10. data/app/assets/javascripts/spree/backend/spree_bootstrap_frontend.js +1 -0
  11. data/app/assets/javascripts/spree/frontend/spree_bootstrap_frontend.js +1 -0
  12. data/app/assets/stylesheets/spree/backend/spree_bootstrap_frontend.css +1 -0
  13. data/app/assets/stylesheets/spree/frontend/spree_bootstrap_frontend.css.scss +45 -0
  14. data/app/assets/stylesheets/spree/frontend/spree_frontend.css.scss +5 -0
  15. data/app/helpers/spree/base_helper_decorator.rb +57 -0
  16. data/app/helpers/spree/checkout_helper_decorator.rb +30 -0
  17. data/app/views/spree/address/_form.html.erb +75 -0
  18. data/app/views/spree/checkout/_address.html.erb +41 -0
  19. data/app/views/spree/checkout/_confirm.html.erb +13 -0
  20. data/app/views/spree/checkout/_delivery.html.erb +104 -0
  21. data/app/views/spree/checkout/_payment.html.erb +35 -0
  22. data/app/views/spree/checkout/_summary.html.erb +59 -0
  23. data/app/views/spree/checkout/edit.html.erb +38 -0
  24. data/app/views/spree/checkout/payment/_gateway.html.erb +32 -0
  25. data/app/views/spree/checkout/registration.html.erb +29 -0
  26. data/app/views/spree/layouts/spree_application.html.erb +40 -0
  27. data/app/views/spree/orders/_form.html.erb +30 -0
  28. data/app/views/spree/orders/_line_item.html.erb +36 -0
  29. data/app/views/spree/orders/edit.html.erb +45 -0
  30. data/app/views/spree/products/_cart_form.html.erb +62 -0
  31. data/app/views/spree/products/_promotions.html.erb +19 -0
  32. data/app/views/spree/products/_properties.html.erb +15 -0
  33. data/app/views/spree/products/_taxons.html.erb +14 -0
  34. data/app/views/spree/products/_thumbnails.html.erb +19 -0
  35. data/app/views/spree/products/show.html.erb +51 -0
  36. data/app/views/spree/shared/_error_messages.html.erb +12 -0
  37. data/app/views/spree/shared/_filters.html.erb +28 -0
  38. data/app/views/spree/shared/_footer.html.erb +10 -0
  39. data/app/views/spree/shared/_head.html.erb +15 -0
  40. data/app/views/spree/shared/_header.html.erb +13 -0
  41. data/app/views/spree/shared/_login.html.erb +19 -0
  42. data/app/views/spree/shared/_login_bar.html.erb +6 -0
  43. data/app/views/spree/shared/_main_nav_bar.html.erb +10 -0
  44. data/app/views/spree/shared/_nav_bar.html.erb +8 -0
  45. data/app/views/spree/shared/_order_details.html.erb +134 -0
  46. data/app/views/spree/shared/_products.html.erb +39 -0
  47. data/app/views/spree/shared/_search.html.erb +13 -0
  48. data/app/views/spree/shared/_sidebar.html.erb +3 -0
  49. data/app/views/spree/shared/_taxonomies.html.erb +6 -0
  50. data/app/views/spree/shared/_user_form.html.erb +12 -0
  51. data/app/views/spree/user_passwords/edit.html.erb +22 -0
  52. data/app/views/spree/user_passwords/new.html.erb +21 -0
  53. data/app/views/spree/user_registrations/new.html.erb +22 -0
  54. data/app/views/spree/user_sessions/new.html.erb +20 -0
  55. data/app/views/spree/users/edit.html.erb +10 -0
  56. data/app/views/spree/users/show.html.erb +43 -0
  57. data/bin/rails +7 -0
  58. data/config/locales/en.yml +5 -0
  59. data/config/routes.rb +3 -0
  60. data/lib/generators/spree_bootstrap_frontend/install/install_generator.rb +33 -0
  61. data/lib/spree_bootstrap_frontend.rb +3 -0
  62. data/lib/spree_bootstrap_frontend/engine.rb +24 -0
  63. data/lib/spree_bootstrap_frontend/factories.rb +6 -0
  64. data/spec/spec_helper.rb +82 -0
  65. data/spree_bootstrap_frontend.gemspec +33 -0
  66. metadata +289 -0
@@ -0,0 +1,39 @@
1
+ <%
2
+ paginated_products = @searcher.retrieve_products if params.key?(:keywords)
3
+ paginated_products ||= products
4
+ %>
5
+
6
+ <% content_for :head do %>
7
+ <% if paginated_products.respond_to?(:num_pages) %>
8
+ <%= rel_next_prev_link_tags paginated_products %>
9
+ <% end %>
10
+ <% end %>
11
+
12
+ <% if products.empty? %>
13
+ <%= Spree.t(:no_products_found) %>
14
+ <% elsif params.key?(:keywords) %>
15
+ <h6 class="search-results-title"><%= Spree.t(:search_results, :keywords => h(params[:keywords])) %></h6>
16
+ <% end %>
17
+
18
+ <% if products.any? %>
19
+ <div id="products" class="row" data-hook>
20
+ <% products.each do |product| %>
21
+ <div id="product_<%= product.id %>" class="col-md-3 col-sm-6" data-hook="products_list_item" itemscope itemtype="http://schema.org/Product">
22
+ <div class="panel panel-default">
23
+ <div class="panel-body text-center product-body">
24
+ <%= link_to small_image(product, :itemprop => "image"), product, :itemprop => 'url' %><br/>
25
+ <%= link_to truncate(product.name, :length => 50), product, :class => 'info', :itemprop => "name", :title => product.name %>
26
+ </div>
27
+ <div class="panel-footer text-center">
28
+ <span class="price selling lead" itemprop="price"><%= display_price(product) %></span>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ <% end %>
33
+ <% reset_cycle("classes") %>
34
+ </div>
35
+ <% end %>
36
+
37
+ <% if paginated_products.respond_to?(:num_pages) %>
38
+ <%= paginate paginated_products %>
39
+ <% end %>
@@ -0,0 +1,13 @@
1
+ <% @taxons = @taxon && @taxon.parent ? @taxon.parent.children : Spree::Taxon.roots %>
2
+ <%= form_tag spree.products_path, :method => :get, class: "navbar-form" do %>
3
+ <div class="form-group">
4
+ <%= select_tag :taxon,
5
+ options_for_select([[Spree.t(:all_departments), '']] +
6
+ @taxons.map {|t| [t.name, t.id]},
7
+ @taxon ? @taxon.id : params[:taxon]), 'aria-label' => 'Taxon', class: "form-control" %>
8
+ </div>
9
+ <div class="form-group">
10
+ <%= search_field_tag :keywords, params[:keywords], :placeholder => Spree.t(:search), class: "form-control" %>
11
+ </div>
12
+ <%= submit_tag Spree.t(:search), :name => nil, class: "btn btn-success" %>
13
+ <% end %>
@@ -0,0 +1,3 @@
1
+ <aside id="sidebar" class="col-sm-4 col-md-3" data-hook>
2
+ <%= yield :sidebar %>
3
+ </aside>
@@ -0,0 +1,6 @@
1
+ <nav id="taxonomies" class="sidebar-item" data-hook>
2
+ <% get_taxonomies.each do |taxonomy| %>
3
+ <h4 class='taxonomy-root'><%= Spree.t(:shop_by_taxonomy, :taxonomy => taxonomy.name) %></h4>
4
+ <%= taxons_tree(taxonomy.root, @taxon, Spree::Config[:max_level_in_taxons_menu] || 1) %>
5
+ <% end %>
6
+ </nav>
@@ -0,0 +1,12 @@
1
+ <fieldset id="password-credentials">
2
+ <div class="form-group">
3
+ <%= f.email_field :email, :class => 'form-control', :placeholder => Spree.t(:email) %>
4
+ </div>
5
+ <div class="form-group">
6
+ <%= f.password_field :password, :class => 'form-control', :placeholder => Spree.t(:password) %>
7
+ </div>
8
+ <div class="form-group">
9
+ <%= f.password_field :password_confirmation, :class => 'form-control', :placeholder => Spree.t(:confirm_password) %>
10
+ </div>
11
+ </fieldset>
12
+ <div data-hook="signup_below_password_fields"></div>
@@ -0,0 +1,22 @@
1
+ <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @spree_user } %>
2
+ <div class="col-md-6 col-md-offset-3">
3
+ <div class="panel panel-default">
4
+ <div class="panel-heading">
5
+ <h3 class="panel-title"><%= Spree.t(:change_my_password) %></h3>
6
+ </div>
7
+ <div class="panel-body">
8
+ <%= form_for @spree_user, :as => :spree_user, :url => spree.update_password_path, :method => :put do |f| %>
9
+ <p>
10
+ <%= f.label :password, Spree.t(:password) %><br />
11
+ <%= f.password_field :password, :class => "form-control" %><br />
12
+ </p>
13
+ <p>
14
+ <%= f.label :password_confirmation, Spree.t(:confirm_password) %><br />
15
+ <%= f.password_field :password_confirmation, :class => "form-control" %><br />
16
+ </p>
17
+ <%= f.hidden_field :reset_password_token %>
18
+ <%= f.submit Spree.t(:update), :class => 'btn btn-lg btn-success btn-block' %>
19
+ <% end %>
20
+ </div>
21
+ </div>
22
+ </div>
@@ -0,0 +1,21 @@
1
+ <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @spree_user } %>
2
+ <div class="col-md-6 col-md-offset-3" id="forgot-password">
3
+ <div class="panel panel-default">
4
+ <div class="panel-heading">
5
+ <h3 class="panel-title"><%= Spree.t(:forgot_password) %></h3>
6
+ </div>
7
+ <div class="panel-body">
8
+ <p><%= Spree.t(:instructions_to_reset_password) %></p>
9
+
10
+ <%= form_for Spree::User.new, :as => :spree_user, :url => spree.reset_password_path do |f| %>
11
+ <p>
12
+ <%= f.label :email, Spree.t(:email) %><br />
13
+ <%= f.email_field :email, :class => "form-control" %>
14
+ </p>
15
+ <p>
16
+ <%= f.submit Spree.t(:reset_password), :class => 'btn btn-lg btn-success btn-block' %>
17
+ </p>
18
+ <% end %>
19
+ </div>
20
+ </div>
21
+ </div>
@@ -0,0 +1,22 @@
1
+ <% @body_id = 'signup' %>
2
+ <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @user } %>
3
+ <div class="col-md-6 col-md-offset-3">
4
+ <div class="panel panel-default">
5
+ <div class="panel-heading">
6
+ <h3 class="panel-title"><%= Spree.t(:new_customer) %></h3>
7
+ </div>
8
+ <div id="new-customer" class="panel-body" data-hook="login">
9
+ <%= form_for resource, :as => :spree_user, :url => spree.registration_path(@user) do |f| %>
10
+ <div data-hook="signup_inside_form">
11
+ <%= render :partial => 'spree/shared/user_form', :locals => { :f => f } %>
12
+ <p><%= f.submit Spree.t(:create), :class => 'btn btn-lg btn-success btn-block' %></p>
13
+ </div>
14
+ <% end %>
15
+ <div class="text-center">
16
+ <%= Spree.t(:or) %>
17
+ <%= link_to Spree.t(:login_as_existing), spree.login_path %>
18
+ </div>
19
+ <div data-hook="login_extras"></div>
20
+ </div>
21
+ </div>
22
+ </div>
@@ -0,0 +1,20 @@
1
+ <% @body_id = 'login' %>
2
+ <div class="col-md-6 <%= request.path == spree.login_path ? "col-md-offset-3" : "" %>">
3
+ <div class="panel panel-default">
4
+ <div class="panel-heading">
5
+ <h3 class="panel-title"><%= Spree.t(:login_as_existing) %></h3>
6
+ </div>
7
+ <div id="existing-customer" class="panel-body" data-hook="login">
8
+ <% if flash[:alert] %>
9
+ <div class="alert alert-danger"><%= flash[:alert] %></div>
10
+ <% end %>
11
+ <%= render :partial => 'spree/shared/login' %>
12
+ <div class="text-center">
13
+ <%= Spree.t(:or) %>
14
+ <%= link_to Spree.t(:create_a_new_account), spree.signup_path %> |
15
+ <%= link_to Spree.t(:forgot_password), spree.recover_password_path %>
16
+ </div>
17
+ <div data-hook="login_extras"></div>
18
+ </div>
19
+ </div>
20
+ </div>
@@ -0,0 +1,10 @@
1
+ <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @user } %>
2
+
3
+ <h1><%= Spree.t(:editing_user) %></h1>
4
+
5
+ <%= form_for Spree::User.new, :as => @user, :url => spree.user_path(@user), :method => :put do |f| %>
6
+ <%= render :partial => 'spree/shared/user_form', :locals => { :f => f } %>
7
+ <p>
8
+ <%= f.submit Spree.t(:update), :class => 'button primary' %>
9
+ </p>
10
+ <% end %>
@@ -0,0 +1,43 @@
1
+ <h1><%= accurate_title %></h1>
2
+
3
+ <div data-hook="account_summary" class="account-summary well">
4
+ <dl id="user-info">
5
+ <dt><%= Spree.t(:email) %></dt>
6
+ <dd><%= @user.email %> (<%= link_to Spree.t(:edit), spree.edit_account_path %>)</dd>
7
+ </dl>
8
+ </div>
9
+
10
+ <div data-hook="account_my_orders" class="account-my-orders">
11
+
12
+ <h3><%= Spree.t(:my_orders) %></h3>
13
+ <% if @orders.present? %>
14
+ <table class="table table-striped order-summary">
15
+ <thead class="active">
16
+ <tr>
17
+ <th class="order-number"><%= Spree.t(:order_number) %></th>
18
+ <th class="order-date"><%= Spree.t(:date) %></th>
19
+ <th class="order-status"><%= Spree.t(:status) %></th>
20
+ <th class="order-payment-state"><%= Spree.t(:payment_state) %></th>
21
+ <th class="order-shipment-state"><%= Spree.t(:shipment_state) %></th>
22
+ <th class="order-total"><%= Spree.t(:total) %></th>
23
+ </tr>
24
+ </thead>
25
+ <tbody>
26
+ <% @orders.each do |order| %>
27
+ <tr>
28
+ <td class="order-number"><%= link_to order.number, order_url(order) %></td>
29
+ <td class="order-date"><%= l order.completed_at.to_date %></td>
30
+ <td class="order-status"><%= Spree.t("order_state.#{order.state}").titleize %></td>
31
+ <td class="order-payment-state"><%= Spree.t("payment_states.#{order.payment_state}").titleize if order.payment_state %></td>
32
+ <td class="order-shipment-state"><%= Spree.t("shipment_states.#{order.shipment_state}").titleize if order.shipment_state %></td>
33
+ <td class="lead text-primary order-total"><%= order.display_total %></td>
34
+ </tr>
35
+ <% end %>
36
+ </tbody>
37
+ </table>
38
+ <% else %>
39
+ <div class="alert alert-info"><%= Spree.t(:you_have_no_orders_yet) %></div>
40
+ <% end %>
41
+ <br />
42
+
43
+ </div>
@@ -0,0 +1,7 @@
1
+ # This command will automatically be run when you run "rails" with Rails 3 gems installed from the root of your application.
2
+
3
+ ENGINE_ROOT = File.expand_path('../..', __FILE__)
4
+ ENGINE_PATH = File.expand_path('../../lib/spree_bootstrap_frontend/engine', __FILE__)
5
+
6
+ require 'rails/all'
7
+ require 'rails/engine/commands'
@@ -0,0 +1,5 @@
1
+ # Sample localization file for English. Add more files in this directory for other locales.
2
+ # See https://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale for starting points.
3
+
4
+ en:
5
+ hello: "Hello world"
@@ -0,0 +1,3 @@
1
+ Spree::Core::Engine.routes.draw do
2
+ # Add your extension routes here
3
+ end
@@ -0,0 +1,33 @@
1
+ module SpreeBootstrapFrontend
2
+ module Generators
3
+ class InstallGenerator < Rails::Generators::Base
4
+
5
+ # currently no need for an install generator, commented out to avoid confusion if run
6
+
7
+ # class_option :auto_run_migrations, :type => :boolean, :default => false
8
+
9
+ def add_javascripts
10
+ # append_file 'app/assets/javascripts/store/all.js', "//= require store/spree_bootstrap_frontend\n"
11
+ # append_file 'app/assets/javascripts/admin/all.js', "//= require admin/spree_bootstrap_frontend\n"
12
+ end
13
+
14
+ def add_stylesheets
15
+ # inject_into_file 'app/assets/stylesheets/store/all.css', " *= require store/spree_bootstrap_frontend\n", :before => /\*\//, :verbose => true
16
+ # inject_into_file 'app/assets/stylesheets/admin/all.css', " *= require admin/spree_bootstrap_frontend\n", :before => /\*\//, :verbose => true
17
+ end
18
+
19
+ def add_migrations
20
+ # run 'bundle exec rake railties:install:migrations FROM=spree_bootstrap_frontend'
21
+ end
22
+
23
+ def run_migrations
24
+ # run_migrations = options[:auto_run_migrations] || ['', 'y', 'Y'].include?(ask 'Would you like to run the migrations now? [Y/n]')
25
+ # if run_migrations
26
+ # run 'bundle exec rake db:migrate'
27
+ # else
28
+ # puts 'Skipping rake db:migrate, don\'t forget to run it!'
29
+ # end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,3 @@
1
+ require 'spree_core'
2
+ require 'kaminari-bootstrap'
3
+ require 'spree_bootstrap_frontend/engine'
@@ -0,0 +1,24 @@
1
+ require 'bootstrap-sass/engine'
2
+
3
+ module SpreeBootstrapFrontend
4
+ class Engine < Rails::Engine
5
+ require 'spree/core'
6
+ isolate_namespace Spree
7
+ engine_name 'spree_bootstrap_frontend'
8
+
9
+ config.autoload_paths += %W(#{config.root}/lib)
10
+
11
+ # use rspec for tests
12
+ config.generators do |g|
13
+ g.test_framework :rspec
14
+ end
15
+
16
+ def self.activate
17
+ Dir.glob(File.join(File.dirname(__FILE__), '../../app/**/*_decorator*.rb')) do |c|
18
+ Rails.configuration.cache_classes ? require(c) : load(c)
19
+ end
20
+ end
21
+
22
+ config.to_prepare &method(:activate).to_proc
23
+ end
24
+ end
@@ -0,0 +1,6 @@
1
+ FactoryGirl.define do
2
+ # Define your Spree extensions Factories within this file to enable applications, and other extensions to use and override them.
3
+ #
4
+ # Example adding this to your spec_helper will load these Factories for use:
5
+ # require 'spree_bootstrap_frontend/factories'
6
+ end
@@ -0,0 +1,82 @@
1
+ # Run Coverage report
2
+ require 'simplecov'
3
+ SimpleCov.start do
4
+ add_filter 'spec/dummy'
5
+ add_group 'Controllers', 'app/controllers'
6
+ add_group 'Helpers', 'app/helpers'
7
+ add_group 'Mailers', 'app/mailers'
8
+ add_group 'Models', 'app/models'
9
+ add_group 'Views', 'app/views'
10
+ add_group 'Libraries', 'lib'
11
+ end
12
+
13
+ # Configure Rails Environment
14
+ ENV['RAILS_ENV'] = 'test'
15
+
16
+ require File.expand_path('../dummy/config/environment.rb', __FILE__)
17
+
18
+ require 'rspec/rails'
19
+ require 'database_cleaner'
20
+ require 'ffaker'
21
+
22
+ # Requires supporting ruby files with custom matchers and macros, etc,
23
+ # in spec/support/ and its subdirectories.
24
+ Dir[File.join(File.dirname(__FILE__), 'support/**/*.rb')].each { |f| require f }
25
+
26
+ # Requires factories defined in spree_core
27
+ require 'spree/testing_support/factories'
28
+ require 'spree/testing_support/controller_requests'
29
+ require 'spree/testing_support/authorization_helpers'
30
+ require 'spree/testing_support/url_helpers'
31
+
32
+ # Requires factories defined in lib/spree_bootstrap_frontend/factories.rb
33
+ require 'spree_bootstrap_frontend/factories'
34
+
35
+ RSpec.configure do |config|
36
+ config.include FactoryGirl::Syntax::Methods
37
+
38
+ # == URL Helpers
39
+ #
40
+ # Allows access to Spree's routes in specs:
41
+ #
42
+ # visit spree.admin_path
43
+ # current_path.should eql(spree.products_path)
44
+ config.include Spree::TestingSupport::UrlHelpers
45
+
46
+ # == Mock Framework
47
+ #
48
+ # If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
49
+ #
50
+ # config.mock_with :mocha
51
+ # config.mock_with :flexmock
52
+ # config.mock_with :rr
53
+ config.mock_with :rspec
54
+ config.color = true
55
+
56
+ # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
57
+ config.fixture_path = "#{::Rails.root}/spec/fixtures"
58
+
59
+ # Capybara javascript drivers require transactional fixtures set to false, and we use DatabaseCleaner
60
+ # to cleanup after each test instead. Without transactional fixtures set to false the records created
61
+ # to setup a test will be unavailable to the browser, which runs under a seperate server instance.
62
+ config.use_transactional_fixtures = false
63
+
64
+ # Ensure Suite is set to use transactions for speed.
65
+ config.before :suite do
66
+ DatabaseCleaner.strategy = :transaction
67
+ DatabaseCleaner.clean_with :truncation
68
+ end
69
+
70
+ # Before each spec check if it is a Javascript test and switch between using database transactions or not where necessary.
71
+ config.before :each do
72
+ DatabaseCleaner.strategy = example.metadata[:js] ? :truncation : :transaction
73
+ DatabaseCleaner.start
74
+ end
75
+
76
+ # After each spec clean the database.
77
+ config.after :each do
78
+ DatabaseCleaner.clean
79
+ end
80
+
81
+ config.fail_fast = ENV['FAIL_FAST'] || false
82
+ end
@@ -0,0 +1,33 @@
1
+ # encoding: UTF-8
2
+ Gem::Specification.new do |s|
3
+ s.platform = Gem::Platform::RUBY
4
+ s.name = 'spree_bootstrap_frontend'
5
+ s.version = '1.0.1'
6
+ s.summary = 'Switches out Spree’s entire frontend for a bootstrap 3 powered frontend'
7
+ s.description = 'Switches out Spree’s entire frontend for a bootstrap 3 powered frontend'
8
+ s.required_ruby_version = '>= 1.9.3'
9
+
10
+ s.author = 'Alex James'
11
+ s.email = 'alex.james@200creative.com'
12
+ s.homepage = 'http://www.200creative.com'
13
+
14
+ s.files = `git ls-files`.split("\n")
15
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
+ s.require_path = 'lib'
17
+ s.requirements << 'none'
18
+
19
+ s.add_runtime_dependency 'bootstrap-sass', '~> 3.0.3.0'
20
+ s.add_runtime_dependency 'kaminari-bootstrap', '~> 3.0.1'
21
+ s.add_runtime_dependency 'spree_core', '~> 2.1.3'
22
+
23
+ s.add_development_dependency 'capybara', '~> 2.1'
24
+ s.add_development_dependency 'coffee-rails'
25
+ s.add_development_dependency 'database_cleaner'
26
+ s.add_development_dependency 'factory_girl', '~> 4.2'
27
+ s.add_development_dependency 'ffaker'
28
+ s.add_development_dependency 'rspec-rails', '~> 2.13'
29
+ s.add_development_dependency 'sass-rails'
30
+ s.add_development_dependency 'selenium-webdriver'
31
+ s.add_development_dependency 'simplecov'
32
+ s.add_development_dependency 'sqlite3'
33
+ end
metadata ADDED
@@ -0,0 +1,289 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spree_bootstrap_frontend
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Alex James
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-12-12 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bootstrap-sass
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: 3.0.3.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: 3.0.3.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: kaminari-bootstrap
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 3.0.1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: 3.0.1
41
+ - !ruby/object:Gem::Dependency
42
+ name: spree_core
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 2.1.3
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 2.1.3
55
+ - !ruby/object:Gem::Dependency
56
+ name: capybara
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '2.1'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: '2.1'
69
+ - !ruby/object:Gem::Dependency
70
+ name: coffee-rails
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ! '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ! '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: database_cleaner
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ! '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: factory_girl
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: '4.2'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: '4.2'
111
+ - !ruby/object:Gem::Dependency
112
+ name: ffaker
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ! '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rspec-rails
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: '2.13'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ~>
137
+ - !ruby/object:Gem::Version
138
+ version: '2.13'
139
+ - !ruby/object:Gem::Dependency
140
+ name: sass-rails
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ! '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ! '>='
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: selenium-webdriver
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ! '>='
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ! '>='
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: simplecov
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ! '>='
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ - !ruby/object:Gem::Dependency
182
+ name: sqlite3
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ! '>='
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ! '>='
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ description: Switches out Spree’s entire frontend for a bootstrap 3 powered frontend
196
+ email: alex.james@200creative.com
197
+ executables: []
198
+ extensions: []
199
+ extra_rdoc_files: []
200
+ files:
201
+ - .gitignore
202
+ - .rspec
203
+ - Gemfile
204
+ - LICENSE
205
+ - README.md
206
+ - Rakefile
207
+ - app/assets/images/store/spree-header.jpg
208
+ - app/assets/images/store/spree.png
209
+ - app/assets/javascripts/spree/backend/spree_bootstrap_frontend.js
210
+ - app/assets/javascripts/spree/frontend/spree_bootstrap_frontend.js
211
+ - app/assets/stylesheets/spree/backend/spree_bootstrap_frontend.css
212
+ - app/assets/stylesheets/spree/frontend/spree_bootstrap_frontend.css.scss
213
+ - app/assets/stylesheets/spree/frontend/spree_frontend.css.scss
214
+ - app/helpers/spree/base_helper_decorator.rb
215
+ - app/helpers/spree/checkout_helper_decorator.rb
216
+ - app/views/spree/address/_form.html.erb
217
+ - app/views/spree/checkout/_address.html.erb
218
+ - app/views/spree/checkout/_confirm.html.erb
219
+ - app/views/spree/checkout/_delivery.html.erb
220
+ - app/views/spree/checkout/_payment.html.erb
221
+ - app/views/spree/checkout/_summary.html.erb
222
+ - app/views/spree/checkout/edit.html.erb
223
+ - app/views/spree/checkout/payment/_gateway.html.erb
224
+ - app/views/spree/checkout/registration.html.erb
225
+ - app/views/spree/layouts/spree_application.html.erb
226
+ - app/views/spree/orders/_form.html.erb
227
+ - app/views/spree/orders/_line_item.html.erb
228
+ - app/views/spree/orders/edit.html.erb
229
+ - app/views/spree/products/_cart_form.html.erb
230
+ - app/views/spree/products/_promotions.html.erb
231
+ - app/views/spree/products/_properties.html.erb
232
+ - app/views/spree/products/_taxons.html.erb
233
+ - app/views/spree/products/_thumbnails.html.erb
234
+ - app/views/spree/products/show.html.erb
235
+ - app/views/spree/shared/_error_messages.html.erb
236
+ - app/views/spree/shared/_filters.html.erb
237
+ - app/views/spree/shared/_footer.html.erb
238
+ - app/views/spree/shared/_head.html.erb
239
+ - app/views/spree/shared/_header.html.erb
240
+ - app/views/spree/shared/_login.html.erb
241
+ - app/views/spree/shared/_login_bar.html.erb
242
+ - app/views/spree/shared/_main_nav_bar.html.erb
243
+ - app/views/spree/shared/_nav_bar.html.erb
244
+ - app/views/spree/shared/_order_details.html.erb
245
+ - app/views/spree/shared/_products.html.erb
246
+ - app/views/spree/shared/_search.html.erb
247
+ - app/views/spree/shared/_sidebar.html.erb
248
+ - app/views/spree/shared/_taxonomies.html.erb
249
+ - app/views/spree/shared/_user_form.html.erb
250
+ - app/views/spree/user_passwords/edit.html.erb
251
+ - app/views/spree/user_passwords/new.html.erb
252
+ - app/views/spree/user_registrations/new.html.erb
253
+ - app/views/spree/user_sessions/new.html.erb
254
+ - app/views/spree/users/edit.html.erb
255
+ - app/views/spree/users/show.html.erb
256
+ - bin/rails
257
+ - config/locales/en.yml
258
+ - config/routes.rb
259
+ - lib/generators/spree_bootstrap_frontend/install/install_generator.rb
260
+ - lib/spree_bootstrap_frontend.rb
261
+ - lib/spree_bootstrap_frontend/engine.rb
262
+ - lib/spree_bootstrap_frontend/factories.rb
263
+ - spec/spec_helper.rb
264
+ - spree_bootstrap_frontend.gemspec
265
+ homepage: http://www.200creative.com
266
+ licenses: []
267
+ metadata: {}
268
+ post_install_message:
269
+ rdoc_options: []
270
+ require_paths:
271
+ - lib
272
+ required_ruby_version: !ruby/object:Gem::Requirement
273
+ requirements:
274
+ - - ! '>='
275
+ - !ruby/object:Gem::Version
276
+ version: 1.9.3
277
+ required_rubygems_version: !ruby/object:Gem::Requirement
278
+ requirements:
279
+ - - ! '>='
280
+ - !ruby/object:Gem::Version
281
+ version: '0'
282
+ requirements:
283
+ - none
284
+ rubyforge_project:
285
+ rubygems_version: 2.1.11
286
+ signing_key:
287
+ specification_version: 4
288
+ summary: Switches out Spree’s entire frontend for a bootstrap 3 powered frontend
289
+ test_files: []