spree_auth_devise 4.0.1 → 4.1.0.rc1

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

Potentially problematic release.


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

Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +41 -0
  3. data/.gitignore +1 -0
  4. data/.travis.yml +3 -16
  5. data/Appraisals +3 -14
  6. data/Gemfile +1 -1
  7. data/app/controllers/spree/user_confirmations_controller.rb +2 -0
  8. data/app/controllers/spree/user_passwords_controller.rb +2 -0
  9. data/app/controllers/spree/user_registrations_controller.rb +9 -0
  10. data/app/controllers/spree/user_sessions_controller.rb +23 -1
  11. data/app/views/spree/user_passwords/edit.html.erb +20 -17
  12. data/app/views/spree/user_passwords/new.html.erb +18 -15
  13. data/app/views/spree/user_registrations/new.html.erb +12 -17
  14. data/app/views/spree/user_sessions/new.html.erb +11 -12
  15. data/config/routes.rb +0 -1
  16. data/gemfiles/{spree_3_5.gemfile → spree_4_1.gemfile} +1 -1
  17. data/lib/controllers/frontend/spree/users_controller.rb +2 -7
  18. data/lib/generators/spree/auth/install/install_generator.rb +0 -4
  19. data/lib/spree/testing_support/auth_helpers.rb +36 -0
  20. data/lib/spree/testing_support/checkout_helpers.rb +24 -0
  21. data/spec/controllers/spree/admin/orders_controller_spec.rb +1 -1
  22. data/spec/controllers/spree/admin/user_sessions_controller_spec.rb +1 -1
  23. data/spec/controllers/spree/checkout_controller_spec.rb +12 -13
  24. data/spec/controllers/spree/products_controller_spec.rb +1 -1
  25. data/spec/controllers/spree/user_passwords_controller_spec.rb +4 -4
  26. data/spec/controllers/spree/user_registrations_controller_spec.rb +7 -7
  27. data/spec/controllers/spree/user_sessions_controller_spec.rb +17 -17
  28. data/spec/controllers/spree/users_controller_spec.rb +4 -4
  29. data/spec/features/account_spec.rb +10 -8
  30. data/spec/features/admin/password_reset_spec.rb +2 -4
  31. data/spec/features/admin/sign_in_spec.rb +5 -7
  32. data/spec/features/admin/sign_out_spec.rb +1 -1
  33. data/spec/features/admin_permissions_spec.rb +1 -1
  34. data/spec/features/change_email_spec.rb +1 -7
  35. data/spec/features/checkout_spec.rb +38 -63
  36. data/spec/features/confirmation_spec.rb +1 -3
  37. data/spec/features/order_spec.rb +9 -15
  38. data/spec/features/password_reset_spec.rb +2 -4
  39. data/spec/features/sign_in_spec.rb +7 -9
  40. data/spec/features/sign_out_spec.rb +16 -23
  41. data/spec/features/sign_up_spec.rb +4 -2
  42. data/spec/mailers/user_mailer_spec.rb +1 -1
  43. data/spec/spec_helper.rb +16 -0
  44. data/spec/support/add_to_cart.rb +11 -4
  45. data/spec/support/authentication_helpers.rb +1 -1
  46. data/spec/support/capybara.rb +15 -8
  47. data/spree_auth_devise.gemspec +13 -9
  48. metadata +100 -74
  49. data/app/overrides/auth_shared_login_bar.rb +0 -6
  50. data/app/views/spree/shared/_login.html.erb +0 -18
  51. data/app/views/spree/shared/_user_form.html.erb +0 -17
  52. data/gemfiles/spree_3_2.gemfile +0 -8
  53. data/gemfiles/spree_3_7.gemfile +0 -9
  54. data/gemfiles/spree_4_0.gemfile +0 -8
  55. data/lib/assets/javascripts/spree/backend/spree_auth.js.erb +0 -1
  56. data/lib/assets/javascripts/spree/frontend/account.js +0 -8
  57. data/lib/assets/javascripts/spree/frontend/spree_auth.js.erb +0 -2
  58. data/lib/assets/stylesheets/spree/backend/spree_auth.css.erb +0 -3
  59. data/lib/assets/stylesheets/spree/frontend/spree_auth.css.erb +0 -3
  60. data/lib/controllers/frontend/spree/store_controller_decorator.rb +0 -7
  61. data/lib/views/frontend/spree/checkout/_new_user.html.erb +0 -20
  62. data/lib/views/frontend/spree/checkout/registration.html.erb +0 -25
  63. data/lib/views/frontend/spree/shared/_link_to_account.html.erb +0 -6
  64. data/lib/views/frontend/spree/users/edit.html.erb +0 -17
  65. data/lib/views/frontend/spree/users/show.html.erb +0 -48
  66. data/spec/requests/spree/frontend/user_update_spec.rb +0 -42
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_auth_devise
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.1
4
+ version: 4.1.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Schofield
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-17 00:00:00.000000000 Z
11
+ date: 2020-01-30 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: deface
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: devise
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,20 +58,20 @@ dependencies:
44
58
  requirements:
