spree_cm_commissioner 2.8.2.pre.pre.9 → 2.8.2

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 (158) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -4
  3. data/Gemfile.lock +1 -1
  4. data/app/controllers/concerns/spree_cm_commissioner/content_cachable.rb +0 -2
  5. data/app/controllers/spree/admin/homepage_section_controller.rb +1 -4
  6. data/app/controllers/spree/admin/taxons_controller_decorator.rb +0 -19
  7. data/app/controllers/spree/api/v2/storefront/homepage_sections_controller.rb +0 -1
  8. data/app/controllers/spree/api/v2/tenant/base_controller.rb +0 -4
  9. data/app/controllers/spree/api/v2/tenant/homepage_sections_controller.rb +0 -1
  10. data/app/controllers/spree/api/v2/tenant/products_controller.rb +1 -1
  11. data/app/controllers/spree/api/v2/tenant/taxons_controller.rb +1 -1
  12. data/app/controllers/spree_cm_commissioner/admin/products_controller_decorator.rb +0 -19
  13. data/app/finders/spree_cm_commissioner/events/find_matches.rb +0 -1
  14. data/app/helpers/spree_cm_commissioner/admin/homepage_segment_helper.rb +0 -2
  15. data/app/models/concerns/spree_cm_commissioner/homepage_section_bitwise.rb +1 -2
  16. data/app/models/concerns/spree_cm_commissioner/option_type_attr_type.rb +1 -2
  17. data/app/models/concerns/spree_cm_commissioner/order_state_machine.rb +0 -10
  18. data/app/models/concerns/spree_cm_commissioner/product_type.rb +1 -1
  19. data/app/models/spree_cm_commissioner/product_decorator.rb +0 -49
  20. data/app/models/spree_cm_commissioner/role_decorator.rb +1 -4
  21. data/app/models/spree_cm_commissioner/taxon_decorator.rb +0 -15
  22. data/app/models/spree_cm_commissioner/taxonomy_decorator.rb +1 -10
  23. data/app/models/spree_cm_commissioner/tenant.rb +0 -9
  24. data/app/models/spree_cm_commissioner/user_decorator.rb +0 -5
  25. data/app/models/spree_cm_commissioner/variant_options.rb +0 -4
  26. data/app/models/spree_cm_commissioner/vendor_decorator.rb +0 -4
  27. data/app/serializers/spree/v2/storefront/homepage_section_serializer.rb +1 -1
  28. data/app/serializers/spree/v2/storefront/product_serializer_decorator.rb +1 -1
  29. data/app/serializers/spree/v2/storefront/role_serializer.rb +1 -1
  30. data/app/serializers/spree/v2/storefront/taxon_serializer_decorator.rb +1 -2
  31. data/app/serializers/spree/v2/tenant/homepage_section_serializer.rb +1 -1
  32. data/app/serializers/spree/v2/tenant/role_serializer.rb +1 -1
  33. data/app/services/spree_cm_commissioner/api_caches/invalidate.rb +0 -12
  34. data/app/services/spree_cm_commissioner/oauth_access_tokens/cleanup_expired.rb +7 -13
  35. data/app/views/spree/admin/homepage_section/_form.html.erb +0 -5
  36. data/config/initializers/spree_permitted_attributes.rb +0 -8
  37. data/config/locales/en.yml +0 -16
  38. data/config/locales/km.yml +0 -11
  39. data/config/routes.rb +0 -27
  40. data/lib/spree_cm_commissioner/version.rb +1 -1
  41. data/lib/spree_cm_commissioner.rb +1 -7
  42. data/spree_cm_commissioner.gemspec +1 -1
  43. metadata +4 -120
  44. data/app/controllers/spree/api/v2/storefront/preview_products_controller.rb +0 -48
  45. data/app/controllers/spree/api/v2/storefront/preview_sections_controller.rb +0 -27
  46. data/app/controllers/spree/api/v2/storefront/preview_taxons_controller.rb +0 -18
  47. data/app/controllers/spree/api/v2/storefront/products_controller_decorator.rb +0 -15
  48. data/app/controllers/spree/api/v2/storefront/taxons_controller_decorator.rb +0 -15
  49. data/app/controllers/spree/api/v2/tenant/advertisements_controller.rb +0 -23
  50. data/app/controllers/spree/api/v2/tenant/free_vote_claims_controller.rb +0 -37
  51. data/app/controllers/spree/api/v2/tenant/preview_products_controller.rb +0 -47
  52. data/app/controllers/spree/api/v2/tenant/preview_sections_controller.rb +0 -26
  53. data/app/controllers/spree/api/v2/tenant/preview_shows_controller.rb +0 -19
  54. data/app/controllers/spree/api/v2/tenant/preview_taxons_controller.rb +0 -19
  55. data/app/controllers/spree/api/v2/tenant/show_contestants_controller.rb +0 -52
  56. data/app/controllers/spree/api/v2/tenant/show_elimination_sessions_controller.rb +0 -57
  57. data/app/controllers/spree/api/v2/tenant/show_people_controller.rb +0 -49
  58. data/app/controllers/spree/api/v2/tenant/show_person_assignments_controller.rb +0 -36
  59. data/app/controllers/spree/api/v2/tenant/shows_controller.rb +0 -34
  60. data/app/controllers/spree/api/v2/tenant/votes_controller.rb +0 -94
  61. data/app/controllers/spree/api/v2/tenant/voting_contestants_controller.rb +0 -43
  62. data/app/controllers/spree/api/v2/tenant/voting_credit_transactions_controller.rb +0 -41
  63. data/app/controllers/spree/api/v2/tenant/voting_credits_controller.rb +0 -31
  64. data/app/jobs/spree_cm_commissioner/vote_fraud_event_job.rb +0 -9
  65. data/app/jobs/spree_cm_commissioner/voting_credit_allocation_job.rb +0 -10
  66. data/app/jobs/spree_cm_commissioner/voting_credit_de_allocation_job.rb +0 -10
  67. data/app/models/spree_cm_commissioner/maintenance_tasks/voting_session.rb +0 -36
  68. data/app/models/spree_cm_commissioner/preview_role.rb +0 -8
  69. data/app/models/spree_cm_commissioner/role_user_decorator.rb +0 -8
  70. data/app/models/spree_cm_commissioner/show.rb +0 -160
  71. data/app/models/spree_cm_commissioner/show_contestant.rb +0 -39
  72. data/app/models/spree_cm_commissioner/show_contestant_image.rb +0 -11
  73. data/app/models/spree_cm_commissioner/show_contestant_video.rb +0 -15
  74. data/app/models/spree_cm_commissioner/show_episode.rb +0 -135
  75. data/app/models/spree_cm_commissioner/show_person.rb +0 -15
  76. data/app/models/spree_cm_commissioner/show_person_assignment.rb +0 -20
  77. data/app/models/spree_cm_commissioner/show_person_image.rb +0 -11
  78. data/app/models/spree_cm_commissioner/vote.rb +0 -16
  79. data/app/models/spree_cm_commissioner/vote_fraud_event.rb +0 -20
  80. data/app/models/spree_cm_commissioner/voting_contestant.rb +0 -54
  81. data/app/models/spree_cm_commissioner/voting_credit.rb +0 -72
  82. data/app/models/spree_cm_commissioner/voting_credit_transaction.rb +0 -55
  83. data/app/models/spree_cm_commissioner/voting_session.rb +0 -249
  84. data/app/models/spree_cm_commissioner/voting_session_stat.rb +0 -8
  85. data/app/overrides/spree/admin/products/_form/preview_checkbox.html.erb.deface +0 -9
  86. data/app/overrides/spree/admin/taxons/_form/preview_checkbox.html.erb.deface +0 -7
  87. data/app/serializers/spree/v2/tenant/advertisement_serializer.rb +0 -11
  88. data/app/serializers/spree/v2/tenant/show_contestant_serializer.rb +0 -21
  89. data/app/serializers/spree/v2/tenant/show_episode_serializer.rb +0 -17
  90. data/app/serializers/spree/v2/tenant/show_person_assignment_serializer.rb +0 -16
  91. data/app/serializers/spree/v2/tenant/show_person_serializer.rb +0 -13
  92. data/app/serializers/spree/v2/tenant/show_serializer.rb +0 -30
  93. data/app/serializers/spree/v2/tenant/video_serializer.rb +0 -9
  94. data/app/serializers/spree/v2/tenant/vote_serializer.rb +0 -14
  95. data/app/serializers/spree/v2/tenant/voting_contestant_serializer.rb +0 -23
  96. data/app/serializers/spree/v2/tenant/voting_credit_serializer.rb +0 -10
  97. data/app/serializers/spree/v2/tenant/voting_credit_transaction_serializer.rb +0 -14
  98. data/app/serializers/spree/v2/tenant/voting_session_serializer.rb +0 -19
  99. data/app/services/spree_cm_commissioner/fraud_check.rb +0 -299
  100. data/app/services/spree_cm_commissioner/show_contestants/normalize_video_highlights.rb +0 -57
  101. data/app/services/spree_cm_commissioner/url_embed/youtube_embed.rb +0 -44
  102. data/app/services/spree_cm_commissioner/vote_counters/audit_counters.rb +0 -43
  103. data/app/services/spree_cm_commissioner/vote_counters/base.rb +0 -31
  104. data/app/services/spree_cm_commissioner/vote_counters/increment.rb +0 -44
  105. data/app/services/spree_cm_commissioner/vote_counters/per_contestant_counter.rb +0 -68
  106. data/app/services/spree_cm_commissioner/vote_counters/rebuild_from_db.rb +0 -70
  107. data/app/services/spree_cm_commissioner/vote_counters/snapshot_to_db.rb +0 -113
  108. data/app/services/spree_cm_commissioner/vote_credit_deductor.rb +0 -68
  109. data/app/services/spree_cm_commissioner/vote_package/create.rb +0 -145
  110. data/app/services/spree_cm_commissioner/vote_package/update.rb +0 -91
  111. data/app/services/spree_cm_commissioner/vote_processor.rb +0 -144
  112. data/app/services/spree_cm_commissioner/voting_contestants/advancer.rb +0 -334
  113. data/app/services/spree_cm_commissioner/voting_contestants/assigner.rb +0 -37
  114. data/app/services/spree_cm_commissioner/voting_contestants/bulk_updater.rb +0 -106
  115. data/app/services/spree_cm_commissioner/voting_credits/allocate.rb +0 -77
  116. data/app/services/spree_cm_commissioner/voting_credits/claim_free_votes.rb +0 -119
  117. data/app/services/spree_cm_commissioner/voting_credits/credit_calculator.rb +0 -35
  118. data/app/services/spree_cm_commissioner/voting_credits/de_allocate.rb +0 -87
  119. data/app/services/spree_cm_commissioner/voting_leaderboards/calculate_score.rb +0 -74
  120. data/app/services/spree_cm_commissioner/voting_sessions/finalize.rb +0 -96
  121. data/db/migrate/20260309230148_create_cm_show_people.rb +0 -14
  122. data/db/migrate/20260309230149_create_cm_show_people_assignments.rb +0 -16
  123. data/db/migrate/20260310082711_create_cm_show_contestants.rb +0 -28
  124. data/db/migrate/20260310082720_create_cm_voting_sessions.rb +0 -21
  125. data/db/migrate/20260310082721_create_cm_voting_contestants.rb +0 -23
  126. data/db/migrate/20260310082734_add_voting_fields_to_spree_taxons.rb +0 -9
  127. data/db/migrate/20260310082735_add_type_to_spree_products.rb +0 -6
  128. data/db/migrate/20260310082749_create_cm_voting_credits.rb +0 -27
  129. data/db/migrate/20260326080200_create_cm_voting_credit_transactions.rb +0 -27
  130. data/db/migrate/20260330160000_create_cm_votes.rb +0 -25
  131. data/db/migrate/20260401072500_add_advanced_from_to_cm_voting_contestants.rb +0 -7
  132. data/db/migrate/20260402000001_add_voting_credit_scope_to_spree_taxons.rb +0 -6
  133. data/db/migrate/20260402000002_rename_scopeable_to_votable_in_cm_voting_credits.rb +0 -12
  134. data/db/migrate/20260403070000_add_name_to_cm_voting_sessions.rb +0 -5
  135. data/db/migrate/20260406000001_add_vendor_id_to_voting_tables.rb +0 -6
  136. data/db/migrate/20260406000001_rename_votes_remaining_to_amount_in_cm_voting_credits.rb +0 -11
  137. data/db/migrate/20260408085255_add_show_id_and_vendor_id_to_cm_voting_sessions.rb +0 -9
  138. data/db/migrate/20260420000001_rename_type_to_credit_type_in_cm_voting_credits.rb +0 -25
  139. data/db/migrate/20260422000001_create_cm_vote_fraud_events.rb +0 -23
  140. data/db/migrate/20260423000001_add_preview_to_taxons_products_and_sections.rb +0 -11
  141. data/db/migrate/20260423000002_create_preview_roles.rb +0 -24
  142. data/db/migrate/20260515120000_add_public_metadata_to_cm_voting_sessions.rb +0 -5
  143. data/db/migrate/20260518090920_add_unique_voter_count_to_voting_contestants.rb +0 -5
  144. data/db/migrate/20260518094322_create_cm_voting_session_stats.rb +0 -17
  145. data/db/migrate/20260520000001_add_scoring_model_to_cm_voting_sessions.rb +0 -5
  146. data/db/migrate/20260520000001_optimize_cm_votes_indexes.rb +0 -22
  147. data/db/migrate/20260525042257_add_vote_number_to_cm_voting_contestants.rb +0 -18
  148. data/db/migrate/20260527035430_add_confirmed_rank_to_cm_voting_contestants.rb +0 -5
  149. data/db/migrate/20260527062005_add_eliminated_at_to_cm_show_contestants.rb +0 -5
  150. data/db/migrate/20260529000001_add_session_type_to_cm_voting_sessions.rb +0 -6
  151. data/db/migrate/20260601000000_add_combining_parent_to_cm_voting_sessions.rb +0 -9
  152. data/docs/sql/jsonb_query_guide.md +0 -57
  153. data/lib/spree_cm_commissioner/test_helper/factories/show_episode_factory.rb +0 -12
  154. data/lib/spree_cm_commissioner/test_helper/factories/show_factory.rb +0 -120
  155. data/lib/spree_cm_commissioner/test_helper/factories/vote_credit_factory.rb +0 -37
  156. data/lib/spree_cm_commissioner/test_helper/factories/vote_factory.rb +0 -28
  157. data/lib/spree_cm_commissioner/test_helper/factories/voting_credit_transaction_factory.rb +0 -11
  158. data/lib/spree_cm_commissioner/test_helper/factories/voting_session_factory.rb +0 -11
