solidus_auth_devise 2.1.0 → 2.5.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of solidus_auth_devise might be problematic. Click here for more details.

Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +35 -0
  3. data/.gem_release.yml +5 -0
  4. data/.github/stale.yml +17 -0
  5. data/.gitignore +12 -8
  6. data/.rubocop.yml +2 -0
  7. data/CHANGELOG.md +315 -138
  8. data/Gemfile +21 -15
  9. data/{LICENSE.md → LICENSE} +2 -2
  10. data/README.md +47 -3
  11. data/Rakefile +2 -0
  12. data/app/mailers/spree/user_mailer.rb +4 -2
  13. data/app/models/spree/user.rb +25 -19
  14. data/app/overrides/spree/admin/users/edit/_add_reset_password_form.html.erb.deface +20 -0
  15. data/bin/console +17 -0
  16. data/bin/rails +12 -4
  17. data/bin/setup +8 -0
  18. data/config/initializers/devise.rb +11 -6
  19. data/config/initializers/warden.rb +4 -2
  20. data/config/locales/en.yml +4 -1
  21. data/config/locales/fr.yml +1 -1
  22. data/config/locales/it.yml +4 -4
  23. data/config/routes.rb +8 -12
  24. data/db/default/users.rb +10 -8
  25. data/db/migrate/20101026184949_create_users.rb +9 -7
  26. data/db/migrate/20101026184950_rename_columns_for_devise.rb +3 -1
  27. data/db/migrate/20101214150824_convert_user_remember_field.rb +2 -0
  28. data/db/migrate/20120203010234_add_reset_password_sent_at_to_spree_users.rb +2 -0
  29. data/db/migrate/20120605211305_make_users_email_index_unique.rb +4 -2
  30. data/db/migrate/20140904000425_add_deleted_at_to_users.rb +2 -0
  31. data/db/migrate/20141002154641_add_confirmable_to_users.rb +2 -0
  32. data/db/migrate/20190125170630_add_reset_password_token_index_to_spree_users.rb +34 -0
  33. data/db/migrate/20200417153503_add_unconfirmed_email_to_spree_users.rb +7 -0
  34. data/db/seeds.rb +2 -0
  35. data/lib/controllers/backend/spree/admin/user_passwords_controller.rb +7 -3
  36. data/lib/controllers/backend/spree/admin/user_sessions_controller.rb +12 -9
  37. data/lib/controllers/frontend/spree/user_confirmations_controller.rb +2 -0
  38. data/lib/controllers/frontend/spree/user_passwords_controller.rb +4 -1
  39. data/lib/controllers/frontend/spree/user_registrations_controller.rb +4 -0
  40. data/lib/controllers/frontend/spree/user_sessions_controller.rb +4 -2
  41. data/lib/controllers/frontend/spree/users_controller.rb +20 -15
  42. data/lib/decorators/backend/controllers/spree/admin/base_controller_decorator.rb +20 -0
  43. data/lib/decorators/backend/controllers/spree/admin/orders/customer_details_controller_decorator.rb +22 -0
  44. data/lib/{controllers/frontend → decorators/frontend/controllers}/spree/checkout_controller_decorator.rb +29 -19
  45. data/lib/generators/solidus/auth/install/install_generator.rb +16 -4
  46. data/lib/generators/solidus/auth/install/templates/config/initializers/devise.rb +3 -1
  47. data/lib/solidus/auth.rb +2 -0
  48. data/lib/solidus_auth_devise.rb +12 -12
  49. data/lib/spree/auth/devise.rb +2 -7
  50. data/lib/spree/auth/engine.rb +53 -38
  51. data/lib/spree/auth/version.rb +7 -0
  52. data/{app/models → lib}/spree/auth_configuration.rb +2 -0
  53. data/lib/spree/authentication_helpers.rb +5 -11
  54. data/lib/tasks/auth.rake +3 -1
  55. data/lib/views/backend/spree/admin/shared/_navigation_footer.html.erb +13 -6
  56. data/lib/views/backend/spree/admin/user_passwords/edit.html.erb +4 -4
  57. data/lib/views/backend/spree/admin/user_passwords/new.html.erb +5 -7
  58. data/lib/views/backend/spree/admin/user_sessions/authorization_failure.html.erb +1 -1
  59. data/lib/views/backend/spree/admin/user_sessions/new.html.erb +9 -9
  60. data/lib/views/backend/spree/layouts/admin/_login_nav.html.erb +4 -4
  61. data/lib/views/frontend/spree/checkout/registration.html.erb +4 -4
  62. data/lib/views/frontend/spree/shared/_login.html.erb +4 -4
  63. data/lib/views/frontend/spree/shared/_login_bar_items.html.erb +3 -3
  64. data/lib/views/frontend/spree/shared/_user_form.html.erb +3 -3
  65. data/lib/views/frontend/spree/user_passwords/edit.html.erb +4 -4
  66. data/lib/views/frontend/spree/user_passwords/new.html.erb +5 -7
  67. data/lib/views/frontend/spree/user_registrations/new.html.erb +3 -3
  68. data/lib/views/frontend/spree/user_sessions/authorization_failure.html.erb +1 -1
  69. data/lib/views/frontend/spree/user_sessions/new.html.erb +2 -2
  70. data/lib/views/frontend/spree/users/edit.html.erb +2 -2
  71. data/lib/views/frontend/spree/users/show.html.erb +12 -12
  72. data/solidus_auth_devise.gemspec +37 -29
  73. data/spec/controllers/spree/admin/base_controller_spec.rb +53 -0
  74. data/spec/controllers/spree/admin/user_passwords_controller_spec.rb +14 -0
  75. data/spec/controllers/spree/base_controller_spec.rb +53 -0
  76. data/spec/controllers/spree/checkout_controller_spec.rb +6 -10
  77. data/spec/controllers/spree/products_controller_spec.rb +5 -8
  78. data/spec/controllers/spree/user_passwords_controller_spec.rb +4 -3
  79. data/spec/controllers/spree/user_registrations_controller_spec.rb +3 -2
  80. data/spec/controllers/spree/user_sessions_controller_spec.rb +14 -0
  81. data/spec/controllers/spree/users_controller_spec.rb +26 -8
  82. data/spec/factories/confirmed_user.rb +6 -4
  83. data/spec/features/account_spec.rb +4 -3
  84. data/spec/features/admin/password_reset_spec.rb +66 -10
  85. data/spec/features/admin/products_spec.rb +2 -1
  86. data/spec/features/admin/sign_in_spec.rb +2 -1
  87. data/spec/features/admin/sign_out_spec.rb +2 -1
  88. data/spec/features/admin_permissions_spec.rb +2 -1
  89. data/spec/features/change_email_spec.rb +3 -2
  90. data/spec/features/checkout_spec.rb +14 -37
  91. data/spec/features/confirmation_spec.rb +6 -10
  92. data/spec/features/order_spec.rb +2 -1
  93. data/spec/features/password_reset_spec.rb +23 -10
  94. data/spec/features/sign_in_spec.rb +2 -1
  95. data/spec/features/sign_out_spec.rb +4 -3
  96. data/spec/features/sign_up_spec.rb +2 -1
  97. data/spec/mailers/user_mailer_spec.rb +2 -1
  98. data/spec/models/order_spec.rb +2 -1
  99. data/spec/models/user_spec.rb +15 -11
  100. data/spec/spec_helper.rb +13 -9
  101. data/spec/support/ability.rb +3 -1
  102. data/spec/support/authentication_helpers.rb +2 -0
  103. data/spec/support/confirm_helpers.rb +23 -10
  104. data/spec/support/email.rb +2 -0
  105. data/spec/support/features/fill_addresses_fields.rb +29 -0
  106. data/spec/support/preferences.rb +10 -2
  107. data/spec/support/spree.rb +2 -0
  108. metadata +309 -212
  109. data/.travis.yml +0 -24
  110. data/app/overrides/auth_admin_login_navigation_bar.rb +0 -10
  111. data/app/overrides/auth_shared_login_bar.rb +0 -10
  112. data/circle.yml +0 -6
  113. data/lib/assets/javascripts/spree/backend/solidus_auth.js +0 -1
  114. data/lib/assets/javascripts/spree/frontend/solidus_auth.js +0 -1
  115. data/lib/assets/stylesheets/spree/backend/solidus_auth.css +0 -3
  116. data/lib/assets/stylesheets/spree/frontend/solidus_auth.css +0 -3
  117. data/lib/controllers/backend/spree/admin/admin_controller_decorator.rb +0 -11
  118. data/lib/controllers/backend/spree/admin/admin_orders_controller_decorator.rb +0 -20
  119. data/lib/controllers/backend/spree/admin/orders/customer_details_controller_decorator.rb +0 -15
  120. data/spec/features/admin/orders_spec.rb +0 -30
