summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorAlessandro Desantis <desa.alessandro@gmail.com>2020-06-16 16:04:51 +0200
committerAlessandro Desantis <desa.alessandro@gmail.com>2020-06-16 16:07:05 +0200
commitfabde7f1751cddb74ce9e9e51a946fbfe318a272 (patch)
tree0cdda4a58828de2dfa49638571017e3d793e081d /app
parent461f5c034e2585c315bc4ce9a03d8d6cef654ef8 (diff)
Add actions to subscription detail page
Diffstat (limited to 'app')
-rw-r--r--app/controllers/spree/admin/subscriptions_controller.rb6
-rw-r--r--app/views/spree/admin/installments/index.html.erb1
-rw-r--r--app/views/spree/admin/shared/_subscription_actions.html.erb35
-rw-r--r--app/views/spree/admin/subscriptions/edit.html.erb1
-rw-r--r--app/views/spree/admin/subscriptions/index.html.erb8
5 files changed, 44 insertions, 7 deletions
diff --git a/app/controllers/spree/admin/subscriptions_controller.rb b/app/controllers/spree/admin/subscriptions_controller.rb
index 8462ba1..fae79aa 100644
--- a/app/controllers/spree/admin/subscriptions_controller.rb
+++ b/app/controllers/spree/admin/subscriptions_controller.rb
@@ -36,7 +36,7 @@ module Spree
notice = @subscription.errors.full_messages.to_sentence
end
- redirect_to spree.admin_subscriptions_path, notice: notice
+ redirect_back(fallback_location: spree.admin_subscriptions_path, notice: notice)
end
def activate
@@ -48,7 +48,7 @@ module Spree
notice = @subscription.errors.full_messages.to_sentence
end
- redirect_to spree.admin_subscriptions_path, notice: notice
+ redirect_back(fallback_location: spree.admin_subscriptions_path, notice: notice)
end
def skip
@@ -59,7 +59,7 @@ module Spree
date: @subscription.actionable_date
)
- redirect_to spree.admin_subscriptions_path, notice: notice
+ redirect_back(fallback_location: spree.admin_subscriptions_path, notice: notice)
end
private
diff --git a/app/views/spree/admin/installments/index.html.erb b/app/views/spree/admin/installments/index.html.erb
index ed584b0..1e8849b 100644
--- a/app/views/spree/admin/installments/index.html.erb
+++ b/app/views/spree/admin/installments/index.html.erb
@@ -3,6 +3,7 @@
<%= render 'spree/admin/shared/subscription_breadcrumbs', subscription: @subscription %>
<%= render 'spree/admin/shared/subscription_sidebar', subscription: @subscription %>
<%= render 'spree/admin/shared/subscription_tabs', current: :installments %>
+<%= render 'spree/admin/shared/subscription_actions', subscription: @subscription %>
<fieldset class="no-border-bottom">
<legend><%= t('spree.admin.installments.index.title') %></legend>
diff --git a/app/views/spree/admin/shared/_subscription_actions.html.erb b/app/views/spree/admin/shared/_subscription_actions.html.erb
new file mode 100644
index 0000000..9c79258
--- /dev/null
+++ b/app/views/spree/admin/shared/_subscription_actions.html.erb
@@ -0,0 +1,35 @@
+<% content_for :page_actions do %>
+ <% if subscription.state_events.include?(:cancel) %>
+ <%=
+ link_to(
+ t('spree.admin.subscriptions.actions.cancel'),
+ spree.cancel_admin_subscription_path(subscription),
+ method: :delete,
+ data: { confirm: t('spree.admin.subscriptions.actions.cancel_alert') },
+ class: 'btn btn-primary'
+ )
+ %>
+ <% end %>
+
+ <% if subscription.state_events.include?(:activate) %>
+ <%=
+ link_to(
+ t('spree.admin.subscriptions.actions.activate'),
+ spree.activate_admin_subscription_path(subscription),
+ method: :post,
+ class: 'btn btn-primary',
+ )
+ %>
+ <% end %>
+
+ <% if subscription.active? %>
+ <%=
+ link_to(
+ t('spree.admin.subscriptions.actions.skip'),
+ spree.skip_admin_subscription_path(subscription),
+ method: :post,
+ class: 'btn btn-default',
+ )
+ %>
+ <% end %>
+<% end %>
diff --git a/app/views/spree/admin/subscriptions/edit.html.erb b/app/views/spree/admin/subscriptions/edit.html.erb
index 4043fb7..c4d5772 100644
--- a/app/views/spree/admin/subscriptions/edit.html.erb
+++ b/app/views/spree/admin/subscriptions/edit.html.erb
@@ -3,6 +3,7 @@
<%= render 'spree/admin/shared/subscription_breadcrumbs', subscription: @subscription %>
<%= render 'spree/admin/shared/subscription_sidebar', subscription: @subscription %>
<%= render 'spree/admin/shared/subscription_tabs', current: :details %>
+<%= render 'spree/admin/shared/subscription_actions', subscription: @subscription %>
<%= form_for @subscription, url: spree.admin_subscription_path(@subscription) do |f| %>
<%= render "form", f: f %>
diff --git a/app/views/spree/admin/subscriptions/index.html.erb b/app/views/spree/admin/subscriptions/index.html.erb
index aadecfb..7389a10 100644
--- a/app/views/spree/admin/subscriptions/index.html.erb
+++ b/app/views/spree/admin/subscriptions/index.html.erb
@@ -128,11 +128,11 @@
<%=
link_to_with_icon(
:stop,
- t('.cancel'),
+ t('spree.admin.subscriptions.actions.cancel'),
spree.cancel_admin_subscription_path(subscription),
no_text: true,
method: :delete,
- data: { confirm: t('.cancel_alert') }
+ data: { confirm: t('spree.admin.subscriptions.actions.cancel_alert') }
)
%>
<% end %>
@@ -141,7 +141,7 @@
<%=
link_to_with_icon(
:play,
- t('.activate'),
+ t('spree.admin.subscriptions.actions.activate'),
spree.activate_admin_subscription_path(subscription),
no_text: true,
method: :post
@@ -153,7 +153,7 @@
<%=
link_to_with_icon(
:'fast-forward',
- t('.skip'),
+ t('spree.admin.subscriptions.actions.skip'),
spree.skip_admin_subscription_path(subscription),
no_text: true,
method: :post