@@ -47,10 +47,6 @@ module Spree
47
47
  available_on
48
48
  hide_video_banner
49
49
  vendor_id
50
- type
51
- voting_config
52
- fraud_config
53
- preview
54
50
  ]
55
51
 
56
52
  @@store_attributes += [
@@ -107,9 +103,5 @@ module Spree
107
103
  route_stops
108
104
  terms_and_conditions
109
105
  ]
110
-
111
- @@product_attributes += %i[
112
- preview
113
- ]
114
106
  end
115
107
  end
@@ -215,8 +215,6 @@ en:
215
215
  riel: "៛"
216
216
 
217
217
  spree:
218
- voting_contestant_advancer:
219
- reversion_error: "Cannot eliminate here yet. This contestant appears in a later session."
220
218
  is_open_dated: "Is Open Dated Trip?"
221
219
  description: Description
222
220
  registered_by:
@@ -531,10 +529,6 @@ en:
531
529
  attributes:
532
530
  exception_rules:
533
531
  invalid_json: "is not a valid format"
534
- spree_cm_commissioner/show_contestant:
535
- attributes:
536
- video_highlights:
537
- invalid_json: "is not a valid format"
538
532
  spree_cm_commissioner/customer:
539
533
  attributes:
540
534
  base:
@@ -761,14 +755,4 @@ en:
761
755
  token_missing: "Verification token is missing"