data/Gemfile CHANGED
@@ -1,23 +1,29 @@
1
- source "https://rubygems.org"
1
+ # frozen_string_literal: true
2
2
 
3
- branch = ENV.fetch('SOLIDUS_BRANCH', 'master')
4
- gem "solidus", github: "solidusio/solidus", branch: branch
3
+ source 'https://rubygems.org'
4
+ git_source(:github) { |repo| "https://github.com/#{repo}.git" }
5
5
 
6
- group :test do
7
- if branch == 'master' || branch >= "v2.0"
8
- gem "rails-controller-testing"
9
- else
10
- gem "rails_test_params_backport"
11
- end
12
- end
6
+ branch = ENV.fetch('SOLIDUS_BRANCH', 'master')
7
+ gem 'solidus', github: 'solidusio/solidus', branch: branch
13
8
 
14
- gem 'pg', '~> 0.21'
15
- gem 'mysql2'
9
+ # Needed to help Bundler figure out how to resolve dependencies,
10
+ # otherwise it takes forever to resolve them.
11
+ # See https://github.com/bundler/bundler/issues/6677
12
+ gem 'rails', '>0.a'
16
13
 
17
- group :development, :test do
18
- gem "pry-rails"
14
+ case ENV['DB']
15
+ when 'mysql'
16
+ gem 'mysql2'
17
+ when 'postgresql'
18
+ gem 'pg'
19
+ else
20
+ gem 'sqlite3'
19
21
  end