45
59
  - - ">="
46
60
  - !ruby/object:Gem::Version
47
- version: 3.1.0
61
+ version: 4.1.0.alpha
48
62
  - - "<"
49
63
  - !ruby/object:Gem::Version
50
- version: '4.1'
64
+ version: '5.0'
51
65
  type: :runtime
52
66
  prerelease: false
53
67
  version_requirements: !ruby/object:Gem::Requirement
54
68
  requirements:
55
69
  - - ">="
56
70
  - !ruby/object:Gem::Version
57
- version: 3.1.0
71
+ version: 4.1.0.alpha
58
72
  - - "<"
59
73
  - !ruby/object:Gem::Version
60
- version: '4.1'
74
+ version: '5.0'
61
75
  - !ruby/object:Gem::Dependency
62
76
  name: spree_extension
63
77
  requirement: !ruby/object:Gem::Requirement
@@ -73,33 +87,33 @@ dependencies:
73
87
  - !ruby/object:Gem::Version
74
88
  version: '0'
75
89
  - !ruby/object:Gem::Dependency
76
- name: deface
90
+ name: appraisal
77
91
  requirement: !ruby/object:Gem::Requirement
78
92
  requirements:
79
- - - "~>"
93
+ - - ">="
80
94
  - !ruby/object:Gem::Version
81
- version: '1.0'
82
- type: :runtime
95
+ version: '0'
96
+ type: :development
83
97
  prerelease: false
84
98
  version_requirements: !ruby/object:Gem::Requirement
85
99
  requirements:
86
- - - "~>"
100
+ - - ">="
87
101
  - !ruby/object:Gem::Version
88
- version: '1.0'
102
+ version: '0'
89
103
  - !ruby/object:Gem::Dependency
90
104
  name: capybara
91
105
  requirement: !ruby/object:Gem::Requirement
92
106
  requirements:
93
- - - "~>"
107
+ - - ">="
94
108
  - !ruby/object:Gem::Version
95
- version: '2.7'
109
+ version: '0'
96
110
  type: :development
97
111
  prerelease: false
98
112
  version_requirements: !ruby/object:Gem::Requirement
99
113
  requirements:
100
- - - "~>"
114
+ - - ">="
101
115
  - !ruby/object:Gem::Version
102
- version: '2.7'
116
+ version: '0'
103
117
  - !ruby/object:Gem::Dependency
104
118
  name: capybara-screenshot
105
119
  requirement: !ruby/object:Gem::Requirement
@@ -128,20 +142,6 @@ dependencies:
128
142
  - - "~>"
129
143
  - !ruby/object:Gem::Version
130
144
  version: '4.2'
131
- - !ruby/object:Gem::Dependency
132
- name: sass-rails
133
- requirement: !ruby/object:Gem::Requirement
134
- requirements:
135
- - - ">="
136
- - !ruby/object:Gem::Version
137
- version: '0'
138
- type: :development
139
- prerelease: false
140
- version_requirements: !ruby/object:Gem::Requirement
141
- requirements:
142
- - - ">="
143
- - !ruby/object:Gem::Version
144
- version: '0'
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: database_cleaner
147
147
  requirement: !ruby/object:Gem::Requirement