762
756
  verification_failed: "Human verification failed"
763
757
  service_unavailable: "Verification service is temporarily unavailable"
764
- voting:
765
- errors:
766
- rate_limit_user: "You're voting too fast. Please wait a moment before voting again."
767
- rate_limit_ip: "Too many votes from your network. Please try again shortly."
768
- device_account_limit: "This device has been used by too many accounts."
769
- vpn_blocked: "Voting is not allowed from VPN or proxy connections."
770
- contestant_vote_cap_exceeded: "You have reached the maximum number of votes allowed for this contestant."
771
- no_winners_confirmed: "No winners confirmed"
772
- all_contestants_must_be_ranked: "All non-eliminated contestants must be ranked"
773
- save_advance_to_session_required: "A target voting session must be selected to advance saved contestants"
774
758
 
@@ -202,8 +202,6 @@ km:
202
202
  riel: "៛"
203
203
 
204
204
  spree:
205
- voting_contestant_advancer:
206
- reversion_error: "មិនអាចដកចេញនៅវគ្គនេះបានទេ។ បេក្ខជននេះមាននៅវគ្គបោះឆ្នោតក្រោយ។"
207
205
  registered_by:
208
206
  system_registered: "ចុះឈ្មោះដោយប្រព័ន្ធ"
209
207
  self_registered: "ចុះឈ្មោះដោយខ្លួនឯង"
@@ -408,10 +406,6 @@ km:
408
406
  attributes:
409
407
  exception_rules:
410
408
  invalid_json: "Format មិនត្រឹមត្រូវ"
411
- spree_cm_commissioner/show_contestant:
412
- attributes:
413
- video_highlights:
414
- invalid_json: "Format មិនត្រឹមត្រូវ"
415
409
  spree_cm_commissioner/tenant:
416
410
  attributes:
417
411
  host:
@@ -605,9 +599,4 @@ km:
605
599
  token_missing: "សញ្ញាណផ្ទៀងផ្ទាត់គឺបាត់"
606
600
  verification_failed: "ការផ្ទៀងផ្ទាត់បានបរាជ័យ"
607
601
  service_unavailable: "សេវាកម្មពេលនេះមិនមានការផ្ទៀងផ្ទាត់"
608
- voting:
609
- errors:
610
- no_winners_confirmed: "មិនមានអ្នកឈ្នះត្រូវបានបញ្ជាក់"
611
- all_contestants_must_be_ranked: "អ្នកចូលរួមទាំងអស់ដែលមិនត្រូវបានលុបចោលត្រូវតែមានចំណាត់ថ្នាក់"
612
- save_advance_to_session_required: "ត្រូវតែជ្រើសរើសសម័យបោះឆ្នោតគោលដៅដើម្បីជំរុញអ្នកចូលរួមដែលបានជ្រើស"
613
602
 
data/config/routes.rb CHANGED
@@ -499,7 +499,6 @@ Spree::Core::Engine.add_routes do
499
499
  resources :vendors
500
500
  resources :products
501
501
  resources :taxons, only: %i[index show], id: /.+/
502
- resources :advertisements, only: [:index]
503
502
 
504
503
  resources :account_checker
505
504
  resource :pin_code_checkers, only: [:update]
@@ -509,7 +508,6 @@ Spree::Core::Engine.add_routes do
509
508
 
510
509
  resources :homepage, only: [] do
511
510
  resources :homepage_sections, only: [:index]
512
- resources :preview_sections, only: %i[index]
513
511
  end
514
512
 
515
513
  resource :account, controller: :account, only: %i[show update]
@@ -588,28 +586,6 @@ Spree::Core::Engine.add_routes do
588
586
  resources :cms_pages, only: %i[index show]
589
587
  resources :waiting_room_sessions, only: :create
590
588
 
591
- resources :shows, only: [:show] do
592
- resources :people, controller: :show_people, only: %i[index] do
593
- resources :assignments, controller: :show_person_assignments, only: %i[index]
594
- end
595
- resources :contestants, controller: :show_contestants, only: %i[show]
596
- resources :elimination_sessions, controller: :show_elimination_sessions, only: %i[index]
597
- resources :free_vote_claims, only: :create
598
- end
599
-
600
- resources :voting_sessions, only: [] do
601
- resources :voting_contestants, only: :index
602
- resources :voting_credits, only: :index
603
- resources :votes, only: %i[create index]
604
- end
605
-
606
- resources :voting_credit_transactions, only: :index
607
- resources :votes, only: :index
608
-
609
- resources :preview_taxons, only: %i[index show], id: /.+/
610
- resources :preview_products, only: %i[index show]
611
- resources :preview_shows, only: %i[show]
612
-
613
589
  resources :order_histories, only: %i[index] do