20
22
 
21
- gem 'deface', require: false
23
+ gem 'rails-controller-testing', group: :test
22
24
 
23
25
  gemspec
26
+
27
+ # Use a local Gemfile to include development dependencies that might not be
28
+ # relevant for the project or for other contributors, e.g.: `gem 'pry-debug'`.
29
+ eval_gemfile 'Gemfile-local' if File.exist? 'Gemfile-local'
@@ -1,4 +1,4 @@
1
- Copyright (c) 2014, Spree Commerce, Inc. and other contributors
1
+ Copyright (c) 2020 Solidus Team
2
2
  All rights reserved.
3
3
 
4
4
  Redistribution and use in source and binary forms, with or without modification,
@@ -9,7 +9,7 @@ are permitted provided that the following conditions are met:
9
9
  * Redistributions in binary form must reproduce the above copyright notice,
10
10
  this list of conditions and the following disclaimer in the documentation
11
11
  and/or other materials provided with the distribution.
12
- * Neither the name Spree nor the names of its contributors may be used to
12
+ * Neither the name Solidus nor the names of its contributors may be used to
13
13
  endorse or promote products derived from this software without specific
14
14
  prior written permission.
15
15
 
data/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  Solidus Auth (Devise)
2
2
  =====================
3
3
 
4
+ [![CircleCI](https://circleci.com/gh/solidusio/solidus_auth_devise.svg?style=svg)](https://circleci.com/gh/solidusio/solidus_auth_devise)
5
+
4
6
  Provides authentication services for Solidus, using the Devise gem.
5
7
 
6
8
  Installation
@@ -46,9 +48,6 @@ Devise.setup do |config|
46
48
  # Required so users don't lose their carts when they need to confirm.
47
49
  config.allow_unconfirmed_access_for = 1.days
48
50
 
49
- # Fixes the bug where Confirmation errors result in a broken page.
50
- config.router_name = :spree
51
-
52
51
  # Add any other devise configurations here, as they will override the defaults provided by solidus_auth_devise.
53
52
  end
54
53
  ```
@@ -96,3 +95,48 @@ Run the following to automatically build a dummy app if necessary and run the te
96
95
  ```shell
97
96
  bundle exec rake
98
97
  ```
98
+
99
+ ## Releasing a new version
100
+
101
+ #### 1. Bump gem version and push to RubyGems
102
+
103
+ We use [gem-release](https://github.com/svenfuchs/gem-release) to release this
104
+ extension with ease.
105
+
106
+ Supposing you are on the master branch and you are working on a fork of this
107
+ extension, `upstream` is the main remote and you have write access to it, you
108
+ can simply run:
109
+
110
+ ```bash
111
+ gem bump --version minor --tag --release
112
+ ```
113
+
114
+ This command will:
115
+
116
+ - bump the gem version to the next minor (changing the `version.rb` file)
117
+ - commit the change and push it to upstream master
118
+ - create a git tag
119
+ - push the tag to the upstream remote
120
+ - release the new version on RubyGems
121
+
122
+ Or you can run these commands individually:
123
+
124
+ ```bash
125
+ gem bump --version minor
126
+ gem tag
127
+ gem release
128
+ ```
129
+
130
+ #### 2. Publish the updated CHANGELOG
131
+
132
+ After the release is done we can generate the updated CHANGELOG
133
+ using
134
+ [github-changelog-generator](https://github.com/github-changelog-generator/github-changelog-generator)
135
+ by running the following command:
136
+
137
+
138
+ ```bash
139
+ bundle exec github_changelog_generator solidusio/solidus_auth_devise --token YOUR_GITHUB_TOKEN
140
+ git commit -am 'Update CHANGELOG'
141
+ git push upstream master
142
+ ```
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler'
2
4
  Bundler::GemHelper.install_tasks
3
5
 
@@ -1,12 +1,14 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Spree
2
4
  class UserMailer < BaseMailer
3
- def reset_password_instructions(user, token, *args)
5
+ def reset_password_instructions(user, token, *_args)
4
6
  @store = Spree::Store.default
5
7
  @edit_password_reset_url = spree.edit_spree_user_password_url(reset_password_token: token, host: @store.url)
6
8
  mail to: user.email, from: from_address(@store), subject: "#{@store.name} #{I18n.t(:subject, scope: [:devise, :mailer, :reset_password_instructions])}"
7
9
  end
8
10
 
9
- def confirmation_instructions(user, token, opts={})
11
+ def confirmation_instructions(user, token, _opts = {})
10
12
  @store = Spree::Store.default
11
13
  @confirmation_url = spree.spree_user_confirmation_url(confirmation_token: token, host: @store.url)
12
14
  mail to: user.email, from: from_address(@store), subject: "#{@store.name} #{I18n.t(:subject, scope: [:devise, :mailer, :confirmation_instructions])}"
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Spree
2
4
  class User < Spree::Base
3
5
  include UserMethods
@@ -16,10 +18,7 @@ module Spree
16
18
 
17
19
  before_validation :set_login
18
20
 
19
- users_table_name = User.table_name
20
- roles_table_name = Role.table_name
21
-
22
- scope :admin, -> { includes(:spree_roles).where("#{roles_table_name}.name" => "admin") }
21
+ scope :admin, -> { includes(:spree_roles).where("#{Role.table_name}.name" => "admin") }
23
22
 
24
23
  def self.admin_created?
25
24
  User.admin.count > 0
@@ -29,24 +28,31 @@ module Spree
29
28
  has_spree_role?('admin')
30
29
  end
31
30
 
31
+ def confirmed?
32
+ !!confirmed_at
33
+ end
34
+
32
35
  protected
33
- def password_required?
34
- !persisted? || password.present? || password_confirmation.present?
35
- end
36
+
37
+ def password_required?
38
+ !persisted? || password.present? || password_confirmation.present?
39
+ end
36
40
 
37
41
  private
38
42
 
39
- def set_login
40
- # for now force login to be same as email, eventually we will make this configurable, etc.
41
- self.login ||= self.email if self.email
42
- end
43
-
44
- def scramble_email_and_password
45
- self.email = SecureRandom.uuid + "@example.net"
46
- self.login = self.email
47
- self.password = SecureRandom.hex(8)
48
- self.password_confirmation = self.password
49
- self.save
50
- end
43
+ def set_login
44
+ # for now force login to be same as email, eventually we will make this configurable, etc.
45
+ self.login ||= email if email
46
+ end
47
+
48
+ def scramble_email_and_password
49
+ return true if destroyed?
50
+
51
+ self.email = SecureRandom.uuid + "@example.net"
52
+ self.login = email
53
+ self.password = SecureRandom.hex(8)
54
+ self.password_confirmation = password
55
+ save
56
+ end
51
57
  end
52
58
  end
@@ -0,0 +1,20 @@
1
+ <!--
2
+ insert_before "fieldset#admin_user_edit_api_key"
3
+ original "904c52ff702412d1dc8d55ff44d87d7f581f6675"
4
+ -->
5
+
6
+ <% if @user != try_spree_current_user %>
7
+ <fieldset class="no-border-bottom" data-hook="admin_user_reset_password">
8
+ <legend><%= t(:'spree.forgot_password') %></legend>
9
+
10
+ <%= form_for [:admin, @user], as: :spree_user, url: admin_reset_password_path, method: :post do |f| %>
11
+ <%= f.hidden_field :email, value: @user.email %>
12
+
13
+ <% if can?(:update, @user) %>
14
+ <div class="align-center">
15
+ <%= f.submit Spree.user_class.human_attribute_name(:reset_password), class: "button primary" %>
16
+ </div>
17
+ <% end %>
18
+ <% end %>
19
+ </fieldset>
20
+ <% end %>
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # frozen_string_literal: true
4
+
5
+ require "bundler/setup"
6
+ require "solidus_auth_devise"
7
+
8
+ # You can add fixtures and/or initialization code here to make experimenting
9
+ # with your gem easier. You can also use a different console, if you like.
10
+ $LOAD_PATH.unshift(*Dir["#{__dir__}/../app/*"])
11
+
12
+ # (If you use this, don't forget to add pry to your Gemfile!)
13
+ # require "pry"
14
+ # Pry.start
15
+
16
+ require "irb"
17
+ IRB.start(__FILE__)
data/bin/rails CHANGED
@@ -1,7 +1,15 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- ENGINE_ROOT = File.expand_path('../..', __FILE__)
4
- ENGINE_PATH = File.expand_path('../../lib/spree/auth/engine', __FILE__)
3
+ # frozen_string_literal: true
5
4
 
6
- require 'rails/all'
7
- require 'rails/engine/commands'
5
+ app_root = 'spec/dummy'
6
+
7
+ unless File.exist? "#{app_root}/bin/rails"
8
+ system "bin/rake", app_root or begin # rubocop:disable Style/AndOr
9
+ warn "Automatic creation of the dummy app failed"
10
+ exit 1
11
+ end
12
+ end
13
+
14
+ Dir.chdir app_root
15
+ exec 'bin/rails', *ARGV
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ gem install bundler --conservative
7
+ bundle update
8
+ bundle exec rake clobber
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Use this hook to configure devise mailer, warden hooks and so forth. The first
2
4
  # four configuration values can also be set straight in your models.
3
5
  Devise.setup do |config|
@@ -29,7 +31,7 @@ Devise.setup do |config|
29
31
  config.http_authenticatable = true
30
32
 
31
33
  # Set this to true to use Basic Auth for AJAX requests. True by default.
32
- #config.http_authenticatable_on_xhr = false
34
+ # config.http_authenticatable_on_xhr = false
33
35
 
34
36
  # The realm used in Http Basic Authentication
35
37
  config.http_authentication_realm = 'Spree Application'
@@ -41,7 +43,11 @@ Devise.setup do |config|
41
43
  config.encryptor = 'authlogic_sha512'
42
44
 
43
45
  # Setup a pepper to generate the encrypted password.
44
- config.pepper = Rails.configuration.secret_token
46
+ config.pepper = if Rails.configuration.respond_to?(:secret_token) && Rails.configuration.secret_token.present?
47
+ Rails.configuration.secret_token
48
+ else
49
+ Rails.configuration.secret_key_base
50
+ end
45
51
 
46
52
  # ==> Configuration for :confirmable
47
53
  # The time you want to give your user to confirm his account. During this time
@@ -114,6 +120,9 @@ Devise.setup do |config|
114
120
  # should add them to the navigational formats lists. Default is [:html]
115
121
  config.navigational_formats = [:html, :json, :xml]
116
122
 
123
+ # The default HTTP method used to sign out a resource. Default is :delete.
124
+ config.sign_out_via = :delete
125
+
117
126
  # ==> Warden configuration
118
127
  # If you want to use other strategies, that are not (yet) supported by Devise,
119
128
  # you can configure them inside the config.warden block. The example below
@@ -132,10 +141,6 @@ Devise.setup do |config|
132
141
  # Don't put a too small interval or your users won't have the time to
133
142
  # change their passwords.
134
143
  config.reset_password_within = 6.hours
135
- config.sign_out_via = :get
136
144
 
137
145
  config.case_insensitive_keys = [:email]
138
-
139
- # Direct Devise to use the Spree router when attempting to find resource routes.
140
- config.router_name = :spree
141
146
  end
@@ -1,5 +1,7 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # Merges users orders to their account after sign in and sign up.
2
- Warden::Manager.after_set_user except: :fetch do |user, auth, opts|
4
+ Warden::Manager.after_set_user except: :fetch do |user, auth, _opts|
3
5
  if auth.cookies.signed[:guest_token].present?
4
6
  if user.is_a?(Spree::User)
5
7
  Spree::Order.incomplete.where(guest_token: auth.cookies.signed[:guest_token], user_id: nil).each do |order|
@@ -9,6 +11,6 @@ Warden::Manager.after_set_user except: :fetch do |user, auth, opts|
9
11
  end
10
12
  end
11
13
 
12
- Warden::Manager.before_logout do |user, auth, opts|
14
+ Warden::Manager.before_logout do |_user, auth, _opts|
13
15
  auth.cookies.delete :guest_token
14
16
  end
@@ -2,6 +2,7 @@
2
2
  en:
3
3
  spree:
4
4
  admin_login: Admin Login
5
+ change_my_password: Change my password
5
6
  devise:
6
7
  confirmations:
7
8
  confirmed: Your account was successfully confirmed. You are now signed in.
@@ -32,8 +33,10 @@ en:
32
33
  spree_user:
33
34
  cannot_be_blank: Your password cannot be blank.
34
35
  no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided."
35
- send_instructions: You will receive an email with instructions about how to reset your password in a few minutes.
36
+ send_instructions: If an account with that email address exists, you will receive an email with instructions about how to reset your password in a few minutes.
36
37
  updated: Your password was changed successfully. You are now signed in.
38
+ passwords:
39
+ send_instructions: If an account with that email address exists, you will receive an email with instructions about how to reset your password in a few minutes.
37
40
  user_registrations:
38
41
  destroyed: Bye! Your account was successfully cancelled. We hope to see you again soon.
39
42
  inactive_signed_up: 'You have signed up successfully. However, we could not sign you in because your account is %{reason}.'
@@ -46,5 +46,5 @@ fr:
46
46
  not_found: "n'a pas été trouvé"
47
47
  not_locked: "n'a pas été bloqué"
48
48
  not_saved:
49
- one: "1 erreur interdit cette %{ressource} d'être enregistrée :"
49
+ one: "1 erreur interdit cette %{resource} d'être enregistrée :"
50
50
  other: "%{count} erreurs interdisent cette %{resource} d'être enregistrée :"
@@ -1,8 +1,8 @@
1
+ ---
1
2
  it:
2
3
  spree:
3
- admin:
4
- tab:
5
- users: Utenti
4
+ admin_login: Login Amministrazione
5
+ change_my_password: Cambia la password
6
6
  devise:
7
7
  confirmations:
8
8
  confirmed: Il tuo account è stato correttamente confermato. Ora sei collegato.
@@ -65,9 +65,9 @@ it:
65
65
  signed_out: Uscito correttamente.
66
66
  errors:
67
67
  messages:
68
- email_is_invalid: L'indirizzo email non può essere vuoto
69
68
  already_confirmed: è stato già confermato
70
69
  confirmation_period_expired: deve essere confermato entro %{period}, richiedi una nuova conferma
70
+ email_is_invalid: L'indirizzo email non può essere vuoto
71
71
  expired: è scaduto, si prega di richiederne uno nuovo
72
72
  not_found: non trovato
73
73
  not_locked: non era bloccato
@@ -1,9 +1,7 @@
1
- Spree::Core::Engine.routes.draw do
2
- if (
3
- SolidusSupport.frontend_available? &&
4
- Spree::Auth::Config.draw_frontend_routes
5
- )
1
+ # frozen_string_literal: true
6
2
 
3
+ Spree::Core::Engine.routes.draw do
4
+ if SolidusSupport.frontend_available? && Spree::Auth::Config.draw_frontend_routes
7
5
  devise_for(:spree_user, {
8
6
  class_name: 'Spree::User',
9
7
  controllers: {
@@ -14,7 +12,8 @@ Spree::Core::Engine.routes.draw do
14
12
  },
15
13
  skip: [:unlocks, :omniauth_callbacks],
16
14
  path_names: { sign_out: 'logout' },
17
- path_prefix: :user
15
+ path_prefix: :user,
16
+ router_name: :spree
18
17
  })
19
18
 
20
19
  resources :users, only: [:edit, :update]
@@ -38,11 +37,7 @@ Spree::Core::Engine.routes.draw do
38
37
  resource :account, controller: 'users'
39
38
  end
40
39
 
41
- if (
42
- SolidusSupport.backend_available? &&
43
- Spree::Auth::Config.draw_backend_routes
44
- )
45
-
40
+ if SolidusSupport.backend_available? && Spree::Auth::Config.draw_backend_routes
46
41
  namespace :admin do
47
42
  devise_for(:spree_user, {
48
43
  class_name: 'Spree::User',
@@ -53,13 +48,14 @@ Spree::Core::Engine.routes.draw do
53
48
  sessions: 'spree/admin/user_sessions',
54
49
  passwords: 'spree/admin/user_passwords'
55
50
  },
51
+ router_name: :spree
56
52
  })
57
53
 
58
54
  devise_scope :spree_user do
59
55
  get '/authorization_failure', to: 'user_sessions#authorization_failure', as: :unauthorized
60
56
  get '/login', to: 'user_sessions#new', as: :login
61
57
  post '/login', to: 'user_sessions#create', as: :create_new_session
62
- get '/logout', to: 'user_sessions#destroy', as: :logout
58
+ match '/logout', to: 'user_sessions#destroy', as: :logout, via: Devise.sign_out_via
63
59
 
64
60
  get '/password/recover', to: 'user_passwords#new', as: :recover_password
65
61
  post '/password/recover', to: 'user_passwords#create', as: :reset_password