@@ -241,7 +241,7 @@ dependencies:
241
241
  - !ruby/object:Gem::Version
242
242
  version: '0'
243
243
  - !ruby/object:Gem::Dependency
244
- name: selenium-webdriver
244
+ name: pry
245
245
  requirement: !ruby/object:Gem::Requirement
246
246
  requirements:
247
247
  - - ">="
@@ -255,7 +255,21 @@ dependencies:
255
255
  - !ruby/object:Gem::Version
256
256
  version: '0'
257
257
  - !ruby/object:Gem::Dependency
258
- name: pry
258
+ name: puma
259
+ requirement: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - ">="
262
+ - !ruby/object:Gem::Version
263
+ version: '0'
264
+ type: :development
265
+ prerelease: false
266
+ version_requirements: !ruby/object:Gem::Requirement
267
+ requirements:
268
+ - - ">="
269
+ - !ruby/object:Gem::Version
270
+ version: '0'
271
+ - !ruby/object:Gem::Dependency
272
+ name: rails-controller-testing
259
273
  requirement: !ruby/object:Gem::Requirement
260
274
  requirements:
261
275
  - - ">="
@@ -274,14 +288,42 @@ dependencies:
274
288
  requirements:
275
289
  - - "~>"
276
290
  - !ruby/object:Gem::Version
277
- version: '3.5'
291
+ version: 4.0.0.beta2
278
292
  type: :development
279
293
  prerelease: false
280
294
  version_requirements: !ruby/object:Gem::Requirement
281
295
  requirements:
282
296
  - - "~>"
283
297
  - !ruby/object:Gem::Version
284
- version: '3.5'
298
+ version: 4.0.0.beta2
299
+ - !ruby/object:Gem::Dependency
300
+ name: sass-rails
301
+ requirement: !ruby/object:Gem::Requirement
302
+ requirements:
303
+ - - ">="
304
+ - !ruby/object:Gem::Version
305
+ version: '0'
306
+ type: :development
307
+ prerelease: false
308
+ version_requirements: !ruby/object:Gem::Requirement
309
+ requirements:
310
+ - - ">="
311
+ - !ruby/object:Gem::Version
312
+ version: '0'
313
+ - !ruby/object:Gem::Dependency
314
+ name: selenium-webdriver
315
+ requirement: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - ">="
318
+ - !ruby/object:Gem::Version
319
+ version: '0'
320
+ type: :development
321
+ prerelease: false
322
+ version_requirements: !ruby/object:Gem::Requirement
323
+ requirements:
324
+ - - ">="
325
+ - !ruby/object:Gem::Version
326
+ version: '0'
285
327
  - !ruby/object:Gem::Dependency
286
328
  name: shoulda-matchers
287
329
  requirement: !ruby/object:Gem::Requirement
@@ -316,40 +358,40 @@ dependencies:
316
358
  requirements:
317
359
  - - ">="
318
360
  - !ruby/object:Gem::Version
319
- version: 3.1.0
361
+ version: 4.1.0.alpha
320
362
  - - "<"
321
363
  - !ruby/object:Gem::Version
322
- version: '4.1'
364
+ version: '5.0'
323
365
  type: :development
324
366
  prerelease: false
325
367
  version_requirements: !ruby/object:Gem::Requirement
326
368
  requirements:
327
369
  - - ">="
328
370
  - !ruby/object:Gem::Version
329
- version: 3.1.0
371
+ version: 4.1.0.alpha
330
372
  - - "<"
331
373
  - !ruby/object:Gem::Version
332
- version: '4.1'
374
+ version: '5.0'
333
375
  - !ruby/object:Gem::Dependency
334
376
  name: spree_frontend
335
377
  requirement: !ruby/object:Gem::Requirement