614
590
  member do
615
591
  patch :archive
@@ -720,7 +696,6 @@ Spree::Core::Engine.add_routes do
720
696
  resources :homepage, only: [] do
721
697
  resources :homepage_sections, only: [:index]
722
698
  resource :homepage_background, controller: :homepage_background, only: [:show]
723
- resources :preview_sections, only: %i[index]
724
699
  end
725
700
  resources :active_homepage_events, only: [:index]
726
701
 
@@ -744,8 +719,6 @@ Spree::Core::Engine.add_routes do
744
719
  resources :inventory_items, only: %i[index]
745
720
  resources :event_matches, only: %i[index]
746
721
  resources :invite_guests, only: %i[show update]
747
- resources :preview_taxons, only: %i[index show], id: /.+/
748
- resources :preview_products, only: %i[index show]
749
722
  namespace :transit do
750
723
  resources :draft_orders, only: %i[create]
751
724
  end
@@ -1,5 +1,5 @@
1
1
  module SpreeCmCommissioner
2
- VERSION = '2.8.2.pre.pre.9'.freeze
2
+ VERSION = '2.8.2'.freeze
3
3
 
4
4
  module_function
5
5
 
@@ -69,22 +69,16 @@ require 'byebug' if Rails.env.development? || Rails.env.test?
69
69
  module SpreeCmCommissioner
70
70
  class << self
71
71
  # Allows overriding the default Redis connection pools with custom ones
72
- attr_writer :inventory_redis_pool, :voting_redis_pool
72
+ attr_writer :inventory_redis_pool
73
73
 
74
74
  # Inventory Redis pool for inventory management
75
75
  def inventory_redis_pool
76
76
  @inventory_redis_pool ||= default_redis_pool
77
77
  end
78
78
 
79
- # Voting Redis pool for voting system counters
80
- def voting_redis_pool
81
- @voting_redis_pool ||= default_redis_pool
82
- end
83
-
84
79
  # Resets all Redis pools, useful for testing or reinitialization
85
80
  def reset_redis_pools
86
81
  @inventory_redis_pool = nil
87
- @voting_redis_pool = nil
88
82
  end
89
83
 
90
84
  private
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
18
18
 
19
19
  s.files = `git ls-files`.split("\n").reject { |f| f.match(/^spec/) && !f.match(%r{^spec/fixtures})}
20
20
 
21
- s.require_paths = ['lib', 'app']
21
+ s.require_path = 'lib'
22
22
  s.requirements << 'none'
23
23
 
24
24
  spree_opts = '>= 4.5.0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_cm_commissioner
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.8.2.pre.pre.9
4
+ version: 2.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - You
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-02 00:00:00.000000000 Z
11
+ date: 2026-05-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: spree
@@ -995,11 +995,7 @@ files:
995
995
  - app/controllers/spree/api/v2/storefront/pin_code_otp_checkers_controller.rb
996
996
  - app/controllers/spree/api/v2/storefront/pin_code_otp_generators_controller.rb
997
997
  - app/controllers/spree/api/v2/storefront/popular_route_places_controller.rb
998
- - app/controllers/spree/api/v2/storefront/preview_products_controller.rb
999
- - app/controllers/spree/api/v2/storefront/preview_sections_controller.rb
1000
- - app/controllers/spree/api/v2/storefront/preview_taxons_controller.rb
1001
998
  - app/controllers/spree/api/v2/storefront/pricing_previews_controller.rb
1002
- - app/controllers/spree/api/v2/storefront/products_controller_decorator.rb
1003
999
  - app/controllers/spree/api/v2/storefront/profile_images_controller.rb
1004
1000
  - app/controllers/spree/api/v2/storefront/provinces_controller.rb
1005
1001
  - app/controllers/spree/api/v2/storefront/qr_urls_controller.rb
@@ -1009,7 +1005,6 @@ files:
1009
1005
  - app/controllers/spree/api/v2/storefront/saved_guests_controller.rb
1010
1006
  - app/controllers/spree/api/v2/storefront/seat_layouts_controller.rb
1011
1007
  - app/controllers/spree/api/v2/storefront/self_check_in_controller.rb
1012
- - app/controllers/spree/api/v2/storefront/taxons_controller_decorator.rb
1013
1008
  - app/controllers/spree/api/v2/storefront/tenants_controller.rb
1014
1009
  - app/controllers/spree/api/v2/storefront/transit/draft_orders_controller.rb
1015
1010
  - app/controllers/spree/api/v2/storefront/trip_places_controller.rb
@@ -1035,7 +1030,6 @@ files:
1035
1030
  - app/controllers/spree/api/v2/tenant/account_controller.rb
1036
1031
  - app/controllers/spree/api/v2/tenant/account_deletions_controller.rb
1037
1032
  - app/controllers/spree/api/v2/tenant/account_recovers_controller.rb
1038
- - app/controllers/spree/api/v2/tenant/advertisements_controller.rb
1039
1033
  - app/controllers/spree/api/v2/tenant/base_controller.rb
1040
1034
  - app/controllers/spree/api/v2/tenant/cart_controller.rb
1041
1035
  - app/controllers/spree/api/v2/tenant/cart_guests_controller.rb
@@ -1045,7 +1039,6 @@ files:
1045
1039
  - app/controllers/spree/api/v2/tenant/cms_pages_controller.rb
1046
1040
  - app/controllers/spree/api/v2/tenant/customer_notifications_controller.rb
1047
1041
  - app/controllers/spree/api/v2/tenant/dynamic_field_options_controller.rb
1048
- - app/controllers/spree/api/v2/tenant/free_vote_claims_controller.rb
1049
1042
  - app/controllers/spree/api/v2/tenant/guests_controller.rb
1050
1043
  - app/controllers/spree/api/v2/tenant/homepage_sections_controller.rb
1051
1044
  - app/controllers/spree/api/v2/tenant/id_cards_controller.rb
@@ -1057,10 +1050,6 @@ files:
1057
1050
  - app/controllers/spree/api/v2/tenant/pin_code_checkers_controller.rb
1058
1051
  - app/controllers/spree/api/v2/tenant/pin_code_generators_controller.rb
1059
1052
  - app/controllers/spree/api/v2/tenant/popular_route_places_controller.rb
1060
- - app/controllers/spree/api/v2/tenant/preview_products_controller.rb
1061
- - app/controllers/spree/api/v2/tenant/preview_sections_controller.rb
1062
- - app/controllers/spree/api/v2/tenant/preview_shows_controller.rb
1063
- - app/controllers/spree/api/v2/tenant/preview_taxons_controller.rb
1064
1053
  - app/controllers/spree/api/v2/tenant/pricing_previews_controller.rb
1065
1054
  - app/controllers/spree/api/v2/tenant/product_dynamic_fields_controller.rb
