solidus_auth_devise_devise_token_auth 2.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +20 -0
  5. data/CHANGELOG.md +173 -0
  6. data/Gemfile +36 -0
  7. data/LICENSE.md +26 -0
  8. data/README.md +98 -0
  9. data/Rakefile +21 -0
  10. data/app/mailers/spree/user_mailer.rb +15 -0
  11. data/app/models/spree/auth_configuration.rb +9 -0
  12. data/app/models/spree/user.rb +47 -0
  13. data/app/overrides/auth_admin_login_navigation_bar.rb +10 -0
  14. data/app/overrides/auth_shared_login_bar.rb +10 -0
  15. data/bin/rails +7 -0
  16. data/circle.yml +6 -0
  17. data/config/initializers/devise.rb +141 -0
  18. data/config/initializers/warden.rb +14 -0
  19. data/config/locales/de.yml +53 -0
  20. data/config/locales/en.yml +54 -0
  21. data/config/locales/es.yml +50 -0
  22. data/config/locales/fr.yml +50 -0
  23. data/config/locales/it.yml +76 -0
  24. data/config/locales/nl.yml +50 -0
  25. data/config/locales/pt-BR.yml +52 -0
  26. data/config/locales/tr.yml +50 -0
  27. data/config/locales/zh-CN.yml +54 -0
  28. data/config/routes.rb +71 -0
  29. data/db/default/users.rb +75 -0
  30. data/db/migrate/20101026184949_create_users.rb +29 -0
  31. data/db/migrate/20101026184950_rename_columns_for_devise.rb +41 -0
  32. data/db/migrate/20101214150824_convert_user_remember_field.rb +11 -0
  33. data/db/migrate/20120203010234_add_reset_password_sent_at_to_spree_users.rb +8 -0
  34. data/db/migrate/20120605211305_make_users_email_index_unique.rb +9 -0
  35. data/db/migrate/20140904000425_add_deleted_at_to_users.rb +6 -0
  36. data/db/migrate/20141002154641_add_confirmable_to_users.rb +7 -0
  37. data/db/seeds.rb +1 -0
  38. data/lib/assets/javascripts/spree/backend/solidus_auth.js +1 -0
  39. data/lib/assets/javascripts/spree/frontend/solidus_auth.js +1 -0
  40. data/lib/assets/stylesheets/spree/backend/solidus_auth.css +3 -0
  41. data/lib/assets/stylesheets/spree/frontend/solidus_auth.css +3 -0
  42. data/lib/controllers/backend/spree/admin/admin_controller_decorator.rb +11 -0
  43. data/lib/controllers/backend/spree/admin/orders/customer_details_controller_decorator.rb +15 -0
  44. data/lib/controllers/backend/spree/admin/user_passwords_controller.rb +41 -0
  45. data/lib/controllers/backend/spree/admin/user_sessions_controller.rb +43 -0
  46. data/lib/controllers/frontend/spree/checkout_controller_decorator.rb +66 -0
  47. data/lib/controllers/frontend/spree/user_confirmations_controller.rb +14 -0
  48. data/lib/controllers/frontend/spree/user_passwords_controller.rb +50 -0
  49. data/lib/controllers/frontend/spree/user_registrations_controller.rb +40 -0
  50. data/lib/controllers/frontend/spree/user_sessions_controller.rb +64 -0
  51. data/lib/controllers/frontend/spree/users_controller.rb +57 -0
  52. data/lib/generators/solidus/auth/install/install_generator.rb +25 -0
  53. data/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb +1 -0
  54. data/lib/solidus/auth.rb +2 -0
  55. data/lib/solidus_auth_devise.rb +13 -0
  56. data/lib/spree/auth/devise.rb +14 -0
  57. data/lib/spree/auth/engine.rb +80 -0
  58. data/lib/spree/authentication_helpers.rb +33 -0
  59. data/lib/tasks/auth.rake +9 -0
  60. data/lib/views/backend/spree/admin/shared/_navigation_footer.html.erb +25 -0
  61. data/lib/views/backend/spree/admin/user_passwords/edit.html.erb +15 -0
  62. data/lib/views/backend/spree/admin/user_passwords/new.html.erb +17 -0
  63. data/lib/views/backend/spree/admin/user_sessions/authorization_failure.html.erb +4 -0
  64. data/lib/views/backend/spree/admin/user_sessions/new.html.erb +31 -0
  65. data/lib/views/backend/spree/layouts/admin/_login_nav.html.erb +13 -0
  66. data/lib/views/frontend/spree/checkout/registration.html.erb +22 -0
  67. data/lib/views/frontend/spree/shared/_flashes.html.erb +9 -0
  68. data/lib/views/frontend/spree/shared/_login.html.erb +18 -0
  69. data/lib/views/frontend/spree/shared/_login_bar.html.erb +2 -0
  70. data/lib/views/frontend/spree/shared/_login_bar_items.html.erb +6 -0
  71. data/lib/views/frontend/spree/shared/_user_form.html.erb +17 -0
  72. data/lib/views/frontend/spree/user_mailer/confirmation_instructions.text.erb +5 -0
  73. data/lib/views/frontend/spree/user_mailer/reset_password_instructions.text.erb +10 -0
  74. data/lib/views/frontend/spree/user_passwords/edit.html.erb +17 -0
  75. data/lib/views/frontend/spree/user_passwords/new.html.erb +17 -0
  76. data/lib/views/frontend/spree/user_registrations/new.html.erb +21 -0
  77. data/lib/views/frontend/spree/user_sessions/authorization_failure.html.erb +4 -0
  78. data/lib/views/frontend/spree/user_sessions/new.html.erb +13 -0
  79. data/lib/views/frontend/spree/users/edit.html.erb +14 -0
  80. data/lib/views/frontend/spree/users/show.html.erb +43 -0
  81. data/solidus_auth_devise.gemspec +41 -0
  82. data/spec/controllers/spree/checkout_controller_spec.rb +196 -0
  83. data/spec/controllers/spree/products_controller_spec.rb +27 -0
  84. data/spec/controllers/spree/user_passwords_controller_spec.rb +44 -0
  85. data/spec/controllers/spree/user_registrations_controller_spec.rb +96 -0
  86. data/spec/controllers/spree/user_sessions_controller_spec.rb +113 -0
  87. data/spec/controllers/spree/users_controller_spec.rb +38 -0
  88. data/spec/factories/confirmed_user.rb +7 -0
  89. data/spec/features/account_spec.rb +58 -0
  90. data/spec/features/admin/orders_spec.rb +30 -0
  91. data/spec/features/admin/password_reset_spec.rb +24 -0
  92. data/spec/features/admin/products_spec.rb +9 -0
  93. data/spec/features/admin/sign_in_spec.rb +44 -0
  94. data/spec/features/admin/sign_out_spec.rb +22 -0
  95. data/spec/features/admin_permissions_spec.rb +46 -0
  96. data/spec/features/change_email_spec.rb +26 -0
  97. data/spec/features/checkout_spec.rb +181 -0
  98. data/spec/features/confirmation_spec.rb +32 -0
  99. data/spec/features/order_spec.rb +62 -0
  100. data/spec/features/password_reset_spec.rb +24 -0
  101. data/spec/features/sign_in_spec.rb +52 -0
  102. data/spec/features/sign_out_spec.rb +25 -0
  103. data/spec/features/sign_up_spec.rb +30 -0
  104. data/spec/mailers/user_mailer_spec.rb +46 -0
  105. data/spec/models/order_spec.rb +26 -0
  106. data/spec/models/user_spec.rb +63 -0
  107. data/spec/spec_helper.rb +17 -0
  108. data/spec/support/ability.rb +15 -0
  109. data/spec/support/authentication_helpers.rb +14 -0
  110. data/spec/support/confirm_helpers.rb +13 -0
  111. data/spec/support/email.rb +5 -0
  112. data/spec/support/preferences.rb +5 -0
  113. data/spec/support/spree.rb +10 -0
  114. metadata +446 -0