336
378
  requirements:
337
379
  - - ">="
338
380
  - !ruby/object:Gem::Version
339
- version: 3.1.0
381
+ version: 4.1.0.alpha
340
382
  - - "<"
341
383
  - !ruby/object:Gem::Version
342
- version: '4.1'
384
+ version: '5.0'
343
385
  type: :development
344
386
  prerelease: false
345
387
  version_requirements: !ruby/object:Gem::Requirement
346
388
  requirements:
347
389
  - - ">="
348
390
  - !ruby/object:Gem::Version
349
- version: 3.1.0
391
+ version: 4.1.0.alpha
350
392
  - - "<"
351
393
  - !ruby/object:Gem::Version
352
- version: '4.1'
394
+ version: '5.0'
353
395
  - !ruby/object:Gem::Dependency
354
396
  name: sqlite3
355
397
  requirement: !ruby/object:Gem::Requirement
@@ -365,19 +407,19 @@ dependencies:
365
407
  - !ruby/object:Gem::Version
366
408
  version: '0'
367
409
  - !ruby/object:Gem::Dependency
368
- name: appraisal
410
+ name: webdrivers
369
411
  requirement: !ruby/object:Gem::Requirement
370
412
  requirements:
371
- - - ">="
413
+ - - "~>"
372
414
  - !ruby/object:Gem::Version
373
- version: '0'
415
+ version: 4.2.0
374
416
  type: :development
375
417
  prerelease: false
376
418
  version_requirements: !ruby/object:Gem::Requirement
377
419
  requirements:
378
- - - ">="
420
+ - - "~>"
379
421
  - !ruby/object:Gem::Version
380
- version: '0'
422
+ version: 4.2.0
381
423
  description: Provides authentication and authorization services for use with Spree
382
424
  by using Devise and CanCan.
383
425
  email: sean@spreecommerce.com
@@ -385,6 +427,7 @@ executables: []
385
427
  extensions: []
386
428
  extra_rdoc_files: []
387
429
  files:
430
+ - ".circleci/config.yml"
388
431
  - ".gitignore"
389
432
  - ".rspec"
390
433
  - ".travis.yml"
@@ -402,10 +445,7 @@ files:
402
445
  - app/mailers/spree/user_mailer.rb
403
446
  - app/models/spree/auth_configuration.rb
404
447
  - app/models/spree/user.rb
405
- - app/overrides/auth_shared_login_bar.rb
406
448
  - app/overrides/spree/admin/shared/_header/auth_admin_login_navigation_bar.html.erb.deface
407
- - app/views/spree/shared/_login.html.erb
408
- - app/views/spree/shared/_user_form.html.erb
409
449
  - app/views/spree/user_mailer/confirmation_instructions.text.erb
410
450
  - app/views/spree/user_mailer/reset_password_instructions.text.erb
411
451
  - app/views/spree/user_passwords/edit.html.erb
@@ -437,16 +477,8 @@ files:
437
477
  - db/migrate/20141002154641_add_confirmable_to_users.rb
438
478
  - db/migrate/20150416152553_add_missing_indices_on_user.rb
439
479
  - db/seeds.rb
440
- - gemfiles/spree_3_2.gemfile
441
- - gemfiles/spree_3_5.gemfile
442
- - gemfiles/spree_3_7.gemfile
443
- - gemfiles/spree_4_0.gemfile
480
+ - gemfiles/spree_4_1.gemfile
444
481
  - gemfiles/spree_master.gemfile
445
- - lib/assets/javascripts/spree/backend/spree_auth.js.erb
446
- - lib/assets/javascripts/spree/frontend/account.js
447
- - lib/assets/javascripts/spree/frontend/spree_auth.js.erb
448
- - lib/assets/stylesheets/spree/backend/spree_auth.css.erb
449
- - lib/assets/stylesheets/spree/frontend/spree_auth.css.erb
450
482
  - lib/controllers/backend/spree/admin/base_controller_decorator.rb
451
483
  - lib/controllers/backend/spree/admin/orders/customer_details_controller_decorator.rb