1066
1055
  - app/controllers/spree/api/v2/tenant/products_controller.rb
@@ -1068,11 +1057,6 @@ files:
1068
1057
  - app/controllers/spree/api/v2/tenant/reset_passwords_controller.rb
1069
1058
  - app/controllers/spree/api/v2/tenant/routes_controller.rb
1070
1059
  - app/controllers/spree/api/v2/tenant/s3_signed_urls_controller.rb
1071
- - app/controllers/spree/api/v2/tenant/show_contestants_controller.rb
1072
- - app/controllers/spree/api/v2/tenant/show_elimination_sessions_controller.rb
1073
- - app/controllers/spree/api/v2/tenant/show_people_controller.rb
1074
- - app/controllers/spree/api/v2/tenant/show_person_assignments_controller.rb
1075
- - app/controllers/spree/api/v2/tenant/shows_controller.rb
1076
1060
  - app/controllers/spree/api/v2/tenant/taxons_controller.rb
1077
1061
  - app/controllers/spree/api/v2/tenant/tickets_controller.rb
1078
1062
  - app/controllers/spree/api/v2/tenant/transit/draft_orders_controller.rb
@@ -1084,10 +1068,6 @@ files:
1084
1068
  - app/controllers/spree/api/v2/tenant/user_device_tokens_controller.rb
1085
1069
  - app/controllers/spree/api/v2/tenant/user_registration_with_pin_codes_controller.rb
1086
1070
  - app/controllers/spree/api/v2/tenant/vendors_controller.rb
1087
- - app/controllers/spree/api/v2/tenant/votes_controller.rb
1088
- - app/controllers/spree/api/v2/tenant/voting_contestants_controller.rb
1089
- - app/controllers/spree/api/v2/tenant/voting_credit_transactions_controller.rb
1090
- - app/controllers/spree/api/v2/tenant/voting_credits_controller.rb
1091
1071
  - app/controllers/spree/api/v2/tenant/waiting_room_sessions_controller.rb
1092
1072
  - app/controllers/spree/api/webhook/base_controller.rb
1093
1073
  - app/controllers/spree/api/webhook/media_convert_queues_controller.rb
@@ -1399,9 +1379,6 @@ files:
1399
1379
  - app/jobs/spree_cm_commissioner/variants_public_metadata_updater_job.rb
1400
1380
  - app/jobs/spree_cm_commissioner/vendor_creation_telegram_alert_sender_job.rb
1401
1381
  - app/jobs/spree_cm_commissioner/vendor_job.rb
1402
- - app/jobs/spree_cm_commissioner/vote_fraud_event_job.rb
1403
- - app/jobs/spree_cm_commissioner/voting_credit_allocation_job.rb
1404
- - app/jobs/spree_cm_commissioner/voting_credit_de_allocation_job.rb
1405
1382
  - app/jobs/spree_cm_commissioner/waiting_guests_caller_job.rb
1406
1383
  - app/jobs/spree_cm_commissioner/waiting_room_latest_system_metadata_puller_job.rb
1407
1384
  - app/jobs/spree_cm_commissioner/waiting_room_session_firebase_logger_job.rb
@@ -1545,7 +1522,6 @@ files:
1545
1522
  - app/models/spree_cm_commissioner/maintenance_task.rb
1546
1523
  - app/models/spree_cm_commissioner/maintenance_tasks/cache_invalidation.rb
1547
1524
  - app/models/spree_cm_commissioner/maintenance_tasks/event.rb
1548
- - app/models/spree_cm_commissioner/maintenance_tasks/voting_session.rb
1549
1525
  - app/models/spree_cm_commissioner/menu_decorator.rb
1550
1526
  - app/models/spree_cm_commissioner/menu_item_decorator.rb
1551
1527
  - app/models/spree_cm_commissioner/notification.rb
@@ -1574,7 +1550,6 @@ files:
1574
1550
  - app/models/spree_cm_commissioner/pin_code_telegram.rb
1575
1551
  - app/models/spree_cm_commissioner/pin_code_update_user_login.rb
1576
1552
  - app/models/spree_cm_commissioner/place.rb
1577
- - app/models/spree_cm_commissioner/preview_role.rb
1578
1553
  - app/models/spree_cm_commissioner/price_decorator.rb
1579
1554
  - app/models/spree_cm_commissioner/price_list.rb
1580
1555
  - app/models/spree_cm_commissioner/pricing_action.rb
@@ -1621,7 +1596,6 @@ files:
1621
1596
  - app/models/spree_cm_commissioner/reserved_block.rb
1622
1597
  - app/models/spree_cm_commissioner/role_decorator.rb
1623
1598
  - app/models/spree_cm_commissioner/role_permission.rb
1624
- - app/models/spree_cm_commissioner/role_user_decorator.rb
1625
1599
  - app/models/spree_cm_commissioner/route.rb
1626
1600
  - app/models/spree_cm_commissioner/route_metric.rb
1627
1601
  - app/models/spree_cm_commissioner/route_photo.rb
@@ -1632,14 +1606,6 @@ files:
1632
1606
  - app/models/spree_cm_commissioner/seat_layout.rb
1633
1607
  - app/models/spree_cm_commissioner/seat_section.rb
1634
1608
  - app/models/spree_cm_commissioner/service_calendar.rb
1635
- - app/models/spree_cm_commissioner/show.rb
1636
- - app/models/spree_cm_commissioner/show_contestant.rb
1637
- - app/models/spree_cm_commissioner/show_contestant_image.rb
1638
- - app/models/spree_cm_commissioner/show_contestant_video.rb
1639
- - app/models/spree_cm_commissioner/show_episode.rb
1640
- - app/models/spree_cm_commissioner/show_person.rb
1641
- - app/models/spree_cm_commissioner/show_person_assignment.rb
1642
- - app/models/spree_cm_commissioner/show_person_image.rb
1643
1609
  - app/models/spree_cm_commissioner/sms_log.rb
1644
1610
  - app/models/spree_cm_commissioner/state_change_decorator.rb
1645
1611
  - app/models/spree_cm_commissioner/state_decorator.rb
@@ -1698,13 +1664,6 @@ files:
1698
1664
  - app/models/spree_cm_commissioner/vendor_web_promotion_banner.rb
1699
1665
  - app/models/spree_cm_commissioner/video.rb
1700
1666
  - app/models/spree_cm_commissioner/video_on_demand.rb
1701
- - app/models/spree_cm_commissioner/vote.rb
1702
- - app/models/spree_cm_commissioner/vote_fraud_event.rb
1703
- - app/models/spree_cm_commissioner/voting_contestant.rb
1704
- - app/models/spree_cm_commissioner/voting_credit.rb
1705
- - app/models/spree_cm_commissioner/voting_credit_transaction.rb
1706
- - app/models/spree_cm_commissioner/voting_session.rb
1707
- - app/models/spree_cm_commissioner/voting_session_stat.rb
1708
1667
  - app/models/spree_cm_commissioner/waiting_room_session.rb