@@ -0,0 +1,50 @@
1
+ ---
2
+ nl:
3
+ devise:
4
+ confirmations:
5
+ confirmed: Je account is succesvol bevestigd. Je bent nu ingelogd.
6
+ send_instructions: Binnen enkele minuten ontvang je een e-mail om je account te bevestigen.
7
+ failure:
8
+ already_authenticated: Je bent reeds aangemeld.
9
+ inactive: Je account is nog niet geactiveerd.
10
+ invalid: E-mailadres of wachtwoord is onjuist.
11
+ invalid_token: Verkeerde authenticatie token.
12
+ locked: Je account is vergrendeld.
13
+ timeout: 'Je sessie is verlopen, log opnieuw in om verder te gaan.'
14
+ unauthenticated: Je moet een account aanmaken voordat je kan verder gaan.
15
+ unconfirmed: Je moet je account bevestigen voordat je kan verder gaan.
16
+ mailer:
17
+ confirmation_instructions:
18
+ subject: Bevestig je account
19
+ reset_password_instructions:
20
+ subject: Wijzig je wachtwoord
21
+ unlock_instructions:
22
+ subject: Ontgrendel je account
23
+ oauth_callbacks:
24
+ failure: 'We konden je niet autoriseren van %{kind} omdat %{reason}.'
25
+ success: 'Succesvol geautoriseerd van %{kind} account.'
26
+ unlocks:
27
+ send_instructions: Binnen enkele minuten ontvang je een e-mail om je account te ontgrendelen.
28
+ unlocked: Je account is succesvol ontgrendeld. Je bent nu ingelogd.
29
+ user_passwords:
30
+ spree_user:
31
+ cannot_be_blank: Je wachtwoord kan niet leeg zijn.
32
+ send_instructions: Binnen enkele minuten ontvang je een e-mail met instructies om je wachtwoord te resetten.
33
+ updated: Je wachtwoord is succesvol gewijzigd. Je bent nu ingelogd.
34
+ user_registrations:
35
+ destroyed: Tot ziens! Je account is succesvol opgezegd. We hopen je snel terug te zien.
36
+ inactive_signed_up: 'Je bent succesvol aangemeld. Maar we kunnen je niet inloggen omdat je account is %{reason}.'
37
+ signed_up: Welkom! Je bent succesvol aangemeld.
38
+ updated: Je account is succesvol aangepast.
39
+ user_sessions:
40
+ signed_in: Succesvol ingelogd.
41
+ signed_out: Succesvol uitgelogd.
42
+ errors:
43
+ messages:
44
+ already_confirmed: is al bevestigd
45
+ email_is_invalid: e-mail adres mag niet leeg zijn
46
+ not_found: niet gevonden
47
+ not_locked: is niet vergrendeld
48
+ not_saved:
49
+ one: '1 fout tijdens het opslaan van %{resource}'
50
+ other: '%{count} fouten tijdens het opslaan van %{resource}'
@@ -0,0 +1,52 @@
1
+ ---
2
+ pt-BR:
3
+ spree:
4
+ admin_login: "Entrada do Administrador"
5
+ devise:
6
+ confirmations:
7
+ confirmed: Sua conta foi confirmada com sucesso. Agora você está conectado.
8
+ send_instructions: Você receberá um e-mail com instruções sobre como confirmar sua conta em poucos minutos.
9
+ failure:
10
+ already_authenticated: Você já está autenticado.
11
+ inactive: Sua conta não foi ativada ainda.
12
+ invalid: Email ou senha inválida.
13
+ invalid_token: Token de autenticação inválido.
14
+ locked: Sua conta está bloqueada.
15
+ timeout: 'Sua sessão expirou, por favor entre novamente para continuar.'
16
+ unauthenticated: Você precisa conectar ou cadastrar-se antes de continuar.
17
+ unconfirmed: Voce tem que confirmar sua conta antes de continuar.
18
+ mailer:
19
+ confirmation_instructions:
20
+ subject: Instruções de confirmação
21
+ reset_password_instructions:
22
+ subject: Instruções de redefinição de senha
23
+ unlock_instructions:
24
+ subject: Instruções de desbloqueio
25
+ oauth_callbacks:
26
+ failure: '%{kind} não foi autorizada porque %{reason}.'
27
+ success: 'Conta %{kind} foi autorizada com sucesso.'
28
+ unlocks:
29
+ send_instructions: Você receberá um e-mail com instruções sobre como desbloquear sua conta em poucos minutos.
30
+ unlocked: Sua conta foi desbloqueada com sucesso. Agora você está conectado.
31
+ user_passwords:
32
+ spree_user:
33
+ cannot_be_blank: Sua senha não pode estar em branco.
34
+ send_instructions: Você receberá um e-mail com instruções sobre como redefinir sua senha em poucos minutos.
35
+ updated: Sua senha foi alterada com sucesso. Agora você está conectado.
36
+ user_registrations:
37
+ destroyed: Até logo! Sua conta foi cancelada com sucesso. Esperamos ver você em breve.
38
+ inactive_signed_up: 'Seu cadastro foi feito com sucesso. No entanto, não o conectamos porque sua conta está %{reason}.'
39
+ signed_up: Bem vindo! Seu cadastro foi feito com sucesso.
40
+ updated: Sua conta foi atualizada com sucesso.
41
+ user_sessions:
42
+ signed_in: Entrou com sucesso.
43
+ signed_out: Saiu com sucesso.
44
+ errors:
45
+ messages:
46
+ already_confirmed: já foi confirmado
47
+ email_is_invalid: E-mail não pode estar em branco
48
+ not_found: não encontrado
49
+ not_locked: não bloqueado
50
+ not_saved:
51
+ one: '1 erro não permitiu este %{resource} ser salvo:'
52
+ other: '%{count} erros não permitiram %{resource} ser salvo:'
@@ -0,0 +1,50 @@
1
+ ---
2
+ tr:
3
+ devise:
4
+ confirmations:
5
+ confirmed: Hesabınız başarıyla doğrulandı. Oturumunuz açıldı.
6
+ send_instructions: Birkaç dakika içinde hesabınızı nasıl doğrulayacağınızı anlatan bir e-posta alacaksınız.
7
+ failure:
8
+ already_authenticated: Zaten giriş yaptınız.
9
+ inactive: Hesabınız henüz faal değil.
10
+ invalid: Geçersiz e-posta ya da şifre.
11
+ invalid_token: Geçersiz anahtar.
12
+ locked: Hesabınız kilitlendi.
13
+ timeout: 'Oturumunuzun süresi doldu, devam etmek için lütfen giriş yapın.'
14
+ unauthenticated: Devam etmek için üye olmalı ya da giriş yapmalısınız.
15
+ unconfirmed: Devam etmek için hesabınızı doğrulamalısınız.
16
+ mailer:
17
+ confirmation_instructions:
18
+ subject: Doğrulama Talimatları
19
+ reset_password_instructions:
20
+ subject: Şifre Sıfırlama Talimatları
21
+ unlock_instructions:
22
+ subject: Kilit Açma Talimatları
23
+ oauth_callbacks:
24
+ failure: 'Sizi %{kind} üzerinden %{reason} sebebiyle yetkilendiremedik.'
25
+ success: '%{kind} hesabından başarıyla yetkilendirildiniz.'
26
+ unlocks:
27
+ send_instructions: Birkaç dakika içinde hesabınızın kilidini nasıl açacağınızı anlatan bir e-posta alacaksınız.
28
+ unlocked: Hesabınızın kilidi başarıyla açıldı. Oturumunuz açıldı.
29
+ user_passwords:
30
+ spree_user:
31
+ cannot_be_blank: Boş parola giremezsiniz.
32
+ send_instructions: Birkaç dakika içinde şifrenizi nasıl yeniden ayarlayacağınızı anlatan bir e-posta alacaksınız.
33
+ updated: Şifreniz başarıyla değiştirildi. Oturumunuz açıldı.
34
+ user_registrations:
35
+ destroyed: Güle Güle! Hesabınız başarıyla iptal edildi. Sizi tekrar aramızda görmeyi umuyoruz.
36
+ inactive_signed_up: 'Başarıyla kayıt oldunuz. Ancak oturumunuzu %{reason} sebebiyle açamadık.'
37
+ signed_up: 'Hoşgeldiniz! Başarıyla kayıt oldunuz.'
38
+ updated: Hesabınız başarıyla güncellendi.
39
+ user_sessions:
40
+ signed_in: Giriş başarılı oldu.
41
+ signed_out: Çıkış başarılı oldu.
42
+ errors:
43
+ messages:
44
+ already_confirmed: zaten doğrulanmış
45
+ email_is_invalid: e-posta adresi boş olamaz
46
+ not_found: kayıt yok
47
+ not_locked: kilitli değil
48
+ not_saved:
49
+ one: '1 hata yüzünden %{resource} kaynağı kaydedilemedi:'
50
+ other: '%{count} sayıda hata yüzünden %{resource} kaynağı kaydedilemedi:'
@@ -0,0 +1,54 @@
1
+ ---
2
+ zh-CN:
3
+ spree:
4
+ admin_login:
5
+ devise:
6
+ confirmations:
7
+ confirmed: 账户确认成功,现已登录。
8
+ send_instructions: 稍后您将收到邮件,了解如何确认账户。
9
+ failure:
10
+ already_authenticated: 登录成功
11
+ inactive: 您的账户尚未激活。
12
+ invalid: 邮箱或密码错误。
13
+ invalid_token: 验证凭证错误。
14
+ locked: 账户已锁定。
15
+ timeout: 账户闲置时间过长,请重新登录。
16
+ unauthenticated: 请注册或登录,然后继续。
17
+ unconfirmed: 请确认账户,然后继续。
18
+ mailer:
19
+ confirmation_instructions:
20
+ subject: 确认说明
21
+ reset_password_instructions:
22
+ subject: 密码重置说明
23
+ unlock_instructions:
24
+ subject: 解锁说明
25
+ oauth_callbacks:
26
+ failure: 无法从%{kind}授权,原因为 %{reason}。
27
+ success: 从%{kind}账户授权成功。
28
+ unlocks:
29
+ send_instructions: 稍后您将收到邮件,了解如何解锁账户。
30
+ unlocked: 账户解锁成功,现已登录。
31
+ user_passwords:
32
+ spree_user:
33
+ cannot_be_blank: 密码不能为空。
34
+ no_token: 若需访问本页面,请使用重置密码邮件中网址链接,并确保该网址完整。
35
+ send_instructions: 稍后您将收到邮件,了解如何重置密码。
36
+ updated: 密码修改成功,现已登录。
37
+ user_registrations:
38
+ destroyed: 账户已成功取消,再会啦,期待着您的早日回归!
39
+ inactive_signed_up: 注册成功!但暂时无法登录账户,原因为%{reason}。
40
+ signed_up: 祝贺您!注册成功。
41
+ updated: 账户更新成功。
42
+ user_sessions:
43
+ signed_in: 登录成功。
44
+ signed_out: 登出成功。
45
+ already_signed_in: 已登录。
46
+ errors:
47
+ messages:
48
+ already_confirmed: 已确认
49
+ email_is_invalid: 邮箱地址不能为空
50
+ not_found: 未找到
51
+ not_locked: 未锁定
52
+ not_saved:
53
+ one: '出现1处错误,%{resource}无法保存'
54
+ other: '出现%{count}处错误,%{resource}无法保存'
data/config/routes.rb ADDED
@@ -0,0 +1,71 @@
1
+ Spree::Core::Engine.routes.draw do
2
+ if (
3
+ SolidusSupport.frontend_available? &&
4
+ Spree::Auth::Config.draw_frontend_routes
5
+ )
6
+
7
+ devise_for(:spree_user, {
8
+ class_name: 'Spree::User',
9
+ controllers: {
10
+ sessions: 'spree/user_sessions',
11
+ registrations: 'spree/user_registrations',
12
+ passwords: 'spree/user_passwords',
13
+ confirmations: 'spree/user_confirmations'
14
+ },
15
+ skip: [:unlocks, :omniauth_callbacks],
16
+ path_names: { sign_out: 'logout' },
17
+ path_prefix: :user
18
+ })
19
+
20
+ resources :users, only: [:edit, :update]
21
+
22
+ devise_scope :spree_user do
23
+ get '/login', to: 'user_sessions#new', as: :login
24
+ post '/login', to: 'user_sessions#create', as: :create_new_session
25
+ match '/logout', to: 'user_sessions#destroy', as: :logout, via: Devise.sign_out_via
26
+ get '/signup', to: 'user_registrations#new', as: :signup
27
+ post '/signup', to: 'user_registrations#create', as: :registration
28
+ get '/password/recover', to: 'user_passwords#new', as: :recover_password
29
+ post '/password/recover', to: 'user_passwords#create', as: :reset_password
30
+ get '/password/change', to: 'user_passwords#edit', as: :edit_password
31
+ put '/password/change', to: 'user_passwords#update', as: :update_password
32
+ get '/confirm', to: 'user_confirmations#show', as: :confirmation if Spree::Auth::Config[:confirmable]
33
+ end
34
+
35
+ get '/checkout/registration', to: 'checkout#registration', as: :checkout_registration
36
+ put '/checkout/registration', to: 'checkout#update_registration', as: :update_checkout_registration
37
+
38
+ resource :account, controller: 'users'
39
+ end
40
+
41
+ if (
42
+ SolidusSupport.backend_available? &&
43
+ Spree::Auth::Config.draw_backend_routes
44
+ )
45
+
46
+ namespace :admin do
47
+ devise_for(:spree_user, {
48
+ class_name: 'Spree::User',
49
+ singular: :spree_user,
50
+ skip: :all,
51
+ path_names: { sign_out: 'logout' },
52
+ controllers: {
53
+ sessions: 'spree/admin/user_sessions',
54
+ passwords: 'spree/admin/user_passwords'
55
+ },
56
+ })
57
+
58
+ devise_scope :spree_user do
59
+ get '/authorization_failure', to: 'user_sessions#authorization_failure', as: :unauthorized
60
+ get '/login', to: 'user_sessions#new', as: :login
61
+ post '/login', to: 'user_sessions#create', as: :create_new_session
62
+ get '/logout', to: 'user_sessions#destroy', as: :logout
63
+
64
+ get '/password/recover', to: 'user_passwords#new', as: :recover_password
65
+ post '/password/recover', to: 'user_passwords#create', as: :reset_password
66
+ get '/password/change', to: 'user_passwords#edit', as: :edit_password
67
+ put '/password/change', to: 'user_passwords#update', as: :update_password
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,75 @@
1
+ # see last line where we create an admin if there is none, asking for email and password
2
+ def prompt_for_admin_password
3
+ if ENV['ADMIN_PASSWORD']
4
+ password = ENV['ADMIN_PASSWORD'].dup
5
+ puts "Admin Password #{password}"
6
+ else
7
+ print "Password [test123]: "
8
+ password = STDIN.gets.strip
9
+ password = 'test123' if password.blank?
10
+ end
11
+
12
+ password
13
+ end
14
+
15
+ def prompt_for_admin_email
16
+ if ENV['ADMIN_EMAIL']
17
+ email = ENV['ADMIN_EMAIL'].dup
18
+ puts "Admin User #{email}"
19
+ else
20
+ print "Email [admin@example.com]: "
21
+ email = STDIN.gets.strip
22
+ email = 'admin@example.com' if email.blank?
23
+ end
24
+
25
+ email
26
+ end
27
+
28
+ def create_admin_user
29
+ if ENV['AUTO_ACCEPT']
30
+ password = 'test123'
31
+ email = 'admin@example.com'
32
+ else
33
+ puts 'Create the admin user (press enter for defaults).'
34
+ #name = prompt_for_admin_name unless name
35
+ email = prompt_for_admin_email
36
+ password = prompt_for_admin_password
37
+ end
38
+ attributes = {
39
+ :password => password,
40
+ :password_confirmation => password,
41
+ :email => email,
42
+ :login => email
43
+ }
44
+
45
+ load 'spree/user.rb'
46
+
47
+ if Spree::User.find_by_email(email)
48
+ puts "\nWARNING: There is already a user with the email: #{email}, so no account changes were made. If you wish to create an additional admin user, please run rake spree_auth:admin:create again with a different email.\n\n"
49
+ else
50
+ admin = Spree::User.new(attributes)
51
+ if admin.save
52
+ role = Spree::Role.find_or_create_by(name: 'admin')
53
+ admin.spree_roles << role
54
+ admin.save
55
+ puts "Done!"
56
+ else
57
+ puts "There was some problems with persisting new admin user:"
58
+ admin.errors.full_messages.each do |error|
59
+ puts error
60
+ end
61
+ end
62
+ end
63
+ end
64
+
65
+ if Spree::User.admin.empty?
66
+ create_admin_user
67
+ else
68
+ puts 'Admin user has already been previously created.'
69
+ puts 'Would you like to create a new admin user? (yes/no)'
70
+ if ["yes", "y"].include? STDIN.gets.strip.downcase
71
+ create_admin_user
72
+ else
73
+ puts 'No admin user created.'
74
+ end
75
+ end
@@ -0,0 +1,29 @@
1
+ class CreateUsers < SolidusSupport::Migration[4.2]
2
+ def up
3
+ unless table_exists?("spree_users")
4
+ create_table "spree_users", :force => true do |t|
5
+ t.string "crypted_password", :limit => 128
6
+ t.string "salt", :limit => 128
7
+ t.string "email"
8
+ t.string "remember_token"
9
+ t.string "remember_token_expires_at"
10
+ t.string "persistence_token"
11
+ t.string "single_access_token"
12
+ t.string "perishable_token"
13
+ t.integer "login_count", :default => 0, :null => false
14
+ t.integer "failed_login_count", :default => 0, :null => false
15
+ t.datetime "last_request_at"
16
+ t.datetime "current_login_at"
17
+ t.datetime "last_login_at"
18
+ t.string "current_login_ip"
19
+ t.string "last_login_ip"
20
+ t.string "login"
21
+ t.integer "ship_address_id"
22
+ t.integer "bill_address_id"
23
+ t.datetime "created_at", :null => false
24
+ t.datetime "updated_at", :null => false
25
+ t.string "openid_identifier"
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,41 @@
1
+ class RenameColumnsForDevise < SolidusSupport::Migration[4.2]
2
+ def up
3
+ return if column_exists?(:spree_users, :password_salt)
4
+ if column_exists?(:spree_users, :crypted_password)
5
+ rename_column :spree_users, :crypted_password, :encrypted_password
6
+ end
7
+ if column_exists?(:spree_users, :salt)
8
+ rename_column :spree_users, :salt, :password_salt
9
+ end
10
+ rename_column :spree_users, :remember_token_expires_at, :remember_created_at
11
+ rename_column :spree_users, :login_count, :sign_in_count
12
+ rename_column :spree_users, :failed_login_count, :failed_attempts
13
+ rename_column :spree_users, :single_access_token, :reset_password_token
14
+ rename_column :spree_users, :current_login_at, :current_sign_in_at
15
+ rename_column :spree_users, :last_login_at, :last_sign_in_at
16
+ rename_column :spree_users, :current_login_ip, :current_sign_in_ip
17
+ rename_column :spree_users, :last_login_ip, :last_sign_in_ip
18
+ add_column :spree_users, :authentication_token, :string
19
+ add_column :spree_users, :unlock_token, :string
20
+ add_column :spree_users, :locked_at, :datetime
21
+ remove_column :spree_users, :openid_identifier
22
+ end
23
+
24
+ def down
25
+ remove_column :spree_users, :authentication_token
26
+ remove_column :spree_users, :locked_at
27
+ remove_column :spree_users, :unlock_token
28
+ rename_column :spree_users, :last_sign_in_ip, :last_login_ip
29
+ rename_column :spree_users, :current_sign_in_ip, :current_login_ip
30
+ rename_column :spree_users, :last_sign_in_at, :last_login_at
31
+ rename_column :spree_users, :current_sign_in_at, :current_login_at
32
+ rename_column :spree_users, :reset_password_token, :single_access_token
33
+ rename_column :spree_users, :failed_attempts, :failed_login_count
34
+ rename_column :spree_users, :sign_in_count, :login_count
35
+ rename_column :spree_users, :remember_created_at, :remember_token_expires_at
36
+ rename_column :spree_users, :password_salt, :salt
37
+ rename_column :spree_users, :encrypted_password, :crypted_password
38
+ add_column :spree_users, :unlock_token, :string
39
+ add_column :spree_users, :openid_identifier, :string
40
+ end
41
+ end
@@ -0,0 +1,11 @@
1
+ class ConvertUserRememberField < SolidusSupport::Migration[4.2]
2
+ def up
3
+ remove_column :spree_users, :remember_created_at
4
+ add_column :spree_users, :remember_created_at, :datetime
5
+ end
6
+
7
+ def down
8
+ remove_column :spree_users, :remember_created_at
9
+ add_column :spree_users, :remember_created_at, :string
10
+ end
11
+ end