452
484
  - lib/controllers/backend/spree/admin/orders_controller_decorator.rb
@@ -454,7 +486,6 @@ files:
454
486
  - lib/controllers/backend/spree/admin/user_passwords_controller.rb
455
487
  - lib/controllers/backend/spree/admin/user_sessions_controller.rb
456
488
  - lib/controllers/frontend/spree/checkout_controller_decorator.rb
457
- - lib/controllers/frontend/spree/store_controller_decorator.rb
458
489
  - lib/controllers/frontend/spree/users_controller.rb
459
490
  - lib/generators/spree/auth/install/install_generator.rb
460
491
  - lib/generators/spree/auth/install/templates/config/initializers/devise.rb
@@ -462,6 +493,8 @@ files:
462
493
  - lib/spree/auth/devise.rb
463
494
  - lib/spree/auth/engine.rb
464
495
  - lib/spree/authentication_helpers.rb
496
+ - lib/spree/testing_support/auth_helpers.rb
497
+ - lib/spree/testing_support/checkout_helpers.rb
465
498
  - lib/spree_auth_devise.rb
466
499
  - lib/tasks/auth.rake
467
500
  - lib/views/backend/spree/admin/user_passwords/edit.html.erb
@@ -470,13 +503,8 @@ files:
470
503
  - lib/views/backend/spree/admin/user_sessions/new.html.erb
471
504
  - lib/views/backend/spree/layouts/admin/_login_nav.html.erb
472
505
  - lib/views/backend/spree/layouts/login.html.erb
473
- - lib/views/frontend/spree/checkout/_new_user.html.erb
474
- - lib/views/frontend/spree/checkout/registration.html.erb
475
506
  - lib/views/frontend/spree/shared/_flashes.html.erb
476
- - lib/views/frontend/spree/shared/_link_to_account.html.erb
477
507
  - lib/views/frontend/spree/shared/_login_bar.html.erb
478
- - lib/views/frontend/spree/users/edit.html.erb
479
- - lib/views/frontend/spree/users/show.html.erb
480
508
  - spec/controllers/spree/admin/orders_controller_spec.rb
481
509
  - spec/controllers/spree/admin/user_sessions_controller_spec.rb
482
510
  - spec/controllers/spree/checkout_controller_spec.rb
@@ -504,7 +532,6 @@ files:
504
532
  - spec/mailers/user_mailer_spec.rb
505
533
  - spec/models/order_spec.rb
506
534
  - spec/models/user_spec.rb
507
- - spec/requests/spree/frontend/user_update_spec.rb
508
535
  - spec/spec_helper.rb
509
536
  - spec/support/ability.rb
510
537
  - spec/support/add_to_cart.rb
@@ -523,7 +550,7 @@ homepage: https://spreecommerce.org
523
550
  licenses:
524
551
  - BSD-3-Clause
525
552
  metadata: {}
526
- post_install_message:
553
+ post_install_message:
527
554
  rdoc_options: []
528
555
  require_paths:
529
556
  - lib
@@ -531,16 +558,16 @@ required_ruby_version: !ruby/object:Gem::Requirement
531
558
  requirements:
532
559
  - - ">="
533
560
  - !ruby/object:Gem::Version
534
- version: 2.2.7
561
+ version: 2.5.0
535
562
  required_rubygems_version: !ruby/object:Gem::Requirement
536
563
  requirements:
537
- - - ">="
564
+ - - ">"
538
565
  - !ruby/object:Gem::Version
539
- version: '0'
566
+ version: 1.3.1
540
567
  requirements:
541
568
  - none
542
- rubygems_version: 3.1.4
543
- signing_key:
569
+ rubygems_version: 3.0.2
570
+ signing_key:
544
571
  specification_version: 4
545
572
  summary: Provides authentication and authorization services for use with Spree by
546
573
  using Devise and CanCan.
@@ -572,7 +599,6 @@ test_files:
572
599
  - spec/mailers/user_mailer_spec.rb