1709
1668
  - app/models/spree_cm_commissioner/webhooks.rb
1710
1669
  - app/models/spree_cm_commissioner/webhooks/rules/order_states.rb
@@ -1754,7 +1713,6 @@ files:
1754
1713
  - app/overrides/spree/admin/products/_form/industry_taxons.html.erb.deface
1755
1714
  - app/overrides/spree/admin/products/_form/need_confirmation_checkbox.html.erb.deface
1756
1715
  - app/overrides/spree/admin/products/_form/option_types.html.erb.deface
1757
- - app/overrides/spree/admin/products/_form/preview_checkbox.html.erb.deface
1758
1716
  - app/overrides/spree/admin/products/_form/product_types.html.erb.deface
1759
1717
  - app/overrides/spree/admin/products/_form/purchasable_on_status.html.erb.deface
1760
1718
  - app/overrides/spree/admin/products/_form/replace_vendor_label.html.erb.deface
@@ -1825,7 +1783,6 @@ files:
1825
1783
  - app/overrides/spree/admin/taxons/_form/custom_redirect_url.html.erb.deface
1826
1784
  - app/overrides/spree/admin/taxons/_form/hide_video_banner.html.erb.deface
1827
1785
  - app/overrides/spree/admin/taxons/_form/kind_html.erb.deface
1828
- - app/overrides/spree/admin/taxons/_form/preview_checkbox.html.erb.deface
1829
1786
  - app/overrides/spree/admin/taxons/_form/purchasable_on_status.html.erb.deface
1830
1787
  - app/overrides/spree/admin/taxons/_form/show_badge_status.html.erb.deface
1831
1788
  - app/overrides/spree/admin/taxons/_form/sub_title.html.erb.deface
@@ -1949,7 +1906,6 @@ files:
1949
1906
  - app/serializers/spree/v2/storefront/vendor_serializer_decorator.rb
1950
1907
  - app/serializers/spree/v2/storefront/wished_item_serializer_decorator.rb
1951
1908
  - app/serializers/spree/v2/tenant/address_serializer.rb
1952
- - app/serializers/spree/v2/tenant/advertisement_serializer.rb
1953
1909
  - app/serializers/spree/v2/tenant/asset_serializer.rb
1954
1910
  - app/serializers/spree/v2/tenant/base_serializer.rb
1955
1911
  - app/serializers/spree/v2/tenant/booking_card_class_serializer.rb
@@ -1980,11 +1936,6 @@ files:
1980
1936
  - app/serializers/spree/v2/tenant/reset_password_serializer.rb
1981
1937
  - app/serializers/spree/v2/tenant/role_serializer.rb
1982
1938
  - app/serializers/spree/v2/tenant/s3_signed_url_serializer.rb
1983
- - app/serializers/spree/v2/tenant/show_contestant_serializer.rb
1984
- - app/serializers/spree/v2/tenant/show_episode_serializer.rb
1985
- - app/serializers/spree/v2/tenant/show_person_assignment_serializer.rb
1986
- - app/serializers/spree/v2/tenant/show_person_serializer.rb
1987
- - app/serializers/spree/v2/tenant/show_serializer.rb
1988
1939
  - app/serializers/spree/v2/tenant/stock_item_serializer.rb
1989
1940
  - app/serializers/spree/v2/tenant/stock_location_serializer.rb
1990
1941
  - app/serializers/spree/v2/tenant/taxon_serializer.rb
@@ -2002,12 +1953,6 @@ files:
2002
1953
  - app/serializers/spree/v2/tenant/variant_serializer.rb
2003
1954
  - app/serializers/spree/v2/tenant/vendor_image_serializer.rb
2004
1955
  - app/serializers/spree/v2/tenant/vendor_serializer.rb
2005
- - app/serializers/spree/v2/tenant/video_serializer.rb
2006
- - app/serializers/spree/v2/tenant/vote_serializer.rb
2007
- - app/serializers/spree/v2/tenant/voting_contestant_serializer.rb
2008
- - app/serializers/spree/v2/tenant/voting_credit_serializer.rb
2009
- - app/serializers/spree/v2/tenant/voting_credit_transaction_serializer.rb
2010
- - app/serializers/spree/v2/tenant/voting_session_serializer.rb
2011
1956
  - app/serializers/spree/v2/tenant/waiting_room_session_serializer.rb
2012
1957
  - app/serializers/spree_cm_commissioner/api/v2/platform/digital_serializer_decorator.rb
2013
1958
  - app/serializers/spree_cm_commissioner/api/v2/platform/homepage_section_relatable_options_serializer.rb
@@ -2127,7 +2072,6 @@ files:
2127
2072
  - app/services/spree_cm_commissioner/feed/taxon_product.rb
2128
2073
  - app/services/spree_cm_commissioner/feed/vendor_include_product.rb
2129
2074
  - app/services/spree_cm_commissioner/feed/vendor_product.rb
2130
- - app/services/spree_cm_commissioner/fraud_check.rb
2131
2075
  - app/services/spree_cm_commissioner/google_wallets/base_event_ticket_class.rb
2132
2076
  - app/services/spree_cm_commissioner/google_wallets/base_generic_class.rb
2133
2077
  - app/services/spree_cm_commissioner/google_wallets/base_generic_object_builder.rb
@@ -2236,7 +2180,6 @@ files:
2236
2180
  - app/services/spree_cm_commissioner/seats/release_expired_blocks.rb
2237
2181
  - app/services/spree_cm_commissioner/seeds/roles_decorator.rb
2238
2182
  - app/services/spree_cm_commissioner/seeds/user_usernames.rb
2239
- - app/services/spree_cm_commissioner/show_contestants/normalize_video_highlights.rb
2240
2183
  - app/services/spree_cm_commissioner/signing/sign_data.rb
2241
2184
  - app/services/spree_cm_commissioner/signing/verify_signature.rb
2242
2185
  - app/services/spree_cm_commissioner/sprite_data_loader_service.rb
@@ -2256,7 +2199,6 @@ files:
2256
2199
  - app/services/spree_cm_commissioner/trips/update_single_leg.rb
2257
2200
  - app/services/spree_cm_commissioner/trips/variants/create.rb
2258
2201
  - app/services/spree_cm_commissioner/update_guest_service.rb
2259
- - app/services/spree_cm_commissioner/url_embed/youtube_embed.rb
2260
2202
  - app/services/spree_cm_commissioner/user_authenticator.rb
2261
2203
  - app/services/spree_cm_commissioner/user_counters_service.rb
2262
2204
  - app/services/spree_cm_commissioner/user_roles_assigner.rb
@@ -2270,25 +2212,6 @@ files:
2270
2212
  - app/services/spree_cm_commissioner/vendor_places/bulk_create.rb
2271
2213
  - app/services/spree_cm_commissioner/vendor_places/create_with_google_map_data.rb
2272
2214
  - app/services/spree_cm_commissioner/vendor_places/update.rb
