Class: Plugins::Ecommerce::Admin::OrdersController
- Inherits:
-
Plugins::Ecommerce::AdminController
- Object
- Plugins::Ecommerce::AdminController
- Plugins::Ecommerce::Admin::OrdersController
- Defined in:
- app/controllers/plugins/ecommerce/admin/orders_controller.rb
Instance Method Summary collapse
- #destroy ⇒ Object
- #edit ⇒ Object
- #index ⇒ Object
-
#mark_accepted ⇒ Object
accepted order.
- #mark_bank_confirmed ⇒ Object
- #mark_canceled ⇒ Object
-
#mark_shipped ⇒ Object
shipped order.
- #new ⇒ Object
- #resend_email ⇒ Object
- #show ⇒ Object
- #update ⇒ Object
Instance Method Details
#destroy ⇒ Object
36 37 38 39 40 41 42 43 44 45 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 36 def destroy hooks_run('plugin_ecommerce_before_destroy_order', @order) if @order.destroy flash[:notice] = "#{t('plugins.ecommerce.message.order_destroyed', default: 'Order Destroyed')}" else flash[:error] = "#{t('plugins.ecommerce.message.order_no_destroyed', default: 'Occurred some problems destroying the order')}" end hooks_run('plugin_ecommerce_after_destroy_order', @order) redirect_to action: :index end |
#edit ⇒ Object
20 21 22 23 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 20 def edit ("#{t('camaleon_cms.admin.button.edit', default: 'Edit')}") render 'form' end |
#index ⇒ Object
5 6 7 8 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 5 def index @q = current_site.orders.order('received_at desc').ransack(params[:q]) @orders = @q.result.paginate(:page => params[:page], :per_page => current_site.admin_per_page) end |
#mark_accepted ⇒ Object
accepted order
48 49 50 51 52 53 54 55 56 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 48 def mark_accepted r = {order: @order}; hooks_run('plugin_ecommerce_before_accepted_order', r) @order.accepted! commerce_order_send_mail(@order, 'email_order_accepted') = "#{t('plugins.ecommerce.message.order_accepted', default: 'Order Accepted')}" r = {order: @order, message: }; hooks_run('plugin_ecommerce_after_accepted_order', r) flash[:notice] = r[:message] redirect_to action: :index end |
#mark_bank_confirmed ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 58 def mark_bank_confirmed if @order.on_delivery_pending? hooks_run('plugin_ecommerce_before_on_delivery_order', @order) @order.on_delivery_confirmed! commerce_order_send_mail(@order, 'email_order_confirmed_on_delivery') flash[:notice] = "#{t('plugins.ecommerce.message.order_on_delivery_confirmed', default: 'Payment on Delivery Confirmed')}" hooks_run('plugin_ecommerce_after_on_delivery_order', @order) else hooks_run('plugin_ecommerce_before_bank_confirm_order', @order) @order.bank_confirmed! commerce_order_send_mail(@order, 'email_order_confirmed_bank') flash[:notice] = "#{t('plugins.ecommerce.message.order_bank_confirmed', default: 'Pay Bank Confirmed')}" hooks_run('plugin_ecommerce_after_bank_confirm_order', @order) end redirect_to action: :index end |
#mark_canceled ⇒ Object
85 86 87 88 89 90 91 92 93 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 85 def mark_canceled hooks_run('plugin_ecommerce_before_canceled_order', @order) @order.canceled! @order.('description', params[:description]) commerce_order_send_mail(@order, 'email_order_cancelled') flash[:notice] = "#{t('plugins.ecommerce.message.order_canceled', default: 'Order canceled')}" hooks_run('plugin_ecommerce_after_canceled_order', @order) redirect_to action: :index end |
#mark_shipped ⇒ Object
shipped order
76 77 78 79 80 81 82 83 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 76 def mark_shipped hooks_run('plugin_ecommerce_before_shipped_order', @order) @order.shipped!(params[:consignment_number]) commerce_order_send_mail(@order, 'email_order_shipped') flash[:notice] = "#{t('plugins.ecommerce.message.order_shipped', default: 'Order Shipped')}" hooks_run('plugin_ecommerce_after_shipped_order', @order) redirect_to action: :index end |
#new ⇒ Object
15 16 17 18 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 15 def new @order = current_site.orders.new render 'form' end |
#resend_email ⇒ Object
95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 95 def resend_email case @order.status when 'paid', 'bank_pending', 'on_delivery' commerce_order_send_mail(@order) when 'shipped' commerce_order_send_mail(@order, 'email_order_shipped') when 'canceled' commerce_order_send_mail(@order, 'email_order_cancelled') else flash[:error] = "#{t('plugins.ecommerce.message.unknown_status', default: 'Unknown Status')}" redirect_to action: :index return end flash[:notice] = "#{t('plugins.ecommerce.message.order_email_resent', default: 'Order Email Resent')}" redirect_to action: :index end |
#show ⇒ Object
10 11 12 13 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 10 def show @order = @order.decorate ("#{t('plugins.ecommerce.details_order', default: 'Order details')} - #{@order.slug}") end |
#update ⇒ Object
25 26 27 28 29 30 31 32 33 34 |
# File 'app/controllers/plugins/ecommerce/admin/orders_controller.rb', line 25 def update hooks_run('plugin_ecommerce_before_update_order', @order) @order.("billing_address", params[:order][:billing_address]) @order.("shipping_address", params[:order][:shipping_address]) @order.(params[:metas]) @order.update(params.require(:plugins_ecommerce_order).permit(:shipped_at)) hooks_run('plugin_ecommerce_after_destroy_order', @order) flash[:notice] = "#{t('plugins.ecommerce.message.order_updated', default: 'Order Updated')}" redirect_to action: :show, id: params[:id] end |