573
600
  - spec/models/order_spec.rb
574
601
  - spec/models/user_spec.rb
575
- - spec/requests/spree/frontend/user_update_spec.rb
576
602
  - spec/spec_helper.rb
577
603
  - spec/support/ability.rb
578
604
  - spec/support/add_to_cart.rb
@@ -1,6 +0,0 @@
1
- Deface::Override.new(virtual_path: "spree/shared/_nav_bar",
2
- name: "auth_shared_login_bar",
3
- insert_before: "li#search-bar",
4
- partial: "spree/shared/login_bar",
5
- disabled: false,
6
- original: 'c00d67dfc0496d21a351b48c41a728412cb5ed2c')
@@ -1,18 +0,0 @@
1
- <%= form_for Spree::User.new, :as => :spree_user, :url => spree.create_new_session_path do |f| %>
2
- <div id="password-credentials">
3
- <p>
4
- <%= f.label :email, Spree.t(:email) %>
5
- <%= f.email_field :email, :class => 'form-control', :tabindex => 1, autofocus: true %>
6
- </p>
7
- <p>
8
- <%= f.label :password, Spree.t(:password) %>
9
- <%= f.password_field :password, :class => 'form-control', :tabindex => 2 %>
10
- </p>
11
- </div>
12
- <p class="form-check">
13
- <%= f.check_box :remember_me, :tabindex => 3, :class => 'form-check-input' %>
14
- <%= f.label :remember_me, Spree.t(:remember_me), :class => 'form-check-label' %>
15
- </p>
16
-
17
- <p><%= f.submit Spree.t(:login), :class => 'btn btn-lg btn-success btn-block', :tabindex => 4 %></p>
18
- <% end %>
@@ -1,17 +0,0 @@
1
- <fieldset id="password-credentials">
2
- <div class="form-group">
3
- <%= f.label :email, Spree.t(:email), class: 'required', title: 'required' %>
4
- <%= f.email_field :email, :class => 'form-control', :placeholder => Spree.t(:email) %>
5
- </div>
6
- <hr />
7
- <div class="form-group">
8
- <%= f.label :password, Spree.t(:password), class: 'required', title: 'required' %>
9
- <%= f.password_field :password, :class => 'form-control', :placeholder => Spree.t(:password) %>
10
-
11
- </div>
12
- <div class="form-group">
13
- <%= f.label :password_confirmation, Spree.t(:password_confirmation), class: 'required', title: 'required' %>
14
- <%= f.password_field :password_confirmation, :class => 'form-control', :placeholder => Spree.t(:confirm_password) %>
15
- </div>
16
- </fieldset>
17
- <div data-hook="signup_below_password_fields"></div>
@@ -1,8 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails-controller-testing"
6
- gem "spree", "~> 3.2.0"
7
-
8
- gemspec path: "../"
@@ -1,9 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails-controller-testing"
6
- gem "spree", "~> 3.7.0.rc3"
7
- gem "sass-rails"
8
-
9
- gemspec path: "../"
@@ -1,8 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails-controller-testing"
6
- gem "spree", github: "spree/spree", tag: "v4.0.0.beta"
7
-
8
- gemspec path: "../"
@@ -1 +0,0 @@
1
- //= require spree/backend
@@ -1,8 +0,0 @@
1
- Spree.fetch_account = function() {
2
- return $.ajax({
3
- url: Spree.pathFor("account_link"),
4
- success: function(data) {
5
- return $(data).insertBefore("li#search-bar");
6
- }
7
- });
8
- };
@@ -1,2 +0,0 @@
1
- //= require spree/frontend
2
- //= require spree/frontend/account
@@ -1,3 +0,0 @@
1
- /*
2
- *= require spree/backend
3
- */
@@ -1,3 +0,0 @@
1
- /*
2
- *= require spree/frontend
3
- */
@@ -1,7 +0,0 @@
1
- module Spree::StoreControllerDecorator
2
- def account_link
3
- render partial: 'spree/shared/link_to_account'
4
- fresh_when(spree_current_user)
5
- end
6
- end
7
- Spree::StoreController.prepend(Spree::StoreControllerDecorator)
@@ -1,20 +0,0 @@
1
- <div>
2
- <div class="card mb-3">
3
- <div class="card-header">
4
- <h3 class="card-title mb-0 h6"><%= Spree.t(:create_a_new_account) %></h3>
5
- </div>
6
- <div id="new-customer" class="card-body" data-hook="login">
7
- <%= form_for @user, :as => :spree_user, :url => spree.registration_path(@user) do |f| %>
8
- <div data-hook="signup_inside_form">
9
- <%= render :partial => 'spree/shared/user_form', :locals => { :f => f } %>
10
- <div><%= f.submit Spree.t(:create), :class => 'btn btn-lg btn-success btn-block' %></div>
11
- </div>
12
- <% end %>
13
- <div class="text-center">
14
- <%= Spree.t(:or) %>
15
- <%= link_to Spree.t(:login_as_existing), spree.login_path %>
16
- </div>
17
- <div data-hook="login_extras"></div>
18
- </div>
19
- </div>
20
- </div>
@@ -1,25 +0,0 @@
1
- <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @user } %>
2
- <h1><%= Spree.t(:registration) %></h1>
3
- <div id="registration" class="row" data-hook>
4
- <div id="account" class="col-lg-6">
5
- <%= render :partial => 'new_user' %>
6
- </div>
7
- <% if Spree::Config[:allow_guest_checkout] %>
8
- <div class="col-lg-6">
9
- <div class="card mb-3">
10
- <div class="card-header">
11
- <h3 class="card-title mb-0 h6"><%= Spree.t(:guest_user_account) %></h3>
12
- </div>
13
- <div id="guest_checkout" class="card-body" data-hook>
14
- <%= form_for @order, :url => update_checkout_registration_path, :method => :put, :html => { :id => 'checkout_form_registration' } do |f| %>
15
- <div class="form-group">
16
- <%= f.label :email, Spree.t(:email), class: 'required', title: 'required' %>
17
- <%= f.email_field :email, :class => 'form-control title', :placeholder => Spree.t(:email) %>
18
- </div>
19
- <div><%= f.submit Spree.t(:continue), :class => 'btn btn-lg btn-success btn-block' %></div>
20
- <% end %>
21
- </div>
22
- </div>
23
- </div>
24
- <% end %>
25
- </div>
@@ -1,6 +0,0 @@
1
- <% if spree_current_user %>
2
- <li class="nav-item"><%= link_to Spree.t(:my_account), spree.account_path, :class => 'nav-link text-white' %></li>
3
- <li class="nav-item"><%= link_to Spree.t(:logout), spree.logout_path, :class => 'nav-link text-white' %></li>
4
- <% else %>
5
- <li id="link-to-login" class="nav-item"><%= link_to Spree.t(:login), spree.login_path, :class => 'nav-link text-white' %></li>
6
- <% end %>
@@ -1,17 +0,0 @@
1
- <div class="col-lg-6 offset-lg-3">
2
- <div class="card mb-3">
3
- <div class="card-header">
4
- <h3 class="card-title mb-0 h6"><%= Spree.t(:editing_user) %></h3>
5
- </div>
6
- <div class="card-body">
7
- <%= render :partial => 'spree/shared/error_messages', :locals => { :target => @user } %>
8
-
9
- <%= form_for Spree::User.new, :as => @user, :url => spree.user_path(@user), :method => :put do |f| %>
10
- <%= render :partial => 'spree/shared/user_form', :locals => { :f => f } %>
11
- <div>
12
- <%= f.submit Spree.t(:update), :class => 'btn btn-primary' %>
13
- </div>
14
- <% end %>
15
- </div>
16
- </div>
17
- </div>
@@ -1,48 +0,0 @@
1
- <h1><%= accurate_title %></h1>
2
-
3
- <div data-hook="account_summary" class="account-summary card bg-light mb-3">
4
- <dl id="user-info" class="card-body">
5
- <dt><%= Spree.t(:email) %></dt>
6
- <dd><%= @user.email %> (<%= link_to Spree.t(:edit), spree.edit_account_path %>)</dd>
7
- <br />
8
- <dt><%= Spree.t(:credit_balance, scope: [:store_credits])%></dt>
9
- <dd>
10
- <%= Spree::Money.new(spree_current_user.total_available_store_credit, currency: Spree::Config[:currency]) %>
11
- </dd>
12
- </dl>
13
- </div>
14
-
15
- <div data-hook="account_my_orders" class="account-my-orders">
16
-
17
- <h3><%= Spree.t(:my_orders) %></h3>
18
- <% if @orders.present? %>
19
- <table class="table table-striped order-summary">
20
- <thead class="active">
21
- <tr>
22
- <th class="order-number"><%= Spree::Order.human_attribute_name(:number) %></th>
23
- <th class="order-date"><%= Spree.t(:date) %></th>
24
- <th class="order-status"><%= Spree.t(:status) %></th>
25
- <th class="order-payment-state"><%= Spree.t(:payment_state) %></th>
26
- <th class="order-shipment-state"><%= Spree.t(:shipment_state) %></th>
27
- <th class="order-total"><%= Spree.t(:total) %></th>
28
- </tr>
29
- </thead>
30
- <tbody>
31
- <% @orders.each do |order| %>
32
- <tr>
33
- <td class="order-number"><%= link_to order.number, order_url(order) %></td>
34
- <td class="order-date"><%= l order.completed_at.to_date %></td>
35
- <td class="order-status"><%= Spree.t("order_state.#{order.state}").titleize %></td>
36
- <td class="order-payment-state"><%= Spree.t("payment_states.#{order.payment_state}").titleize if order.payment_state %></td>
37
- <td class="order-shipment-state"><%= Spree.t("shipment_states.#{order.shipment_state}").titleize if order.shipment_state %></td>
38
- <td class="lead text-primary order-total"><%= order.display_total %></td>
39
- </tr>
40
- <% end %>
41
- </tbody>
42
- </table>
43
- <% else %>
44
- <div class="alert alert-info" role="alert"><%= Spree.t(:you_have_no_orders_yet) %></div>
45
- <% end %>
46
- <br />
47
-
48
- </div>
@@ -1,42 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- RSpec.feature 'User update', type: :request do
4
- context 'CSRF protection' do
5
- %i[exception reset_session null_session].each do |strategy|
6
- # Completely clean the configuration of forgery protection for the
7
- # controller and reset it after the expectations. However, besides `:with`,
8
- # the options given to `protect_from_forgery` are processed on the fly.
9
- # I.e., there's no way to retain them. The initial setup corresponds to the
10
- # dummy application, which uses the default Rails skeleton in that regard.
11
- # So, if at some point Rails changed the given options, we should update it
12
- # here.
13
- around do |example|
14
- controller = Spree::UsersController
15
- old_allow_forgery_protection_value = controller.allow_forgery_protection
16
- old_forgery_protection_strategy = controller.forgery_protection_strategy
17
- controller.skip_forgery_protection
18
- controller.allow_forgery_protection = true
19
- controller.protect_from_forgery with: strategy
20
-
21
- example.run
22
-
23
- controller.allow_forgery_protection = old_allow_forgery_protection_value
24
- controller.forgery_protection_strategy = old_forgery_protection_strategy
25
- end
26
-
27
- it "is not possible to take account over with the #{strategy} forgery protection strategy" do
28
- user = create(:user, email: 'legit@mail.com', password: 'password')
29
-
30
- post '/login', params: "spree_user[email]=legit@mail.com&spree_user[password]=password"
31
- begin
32
- put '/users/123456', params: 'user[email]=hacked@example.com'
33
- rescue
34
- # testing that the account is not compromised regardless of any raised
35
- # exception
36
- end
37
-
38
- expect(user.reload.email).to eq('legit@mail.com')
39
- end
40
- end
41
- end
42
- end