2273
- - app/services/spree_cm_commissioner/vote_counters/audit_counters.rb
2274
- - app/services/spree_cm_commissioner/vote_counters/base.rb
2275
- - app/services/spree_cm_commissioner/vote_counters/increment.rb
2276
- - app/services/spree_cm_commissioner/vote_counters/per_contestant_counter.rb
2277
- - app/services/spree_cm_commissioner/vote_counters/rebuild_from_db.rb
2278
- - app/services/spree_cm_commissioner/vote_counters/snapshot_to_db.rb
2279
- - app/services/spree_cm_commissioner/vote_credit_deductor.rb
2280
- - app/services/spree_cm_commissioner/vote_package/create.rb
2281
- - app/services/spree_cm_commissioner/vote_package/update.rb
2282
- - app/services/spree_cm_commissioner/vote_processor.rb
2283
- - app/services/spree_cm_commissioner/voting_contestants/advancer.rb
2284
- - app/services/spree_cm_commissioner/voting_contestants/assigner.rb
2285
- - app/services/spree_cm_commissioner/voting_contestants/bulk_updater.rb
2286
- - app/services/spree_cm_commissioner/voting_credits/allocate.rb
2287
- - app/services/spree_cm_commissioner/voting_credits/claim_free_votes.rb
2288
- - app/services/spree_cm_commissioner/voting_credits/credit_calculator.rb
2289
- - app/services/spree_cm_commissioner/voting_credits/de_allocate.rb
2290
- - app/services/spree_cm_commissioner/voting_leaderboards/calculate_score.rb
2291
- - app/services/spree_cm_commissioner/voting_sessions/finalize.rb
2292
2215
  - app/services/spree_cm_commissioner/waiting_room_system_metadata_fetcher.rb
2293
2216
  - app/services/spree_cm_commissioner/waiting_room_system_metadata_setter.rb
2294
2217
  - app/services/spree_cm_commissioner/webhooks/subscribers/handle_request_decorator.rb
@@ -3232,53 +3155,22 @@ files:
3232
3155
  - db/migrate/20260226105108_add_trip_type_to_cm_trip.rb
3233
3156
  - db/migrate/20260302062115_add_import_by_id_to_cm_imports.rb
3234
3157
  - db/migrate/20260302062116_add_offset_days_to_cm_trip_stops.rb
3235
- - db/migrate/20260309230148_create_cm_show_people.rb
3236
- - db/migrate/20260309230149_create_cm_show_people_assignments.rb
3237
- - db/migrate/20260310082711_create_cm_show_contestants.rb
3238
- - db/migrate/20260310082720_create_cm_voting_sessions.rb
3239
- - db/migrate/20260310082721_create_cm_voting_contestants.rb
3240
- - db/migrate/20260310082734_add_voting_fields_to_spree_taxons.rb
3241
- - db/migrate/20260310082735_add_type_to_spree_products.rb
3242
- - db/migrate/20260310082749_create_cm_voting_credits.rb
3243
3158
  - db/migrate/20260311105437_add_tenant_to_cm_sms_logs.rb
3244
3159
  - db/migrate/20260318081516_create_cm_agencies.rb
3245
3160
  - db/migrate/20260319090000_add_role_type_to_spree_roles.rb
3246
3161
  - db/migrate/20260320103313_add_index_to_spree_oauth_access_tokens_created_at.rb
3247
3162
  - db/migrate/20260325102409_create_cm_user_agencies.rb
3248
- - db/migrate/20260326080200_create_cm_voting_credit_transactions.rb
3249
3163
  - db/migrate/20260326100000_create_cm_price_lists.rb
3250
3164
  - db/migrate/20260327090000_create_cm_inventory_holds.rb
3251
3165
  - db/migrate/20260327090001_add_quantity_on_hold_to_cm_inventory_items.rb
3252
3166
  - db/migrate/20260330032107_create_cm_distribution_agreements.rb
3253
3167
  - db/migrate/20260330032108_add_vendor_id_to_spree_taxonomies.rb
3254
- - db/migrate/20260330160000_create_cm_votes.rb
3255
- - db/migrate/20260401072500_add_advanced_from_to_cm_voting_contestants.rb
3256
3168
  - db/migrate/20260401080000_create_cm_route_prices.rb
3257
- - db/migrate/20260402000001_add_voting_credit_scope_to_spree_taxons.rb
3258
- - db/migrate/20260402000002_rename_scopeable_to_votable_in_cm_voting_credits.rb
3259
- - db/migrate/20260403070000_add_name_to_cm_voting_sessions.rb
3260
- - db/migrate/20260406000001_add_vendor_id_to_voting_tables.rb
3261
- - db/migrate/20260406000001_rename_votes_remaining_to_amount_in_cm_voting_credits.rb
3262
- - db/migrate/20260408085255_add_show_id_and_vendor_id_to_cm_voting_sessions.rb
3263
3169
  - db/migrate/20260410080000_add_payment_locked_at_to_cm_reserved_blocks.rb
3264
- - db/migrate/20260420000001_rename_type_to_credit_type_in_cm_voting_credits.rb
3265
- - db/migrate/20260422000001_create_cm_vote_fraud_events.rb
3266
- - db/migrate/20260423000001_add_preview_to_taxons_products_and_sections.rb
3267
- - db/migrate/20260423000002_create_preview_roles.rb
3268
3170
  - db/migrate/20260504100000_add_public_and_private_metadata_to_cm_routes.rb
3269
3171
  - db/migrate/20260506090000_remove_default_from_cm_guests_nationality_group.rb
3270
3172
  - db/migrate/20260508103605_add_sms_sender_id_to_cm_tenants.rb
3271
3173
  - db/migrate/20260511000000_add_featured_until_to_cm_trips.rb
3272
- - db/migrate/20260515120000_add_public_metadata_to_cm_voting_sessions.rb
3273
- - db/migrate/20260518090920_add_unique_voter_count_to_voting_contestants.rb
3274
- - db/migrate/20260518094322_create_cm_voting_session_stats.rb
3275
- - db/migrate/20260520000001_add_scoring_model_to_cm_voting_sessions.rb
3276
- - db/migrate/20260520000001_optimize_cm_votes_indexes.rb
3277
- - db/migrate/20260525042257_add_vote_number_to_cm_voting_contestants.rb
3278
- - db/migrate/20260527035430_add_confirmed_rank_to_cm_voting_contestants.rb
3279
- - db/migrate/20260527062005_add_eliminated_at_to_cm_show_contestants.rb
3280
- - db/migrate/20260529000001_add_session_type_to_cm_voting_sessions.rb
3281
- - db/migrate/20260601000000_add_combining_parent_to_cm_voting_sessions.rb
3282
3174
  - docker-compose.yml
3283
3175
  - docs/api/scoped-access-token-endpoints.md
3284
3176
  - docs/option_types/attr_types.md
