Advertisement
Guest User

Untitled

a guest
Oct 27th, 2013
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function custom_ajax_order_review_refresh_form_commerce_checkout_form_review_alter(&$form, &$form_state) {
  2. // give the form a custom callback
  3. $form['commerce_payment']['payment_method']['#ajax']['callback'] = "custom_ajax_order_review_refresh_custom_callback";
  4. //refresh the current order
  5. commerce_cart_order_refresh($form_state['order']);
  6. }
  7.  
  8. function custom_ajax_order_review_refresh_custom_callback(&$form, $form_state) {
  9. // set the newly selected payment option to the order
  10. $order_id = $form_state['order']->order_id;
  11. $order = commerce_order_load($order_id);
  12. $order->data['payment_method'] = $form['commerce_payment']['payment_method']['#default_value'];
  13.  
  14. // load the order and directly save it again to store the new payment option
  15. $order_wrapper = entity_metadata_wrapper('commerce_order', $order);
  16. commerce_order_save($order_wrapper->value());
  17.  
  18. // define the ajax commands and refresh the targeted fieldsets
  19. $commands = array();
  20. $commands[] = ajax_command_replace("#payment-details", render($form['commerce_payment']['payment_details']));
  21. $commands[] = ajax_command_replace(".view-commerce-cart-summary", render($form['cart_contents']['cart_contents_view']));
  22. return array('#type' => 'ajax', '#commands' => $commands);
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement