spree_admin 5.3.5 → 5.4.0.beta
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.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/app/controllers/concerns/spree/admin/order_concern.rb +1 -1
- data/app/controllers/spree/admin/action_text/video_embeds_controller.rb +1 -1
- data/app/controllers/spree/admin/addresses_controller.rb +1 -1
- data/app/controllers/spree/admin/admin_users_controller.rb +3 -3
- data/app/controllers/spree/admin/api_keys_controller.rb +56 -0
- data/app/controllers/spree/admin/assets_controller.rb +2 -2
- data/app/controllers/spree/admin/base_controller.rb +4 -4
- data/app/controllers/spree/admin/classifications_controller.rb +5 -4
- data/app/controllers/spree/admin/coupon_codes_controller.rb +1 -1
- data/app/controllers/spree/admin/customer_group_users_controller.rb +3 -2
- data/app/controllers/spree/admin/dashboard_controller.rb +2 -1
- data/app/controllers/spree/admin/digital_assets_controller.rb +1 -1
- data/app/controllers/spree/admin/exports_controller.rb +1 -2
- data/app/controllers/spree/admin/gift_cards_controller.rb +5 -5
- data/app/controllers/spree/admin/import_mappings_controller.rb +1 -1
- data/app/controllers/spree/admin/import_rows_controller.rb +1 -1
- data/app/controllers/spree/admin/integrations_controller.rb +1 -1
- data/app/controllers/spree/admin/invitations_controller.rb +6 -5
- data/app/controllers/spree/admin/line_items_controller.rb +1 -1
- data/app/controllers/spree/admin/markets_controller.rb +28 -0
- data/app/controllers/spree/admin/option_values_controller.rb +1 -1
- data/app/controllers/spree/admin/orders/adjustments_controller.rb +4 -4
- data/app/controllers/spree/admin/orders/billing_address_controller.rb +4 -4
- data/app/controllers/spree/admin/orders/customer_returns_controller.rb +1 -1
- data/app/controllers/spree/admin/orders/shipping_address_controller.rb +3 -3
- data/app/controllers/spree/admin/orders/user_controller.rb +4 -4
- data/app/controllers/spree/admin/orders_controller.rb +8 -4
- data/app/controllers/spree/admin/payments_controller.rb +3 -3
- data/app/controllers/spree/admin/price_list_products_controller.rb +1 -1
- data/app/controllers/spree/admin/price_rules_controller.rb +1 -1
- data/app/controllers/spree/admin/products_controller.rb +24 -15
- data/app/controllers/spree/admin/profile_controller.rb +1 -1
- data/app/controllers/spree/admin/promotion_actions_controller.rb +1 -1
- data/app/controllers/spree/admin/promotion_rules_controller.rb +1 -1
- data/app/controllers/spree/admin/promotions_controller.rb +1 -1
- data/app/controllers/spree/admin/refunds_controller.rb +1 -1
- data/app/controllers/spree/admin/reimbursements_controller.rb +2 -2
- data/app/controllers/spree/admin/resource_controller.rb +30 -11
- data/app/controllers/spree/admin/shipments_controller.rb +3 -3
- data/app/controllers/spree/admin/shipping_methods_controller.rb +1 -1
- data/app/controllers/spree/admin/store_credits_controller.rb +5 -5
- data/app/controllers/spree/admin/stores_controller.rb +1 -32
- data/app/controllers/spree/admin/taxons_controller.rb +3 -3
- data/app/controllers/spree/admin/translations_controller.rb +1 -0
- data/app/controllers/spree/admin/users_controller.rb +2 -2
- data/app/helpers/spree/admin/api_keys_helper.rb +32 -0
- data/app/helpers/spree/admin/base_helper.rb +6 -1
- data/app/helpers/spree/admin/json_preview_helper.rb +29 -25
- data/app/helpers/spree/admin/orders_filters_helper.rb +1 -1
- data/app/helpers/spree/admin/sortable_tree_helper.rb +1 -1
- data/app/helpers/spree/admin/stores_helper.rb +0 -4
- data/app/javascript/spree/admin/controllers/autocomplete_select_controller.js +5 -1
- data/app/javascript/spree/admin/controllers/search_clear_controller.js +1 -1
- data/app/javascript/spree/admin/controllers/select_controller.js +4 -0
- data/app/javascript/spree/admin/controllers/variants_form_controller.js +4 -3
- data/app/views/spree/admin/api_keys/_details.html.erb +51 -0
- data/app/views/spree/admin/api_keys/_form.html.erb +26 -0
- data/app/views/spree/admin/api_keys/_token_card.html.erb +28 -0
- data/app/views/spree/admin/api_keys/_usage_info.html.erb +16 -0
- data/app/views/spree/admin/api_keys/index.html.erb +9 -0
- data/app/views/spree/admin/api_keys/show.html.erb +26 -0
- data/app/views/spree/admin/classifications/_classification.html.erb +2 -2
- data/app/views/spree/admin/classifications/index.html.erb +1 -1
- data/app/views/spree/admin/classifications/new.html.erb +1 -1
- data/app/views/spree/admin/exports/create.turbo_stream.erb +1 -1
- data/app/views/spree/admin/exports/new.html.erb +3 -3
- data/app/views/spree/admin/json_previews/show.html.erb +6 -6
- data/app/views/spree/admin/markets/_form.html.erb +28 -0
- data/app/views/spree/admin/markets/edit.html.erb +1 -0
- data/app/views/spree/admin/markets/index.html.erb +9 -0
- data/app/views/spree/admin/markets/new.html.erb +1 -0
- data/app/views/spree/admin/orders/billing_address/_form.html.erb +2 -2
- data/app/views/spree/admin/orders/shipping_address/_form.html.erb +2 -2
- data/app/views/spree/admin/payment_methods/_form.html.erb +0 -12
- data/app/views/spree/admin/price_rules/forms/_market_rule.html.erb +7 -0
- data/app/views/spree/admin/products/_form.html.erb +0 -1
- data/app/views/spree/admin/products/form/_variants.html.erb +4 -3
- data/app/views/spree/admin/promotion_rules/forms/_country.html.erb +1 -1
- data/app/views/spree/admin/shared/_content_header.html.erb +1 -1
- data/app/views/spree/admin/shared/sidebar/_store_dropdown.html.erb +0 -33
- data/app/views/spree/admin/shared/sidebar/_store_nav.html.erb +2 -2
- data/app/views/spree/admin/shared/sortable_tree/_taxonomy.html.erb +2 -2
- data/app/views/spree/admin/stores/form/_basic.html.erb +10 -7
- data/app/views/spree/admin/stores/form/_checkout.html.erb +5 -8
- data/app/views/spree/admin/tables/columns/_api_key_status.html.erb +2 -0
- data/app/views/spree/admin/tables/columns/_api_key_type.html.erb +2 -0
- data/app/views/spree/admin/taxonomies/show.html.erb +1 -1
- data/app/views/spree/admin/taxons/_form.html.erb +2 -2
- data/app/views/spree/admin/taxons/edit.html.erb +1 -2
- data/app/views/spree/admin/taxons/update.turbo_stream.erb +1 -1
- data/app/views/spree/admin/users/_billing.html.erb +2 -2
- data/app/views/spree/admin/users/_shipping.html.erb +1 -1
- data/app/views/spree/admin/variants/_variant.html.erb +1 -1
- data/config/brakeman.ignore +28 -0
- data/config/initializers/spree_admin_navigation.rb +16 -16
- data/config/initializers/spree_admin_tables.rb +94 -0
- data/config/locales/en.yml +31 -0
- data/config/routes.rb +6 -6
- data/lib/spree/admin/engine.rb +1 -0
- data/lib/spree/admin/tailwind_helper.rb +11 -1
- data/lib/spree/admin/testing_support/tom_select.rb +1 -1
- metadata +30 -27
- data/LICENSE.md +0 -13
- data/app/controllers/spree/admin/custom_domains_controller.rb +0 -21
- data/app/controllers/spree/admin/oauth_applications_controller.rb +0 -23
- data/app/views/spree/admin/custom_domains/_custom_domain.html.erb +0 -11
- data/app/views/spree/admin/custom_domains/_custom_domains.html.erb +0 -19
- data/app/views/spree/admin/custom_domains/_form.html.erb +0 -7
- data/app/views/spree/admin/custom_domains/index.html.erb +0 -65
- data/app/views/spree/admin/oauth_applications/_form.html.erb +0 -6
- data/app/views/spree/admin/oauth_applications/_table_header.html.erb +0 -7
- data/app/views/spree/admin/oauth_applications/_table_row.html.erb +0 -34
- data/app/views/spree/admin/oauth_applications/create.turbo_stream.erb +0 -31
- data/app/views/spree/admin/oauth_applications/edit.html.erb +0 -1
- data/app/views/spree/admin/oauth_applications/index.html.erb +0 -21
- data/app/views/spree/admin/oauth_applications/new.html.erb +0 -1
- data/app/views/spree/admin/products/form/_stores.html.erb +0 -27
- data/app/views/spree/admin/stores/new.html.erb +0 -128
- data/app/views/spree/admin/stores/new.turbo_stream.erb +0 -1
- /data/app/views/spree/admin/{custom_domains → api_keys}/edit.html.erb +0 -0
- /data/app/views/spree/admin/{custom_domains → api_keys}/new.html.erb +0 -0
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
<tr id="<%= spree_dom_id custom_domain %>">
|
|
2
|
-
<td><%= custom_domain.url %></td>
|
|
3
|
-
<td>
|
|
4
|
-
<%= active_badge(custom_domain.active?) %>
|
|
5
|
-
</td>
|
|
6
|
-
|
|
7
|
-
<td><%= active_badge(custom_domain.default?) %></td>
|
|
8
|
-
<td class="actions">
|
|
9
|
-
<%= link_to_edit(custom_domain, no_text: true, url: spree.edit_admin_custom_domain_path(custom_domain), data: { turbo: false }) %>
|
|
10
|
-
</td>
|
|
11
|
-
</tr>
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<% if current_store.custom_domains.any? %>
|
|
2
|
-
<div class="table-responsive rounded-lg mt-4 border">
|
|
3
|
-
<table class="table">
|
|
4
|
-
<thead>
|
|
5
|
-
<tr>
|
|
6
|
-
<th scope="col"><%= sort_link @search, :name, Spree.t(:name) %></th>
|
|
7
|
-
<th scope="col"><%= Spree.t(:active) %>?</th>
|
|
8
|
-
<th scope="col"><%= Spree.t(:default) %>?</th>
|
|
9
|
-
<th scope="col"></th>
|
|
10
|
-
</tr>
|
|
11
|
-
</thead>
|
|
12
|
-
<tbody>
|
|
13
|
-
<%= render collection: current_store.custom_domains, partial: 'spree/admin/custom_domains/custom_domain', cached: spree_base_cache_scope %>
|
|
14
|
-
</tbody>
|
|
15
|
-
</table>
|
|
16
|
-
</div>
|
|
17
|
-
<% else %>
|
|
18
|
-
<%= render 'spree/admin/shared/no_resource_found' %>
|
|
19
|
-
<% end %>
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
<div class="card mb-6">
|
|
2
|
-
<div class="card-body">
|
|
3
|
-
<%= f.spree_text_field :url, label: Spree.t(:domain), prepend: 'https://', autofocus: f.object.new_record?, required: true %>
|
|
4
|
-
|
|
5
|
-
<%= f.spree_check_box :default, help: 'We will use this domain in emails to customers.' %>
|
|
6
|
-
</div>
|
|
7
|
-
</div>
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
<%= content_for(:page_title) do %>
|
|
2
|
-
<%= Spree.t(:domains) %>
|
|
3
|
-
<% end %>
|
|
4
|
-
|
|
5
|
-
<% content_for :page_actions do %>
|
|
6
|
-
<%= render_admin_partials(:custom_domains_actions_partials) %>
|
|
7
|
-
<% end %>
|
|
8
|
-
|
|
9
|
-
<%= render_admin_partials(:custom_domains_header_partials) %>
|
|
10
|
-
|
|
11
|
-
<div class="card-lg p-6">
|
|
12
|
-
<h5 class="mb-2">Internal URL</h5>
|
|
13
|
-
<div class="grid grid-cols-12 gap-6 mb-6">
|
|
14
|
-
<div class="col-span-12 lg:col-span-4">
|
|
15
|
-
<p class="text-gray-600">
|
|
16
|
-
This is your internal Admin URL.
|
|
17
|
-
</p>
|
|
18
|
-
</div>
|
|
19
|
-
<div class="col-span-12 lg:col-span-7 lg:col-start-6">
|
|
20
|
-
<%= form_for current_store, url: spree.admin_store_path, data: { turbo: false, controller: 'enable-button', 'enable-button-disable-when-not-changed-value': true } do |f| %>
|
|
21
|
-
<% if Spree.root_domain.present? %>
|
|
22
|
-
<div class="flex items-center gap-6">
|
|
23
|
-
<div class="input-group pr-2 grow <% if current_store.custom_domains.any? %>disabled<% end %>">
|
|
24
|
-
<span class="text-gray-400 pl-3 pr-0">https://</span>
|
|
25
|
-
<%= f.text_field :code, class: 'border-0 focus:ring-0 focus:outline-none grow rounded-lg text-base pl-0', data: { enable_button_target: 'input' }, required: true, disabled: current_store.custom_domains.any? %>
|
|
26
|
-
<span>.<%= Spree.root_domain %></span>
|
|
27
|
-
|
|
28
|
-
<%= clipboard_component(current_store.formatted_url) %>
|
|
29
|
-
</div>
|
|
30
|
-
<% unless current_store.custom_domains.any? %>
|
|
31
|
-
<%= turbo_save_button_tag %>
|
|
32
|
-
<% end %>
|
|
33
|
-
</div>
|
|
34
|
-
<% else %>
|
|
35
|
-
<div class="flex items-center gap-6">
|
|
36
|
-
<div class="input-group pr-2 grow">
|
|
37
|
-
<span class="text-gray-400 pl-3 pr-0">https://</span>
|
|
38
|
-
<%= f.text_field :url, class: 'border-0 focus:ring-0 focus:outline-none grow rounded-lg text-base pl-0', required: true, data: { enable_button_target: 'input' } %>
|
|
39
|
-
<%= clipboard_component(current_store.formatted_url) %>
|
|
40
|
-
</div>
|
|
41
|
-
<%= turbo_save_button_tag %>
|
|
42
|
-
</div>
|
|
43
|
-
<% end %>
|
|
44
|
-
<% end %>
|
|
45
|
-
</div>
|
|
46
|
-
</div>
|
|
47
|
-
<hr class="my-12" />
|
|
48
|
-
<h5 class="mb-2"><%= Spree.t(:custom_domains) %></h5>
|
|
49
|
-
<div class="grid grid-cols-12 gap-6">
|
|
50
|
-
<div class="col-span-12 lg:col-span-4">
|
|
51
|
-
<p class="text-gray-600">
|
|
52
|
-
Connect your domain or subdomain to your storefront.
|
|
53
|
-
</p>
|
|
54
|
-
</div>
|
|
55
|
-
<div class="col-span-12 lg:col-span-7 lg:col-start-6">
|
|
56
|
-
<div class="text-right">
|
|
57
|
-
<%= link_to Spree.t(:new_domain), spree.new_admin_custom_domain_path, class: "btn btn-primary" %>
|
|
58
|
-
</div>
|
|
59
|
-
|
|
60
|
-
<%= turbo_frame_tag 'admin_custom_domains_index' do %>
|
|
61
|
-
<%= render 'custom_domains' %>
|
|
62
|
-
<% end %>
|
|
63
|
-
</div>
|
|
64
|
-
</div>
|
|
65
|
-
</div>
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
<div class="card mb-6">
|
|
2
|
-
<div class="card-body">
|
|
3
|
-
<%= f.spree_text_field :name, required: true, autofocus: f.object.new_record? %>
|
|
4
|
-
<%= f.spree_select :scopes, [['Read Only', 'admin read'], ['Read & Write', 'admin write']], { selected: @oauth_application.scopes.to_s }, { required: true } %>
|
|
5
|
-
</div>
|
|
6
|
-
</div>
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
<tr>
|
|
2
|
-
<th scope="col"><%= sort_link @search, :name, Spree.t(:name) %></th>
|
|
3
|
-
<th scope="col"><%= Spree.t('admin.oauth_applications.client_id') %></th>
|
|
4
|
-
<th scope="col"><%= Spree.t('admin.oauth_applications.scopes') %></th>
|
|
5
|
-
<th scope="col"><%= Spree.t('admin.oauth_applications.last_used') %></th>
|
|
6
|
-
<th scope="col"></th>
|
|
7
|
-
</tr>
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
<tr id="<%= spree_dom_id oauth_application %>">
|
|
2
|
-
<td class="w-20"><code><%= oauth_application.name %></code></td>
|
|
3
|
-
<td class="w-40">
|
|
4
|
-
<div class="flex gap-2 items-center" data-controller="password-toggle">
|
|
5
|
-
<%= button_tag class: 'btn btn-light btn-sm px-1', data: { action: 'click->password-toggle#password' } do %>
|
|
6
|
-
<%= icon 'eye', class: 'mr-0' %>
|
|
7
|
-
<% end %>
|
|
8
|
-
<%= password_field_tag :password, oauth_application.uid, class: 'form-input-plaintext', data: { password_toggle_target: 'unhide' }, readonly: true %>
|
|
9
|
-
</div>
|
|
10
|
-
</td>
|
|
11
|
-
<td class="w-15">
|
|
12
|
-
<% if oauth_application.scopes.include?('write') %>
|
|
13
|
-
<span class="badge badge-warning">
|
|
14
|
-
<%= icon('pencil', class: 'mr-1') %>
|
|
15
|
-
<%= Spree.t('admin.oauth_applications.read_and_write') %>
|
|
16
|
-
</span>
|
|
17
|
-
<% else %>
|
|
18
|
-
<span class="badge badge-light">
|
|
19
|
-
<%= icon('eye', class: 'mr-1') %>
|
|
20
|
-
<%= Spree.t('admin.oauth_applications.read_only') %>
|
|
21
|
-
</span>
|
|
22
|
-
<% end %>
|
|
23
|
-
</td>
|
|
24
|
-
<td class="w-15">
|
|
25
|
-
<% if oauth_application.last_used_at %>
|
|
26
|
-
<%= spree_time(oauth_application.last_used_at) %>
|
|
27
|
-
<% else %>
|
|
28
|
-
<span class="text-gray-600"><%= Spree.t('admin.oauth_applications.never') %></span>
|
|
29
|
-
<% end %>
|
|
30
|
-
</td>
|
|
31
|
-
<td class="actions w-10">
|
|
32
|
-
<%= link_to_edit(oauth_application, no_text: true, data: { turbo_frame: '_top' }) if can? :edit, oauth_application %>
|
|
33
|
-
</td>
|
|
34
|
-
</tr>
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
<%= turbo_stream.replace "new_oauth_application" do %>
|
|
2
|
-
<div class="grid grid-cols-12 gap-6">
|
|
3
|
-
<div class="col-span-12 lg:col-span-6 lg:col-start-4">
|
|
4
|
-
<div class="card">
|
|
5
|
-
<div class="card-body">
|
|
6
|
-
<div class="form-group">
|
|
7
|
-
<%= label_tag :client_id, Spree.t('admin.oauth_applications.client_id') %>
|
|
8
|
-
<div class="flex gap-2 items-center">
|
|
9
|
-
<%= text_field_tag :client_id, @object.uid, class: 'form-input-plaintext bg-gray-25 rounded', readonly: true %>
|
|
10
|
-
<%= clipboard_component(@object.uid) %>
|
|
11
|
-
</div>
|
|
12
|
-
</div>
|
|
13
|
-
|
|
14
|
-
<div class="form-group">
|
|
15
|
-
<%= label_tag :client_secret, Spree.t('admin.oauth_applications.client_secret') %>
|
|
16
|
-
<div class="flex gap-2 items-center">
|
|
17
|
-
<%= text_field_tag :client_secret, @object.plaintext_secret, class: 'form-input-plaintext bg-gray-25 rounded', readonly: true %>
|
|
18
|
-
<%= clipboard_component(@object.plaintext_secret) %>
|
|
19
|
-
</div>
|
|
20
|
-
<div class="alert alert-warning mt-6">
|
|
21
|
-
This is your application's secret token, copy it now and keep it safe. It won't be shown again.
|
|
22
|
-
</div>
|
|
23
|
-
</div>
|
|
24
|
-
</div>
|
|
25
|
-
<div class="card-footer border-t">
|
|
26
|
-
<%= link_to 'Back to list', spree.admin_oauth_applications_url, class: 'btn btn-light' %>
|
|
27
|
-
</div>
|
|
28
|
-
</div>
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
<% end %>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
<%= render 'spree/admin/shared/edit_resource' %>
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
<%= render 'spree/admin/shared/developers_nav' %>
|
|
2
|
-
|
|
3
|
-
<%= content_for(:title, Spree.t('admin.oauth_applications.list')) %>
|
|
4
|
-
|
|
5
|
-
<% content_for :page_actions do %>
|
|
6
|
-
<%= render_admin_partials(:oauth_applications_actions_partials) %>
|
|
7
|
-
<%= link_to_with_icon 'plus', Spree.t('admin.oauth_applications.new'), new_object_url, class: "btn btn-primary" if can? :create, Spree::OauthApplication %>
|
|
8
|
-
<% end %>
|
|
9
|
-
|
|
10
|
-
<%= content_for :page_alerts do %>
|
|
11
|
-
<div class="alert alert-info">
|
|
12
|
-
<p>
|
|
13
|
-
Here you can manage API keys to access the <%= external_link_to 'Platform API', 'https://spreecommerce.org/docs/api-reference/platform/authentication' %>.
|
|
14
|
-
For headless storefronts you don't need an API key, please use the <%= external_link_to 'Storefront API', 'https://spreecommerce.org/docs/api-reference/storefront/authentication' %>.
|
|
15
|
-
</p>
|
|
16
|
-
</div>
|
|
17
|
-
<% end %>
|
|
18
|
-
|
|
19
|
-
<%= render_admin_partials(:oauth_applications_header_partials) %>
|
|
20
|
-
|
|
21
|
-
<%= render 'spree/admin/shared/index_table' %>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
<%= render 'spree/admin/shared/new_resource' %>
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
<div class="card mb-6">
|
|
2
|
-
<div class="card-header">
|
|
3
|
-
<h5 class="card-title">
|
|
4
|
-
<%= Spree.t(:stores) %>
|
|
5
|
-
</h5>
|
|
6
|
-
</div>
|
|
7
|
-
<div class="card-body">
|
|
8
|
-
<div class="form-group">
|
|
9
|
-
<% if can? :modify, Spree::StoreProduct %>
|
|
10
|
-
<p class="form-text"><%= Spree.t('admin.products.stores.choose_stores') %>.</p>
|
|
11
|
-
|
|
12
|
-
<%= f.collection_check_boxes :store_ids, available_stores, :id, :name do |b| %>
|
|
13
|
-
<div class="custom-control form-checkbox mb-1">
|
|
14
|
-
<%= b.check_box(class: 'custom-control-input') %>
|
|
15
|
-
<%= b.label(class: 'custom-control-label') %>
|
|
16
|
-
</div>
|
|
17
|
-
<% end %>
|
|
18
|
-
<% elsif @product.stores.any? %>
|
|
19
|
-
<ul class="text_list">
|
|
20
|
-
<% @product.stores.pluck(:name).each do |store_name| %>
|
|
21
|
-
<li><%= store_name %></li>
|
|
22
|
-
<% end %>
|
|
23
|
-
</ul>
|
|
24
|
-
<% end %>
|
|
25
|
-
</div>
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
<%= form_for @store, url: spree.admin_stores_path, data: { turbo: false, controller: 'store-form enable-button' } do |f| %>
|
|
2
|
-
<div class="container mx-auto px-4 pt-8">
|
|
3
|
-
<h1 class="mb-6"><%= Spree.t(:new_store) %></h1>
|
|
4
|
-
|
|
5
|
-
<%= render partial: 'spree/admin/shared/error_messages', locals: { target: @store } %>
|
|
6
|
-
<div class="grid grid-cols-12 gap-16">
|
|
7
|
-
<div class="col-span-12 lg:col-span-6">
|
|
8
|
-
<div class="form-group">
|
|
9
|
-
<%= f.label :name %>
|
|
10
|
-
<%= f.text_field :name, class: 'form-input',
|
|
11
|
-
placeholder: Spree.t(:store_name),
|
|
12
|
-
required: true,
|
|
13
|
-
autofocus: true,
|
|
14
|
-
data: {
|
|
15
|
-
enable_button_target: 'input',
|
|
16
|
-
} %>
|
|
17
|
-
</div>
|
|
18
|
-
|
|
19
|
-
<div class="form-group">
|
|
20
|
-
<%= f.label :default_country_iso, Spree.t(:country) %>
|
|
21
|
-
<%= f.collection_select :default_country_iso, Spree::Country.order(:name), :iso, :name, { }, { data: { controller: 'autocomplete-select', enable_button_target: 'input', action: 'store-form#updateCurrency' } } %>
|
|
22
|
-
</div>
|
|
23
|
-
|
|
24
|
-
<div class="form-group">
|
|
25
|
-
<%= f.label :default_locale %>
|
|
26
|
-
<%= f.select :default_locale, options_from_collection_for_select(all_locales_options, :last, :first, current_store.default_locale || I18n.locale), { }, { data: { controller: 'autocomplete-select', enable_button_target: 'input', action: 'store-form#updateCurrency' } } %>
|
|
27
|
-
</div>
|
|
28
|
-
|
|
29
|
-
<div class="form-group">
|
|
30
|
-
<%= f.label :default_currency, Spree.t(:currency) %>
|
|
31
|
-
<%= f.select :default_currency, currency_options, {}, { data: { controller: 'autocomplete-select', enable_button_target: 'input', store_form_target: 'currency' } } %>
|
|
32
|
-
</div>
|
|
33
|
-
|
|
34
|
-
<% if available_stores.any? %>
|
|
35
|
-
<div class="form-group">
|
|
36
|
-
<%= f.label :import_products_from_store_id, Spree.t(:import_products_from) %>
|
|
37
|
-
<%= f.select :import_products_from_store_id,
|
|
38
|
-
options_for_select(available_stores.pluck(:name, :id)),
|
|
39
|
-
{ include_blank: Spree.t(:do_not_import) },
|
|
40
|
-
{
|
|
41
|
-
data: { controller: 'autocomplete-select' }
|
|
42
|
-
} %>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
<div class="form-group">
|
|
46
|
-
<%= f.label :import_payment_methods_from_store_id, Spree.t(:import_payment_methods_from) %>
|
|
47
|
-
<%= f.select :import_payment_methods_from_store_id,
|
|
48
|
-
options_for_select(available_stores.pluck(:name, :id)),
|
|
49
|
-
{ include_blank: Spree.t(:do_not_import) },
|
|
50
|
-
{
|
|
51
|
-
data: { controller: 'autocomplete-select' }
|
|
52
|
-
} %>
|
|
53
|
-
</div>
|
|
54
|
-
<% end %>
|
|
55
|
-
</div>
|
|
56
|
-
<div class="col-span-12 lg:col-span-5 lg:col-start-8">
|
|
57
|
-
<h5 class="mb-2">What will be shared with this new store:</h5>
|
|
58
|
-
<ul class="list-none p-0">
|
|
59
|
-
<li>
|
|
60
|
-
<%= icon('check', class: 'text-green-700') %>
|
|
61
|
-
<%= Spree.t(:products) %>, <%= Spree.t(:stock_locations) %> & <%= Spree.t(:inventory) %><br />
|
|
62
|
-
<em class="ml-5 text-gray-600 text-sm">you can select which ones will be available for this store</em>
|
|
63
|
-
</li>
|
|
64
|
-
<li>
|
|
65
|
-
<%= icon('check', class: 'text-green-700') %>
|
|
66
|
-
<%= Spree.t(:customers) %>
|
|
67
|
-
</li>
|
|
68
|
-
<li>
|
|
69
|
-
<%= icon('check', class: 'text-green-700') %>
|
|
70
|
-
Shipping methods, rates and markets
|
|
71
|
-
</li>
|
|
72
|
-
<li>
|
|
73
|
-
<%= icon('check', class: 'text-green-700') %>
|
|
74
|
-
<%= Spree.t(:payment_methods) %><br />
|
|
75
|
-
<em class="ml-5 text-gray-600 text-sm">you can select which ones will be available for this store</em>
|
|
76
|
-
</li>
|
|
77
|
-
<li>
|
|
78
|
-
<%= icon('check', class: 'text-green-700') %>
|
|
79
|
-
Admin user privileges
|
|
80
|
-
</li>
|
|
81
|
-
</ul>
|
|
82
|
-
|
|
83
|
-
<h5 class="mt-6 mb-2">What will not be shared with this new store:</h5>
|
|
84
|
-
<ul class="list-none p-0">
|
|
85
|
-
<li>
|
|
86
|
-
<%= icon('x', class: 'text-danger') %>
|
|
87
|
-
<%= Spree.t(:orders) %>
|
|
88
|
-
</li>
|
|
89
|
-
<li>
|
|
90
|
-
<%= icon('x', class: 'text-danger') %>
|
|
91
|
-
<%= Spree.t(:shipments) %>
|
|
92
|
-
</li>
|
|
93
|
-
<li>
|
|
94
|
-
<%= icon('x', class: 'text-danger') %>
|
|
95
|
-
<%= Spree.t(:payments) %>
|
|
96
|
-
</li>
|
|
97
|
-
<li>
|
|
98
|
-
<%= icon('x', class: 'text-danger') %>
|
|
99
|
-
<%= Spree.t(:refunds) %>
|
|
100
|
-
</li>
|
|
101
|
-
<li>
|
|
102
|
-
<%= icon('x', class: 'text-danger') %>
|
|
103
|
-
<%= Spree.t(:store_credits) %>
|
|
104
|
-
</li>
|
|
105
|
-
<li>
|
|
106
|
-
<%= icon('x', class: 'text-danger') %>
|
|
107
|
-
<%= Spree.t(:gift_cards) %>
|
|
108
|
-
</li>
|
|
109
|
-
<li>
|
|
110
|
-
<%= icon('x', class: 'text-danger') %>
|
|
111
|
-
<%= Spree.t(:blogs_posts) %>
|
|
112
|
-
</li>
|
|
113
|
-
<li>
|
|
114
|
-
<%= icon('x', class: 'text-danger') %>
|
|
115
|
-
<%= Spree.t(:themes) %> & <%= Spree.t(:pages) %>
|
|
116
|
-
</li>
|
|
117
|
-
<li>
|
|
118
|
-
<%= icon('x', class: 'text-danger') %>
|
|
119
|
-
<%= Spree.t(:integrations) %> eg. Google Analytics, Meta Pixel, etc.
|
|
120
|
-
</li>
|
|
121
|
-
</ul>
|
|
122
|
-
</div>
|
|
123
|
-
</div>
|
|
124
|
-
</div>
|
|
125
|
-
<footer id="footer" class="fixed bottom-0 left-0 w-full border-t border-gray-200 px-6 py-4 bg-gray-25 flex items-center justify-end gap-4 z-[1000]">
|
|
126
|
-
<%= turbo_save_button_tag Spree.t('actions.create'), data: { admin_target: 'save' } %>
|
|
127
|
-
</footer>
|
|
128
|
-
<% end %>
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
<%= render template: 'spree/admin/stores/new', formats: [:html] %>
|
|
File without changes
|
|
File without changes
|