@@ -3290,7 +3182,6 @@ files:
3290
3182
  - docs/sprite_image/sprite_icon_implementation_prompt.md
3291
3183
  - docs/sprite_image/sprite_import_implementation_guide.md
3292
3184
  - docs/sql/events/active_homepage_events.sql
3293
- - docs/sql/jsonb_query_guide.md
3294
3185
  - docs/sql/subscriptions/remaining_subscriptions.sql
3295
3186
  - docs/tenant/test.com.md
3296
3187
  - docs/webhook/sqs.rb
@@ -3395,8 +3286,6 @@ files:
3395
3286
  - lib/spree_cm_commissioner/test_helper/factories/seat_layout_factory.rb
3396
3287
  - lib/spree_cm_commissioner/test_helper/factories/seat_section_factory.rb
3397
3288
  - lib/spree_cm_commissioner/test_helper/factories/service_calendar_factory.rb
3398
- - lib/spree_cm_commissioner/test_helper/factories/show_episode_factory.rb
3399
- - lib/spree_cm_commissioner/test_helper/factories/show_factory.rb
3400
3289
  - lib/spree_cm_commissioner/test_helper/factories/sms_logs.rb
3401
3290
  - lib/spree_cm_commissioner/test_helper/factories/state_factory.rb
3402
3291
  - lib/spree_cm_commissioner/test_helper/factories/stock_location_factory.rb
@@ -3424,10 +3313,6 @@ files:
3424
3313
  - lib/spree_cm_commissioner/test_helper/factories/vendor_photo_factory.rb
3425
3314
  - lib/spree_cm_commissioner/test_helper/factories/vendor_place_factory.rb
3426
3315
  - lib/spree_cm_commissioner/test_helper/factories/video_on_demand_factory.rb
3427
- - lib/spree_cm_commissioner/test_helper/factories/vote_credit_factory.rb
3428
- - lib/spree_cm_commissioner/test_helper/factories/vote_factory.rb
3429
- - lib/spree_cm_commissioner/test_helper/factories/voting_credit_transaction_factory.rb
3430
- - lib/spree_cm_commissioner/test_helper/factories/voting_session_factory.rb
3431
3316
  - lib/spree_cm_commissioner/test_helper/factories/webhook_subscriber_factory.rb
3432
3317
  - lib/spree_cm_commissioner/test_helper/factories/webhook_subscriber_rule_factory.rb
3433
3318
  - lib/spree_cm_commissioner/transit/leg.rb
@@ -3478,7 +3363,6 @@ post_install_message:
3478
3363
  rdoc_options: []
3479
3364
  require_paths:
3480
3365
  - lib
3481
- - app
3482
3366
  required_ruby_version: !ruby/object:Gem::Requirement
3483
3367
  requirements:
3484
3368
  - - ">="
@@ -3486,9 +3370,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
3486
3370
  version: '2.7'
3487
3371
  required_rubygems_version: !ruby/object:Gem::Requirement
3488
3372
  requirements:
3489
- - - ">"
3373
+ - - ">="
3490
3374
  - !ruby/object:Gem::Version
3491
- version: 1.3.1
3375
+ version: '0'
3492
3376
  requirements:
3493
3377
  - none
3494
3378
  rubygems_version: 3.4.1
@@ -1,48 +0,0 @@
1
- module Spree
2
- module Api
3
- module V2
4
- module Storefront
5
- class PreviewProductsController < ::Spree::Api::V2::Storefront::ProductsController
6
- before_action :require_spree_current_user
7
-
8
- private
9
-
10
- def scope(**args)
11
- taxon_type = model_class.reflect_on_association(:taxons).klass.polymorphic_name
12
-
13
- # IDs of products that have been explicitly assigned their own PreviewRole.
14
- products_with_own_roles = SpreeCmCommissioner::PreviewRole
15
- .where(previewable_type: model_class.polymorphic_name)
16
- .select(:previewable_id)
17
-
18
- # Base: all active preview products from the parent scope.
19
- base = super(**args).rewhere(preview: true).where(status: :active)
20
-
21
- # Path A: product has its own PreviewRole → user must hold that role directly.
22
- # Taxon membership is irrelevant for these products.
23
- via_product_role = base
24
- .where(id: products_with_own_roles)
25
- .where(id: spree_current_user.preview_roles
26
- .where(previewable_type: model_class.polymorphic_name)
27
- .select(:previewable_id)
28
- )
29
-
30
- # Path B: product has no own PreviewRole → inherit access from its taxons.
31
- # Accessible if the user holds a preview role for any taxon the product belongs to.
32
- via_taxon = base
33
- .where.not(id: products_with_own_roles)
34
- .joins(:taxons)
35
- .where(spree_taxons: { id: spree_current_user.preview_roles
36
- .where(previewable_type: taxon_type)
37
- .select(:previewable_id)
38
- }
39
- )
40
-
41
- # via_taxon uses joins(:taxons) which is incompatible with or — wrap as subquery.
42
- via_product_role.or(base.where(id: via_taxon.select(:id)))
43
- end
44
- end
45
- end
46
- end
47
- end
48
- end
@@ -1,27 +0,0 @@
1
- module Spree
2
- module Api
3
- module V2
4
- module Storefront
5
- class PreviewSectionsController < HomepageSectionsController
6
- before_action :require_spree_current_user
7
-
8
- # override
9
- def collection
10
- allowed_ids = spree_current_user.preview_roles.where(previewable_type: Spree::Taxon.polymorphic_name).pluck(:previewable_id)
11
-
12
- section_ids = SpreeCmCommissioner::HomepageSectionRelatable
13
- .where(relatable_type: 'Spree::Taxon', relatable_id: allowed_ids.presence || [])
14
- .select(:homepage_section_id)
15
-
16
- @collection ||= model_class.filter_by_segment(params[:homepage_id] || :general)
17
- .active
18
- .where(tenant_id: nil)
19
- .where(preview: true)
20
- .where(id: section_ids)
21
- .order(position: :asc)
22
- end
23
- end
24
- end
25
- end
26
- end
27
- end
@@ -1,18 +0,0 @@
1
- module Spree
2
- module Api
3
- module V2
4
- module Storefront
5
- class PreviewTaxonsController < ::Spree::Api::V2::Storefront::TaxonsController
6
- before_action :require_spree_current_user
7
-
8
- private
9
-
10
- def scope(**args)
11
- allowed_ids = spree_current_user.preview_roles.where(previewable_type: model_class.polymorphic_name).select(:previewable_id)
12
- super(**args).rewhere(preview: true).where(id: allowed_ids)
13
- end
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,15 +0,0 @@
1
- module Spree
2
- module Api
3
- module V2
4
- module Storefront
5
- module ProductsControllerDecorator
6
- def scope
7
- super.where(preview: false)
8
- end
9
- end
10
- end
11
- end
12
- end
13
- end
14
-
15
- Spree::Api::V2::Storefront::ProductsController.prepend(Spree::Api::V2::Storefront::ProductsControllerDecorator)