Commit Graph

85 Commits

Author SHA1 Message Date
Jonathan Sadowski e13f763587 a11y: Add aria-disabled to update cart button 2020-06-08 15:05:27 -05:00
Christopher Allford 0d6675b490 Corrected ESLint violations in JS files 2020-05-04 20:49:29 -07:00
Mike Jolley 81ac8664a9 Avoid update cart on non-cart screens 2019-04-12 12:14:54 +01:00
Ron Rennick 5bba703723 update trigger name to `wc_cart_emptied` 2019-01-16 10:36:35 -04:00
Ron Rennick 3fae170c14 notify script plugins that the cart was emptied 2019-01-15 14:44:28 -04:00
Ron Rennick 0456cb7323 update second instance of href reassign in cart.js, props @joshuatf 2018-12-19 11:19:47 -04:00
Ron Rennick dc41135a05 use reload() instead of reassigning href property 2018-12-19 11:16:59 -04:00
Mike Jolley 4df54b4e53 Merge branch 'master' 2018-06-07 11:24:12 +01:00
Mike Jolley 3d8bb09ee8 Check validity before handling submit event in cart 2018-05-08 12:40:13 +01:00
Mike Jolley cd20ba0666 Add notices to wrapper div in cart 2018-04-19 18:27:46 +01:00
Peter Fabian 6d951b0ddd Scroll to notices also for apply coupon. 2018-04-12 13:49:34 +02:00
Peter Fabian 2baa7fbbdc Added scroll to notices to cart page 2018-04-12 13:34:34 +02:00
Mike Jolley 1fc6155167 Fix cart ajax triggers
Closes #18498
2018-01-18 16:31:17 +00:00
claudiulodro 4ef2152881 Hide/set fields depending on whether managing stock 2017-11-15 14:10:06 -08:00
Gabriel Reguly f19023a9e1
Shipping selection for multiple packages
Allow for shipping method selection when using multiple packages.

Previous code selected/posted only the changed method, but multiple packages require all methods.
2017-11-02 14:15:29 -02:00
ragulka d73e7e4f9d Prevent unwanted double cart notices (#16460)
* Don't add shipping zone debug message when doing ajax

Prevent an issue where the "Customer matched zone" debug message is shown twice after first selecting a shipping method and then changing a product's quantity in cart and clicking Update cart.

* Don't pass event object to cart.update_cart

Prevent accidentally preserving cart notices when `wc_update_cart` event is triggered on body. If the event object is passed to update_cart() as the first param, it evaluates to true, forcing existing notices to be preserved.

* Pass custom arguments to cart.update_cart()

Instead of simply not passing the event object, pass any custom arguments, so it's possible to do something like: $( body ).trigger( 'wc_update_cart', true ); to still preserve notices if needed.
2017-08-16 11:34:35 +01:00
Mike Jolley 555f093ac3 Use select2 in cart
Fixes #15985
2017-07-10 13:14:27 +01:00
Claudio Sanches ee87024d82 Merge pull request #15956 from woocommerce/add-cart-readdition-notice
Use ajax when restoring an item in the cart
2017-07-04 16:35:23 -03:00
Caleb Burks 2d52e6e398 Use ajax when restoring an item in the cart 2017-07-04 04:01:59 -05:00
Caleb Burks 342b051731 Only show most recent cart removal notice 2017-07-04 03:33:51 -05:00
Mike Jolley 7f33db5746 Fix and minify 2017-02-21 10:35:11 +00:00
Kathy c30b1c1bb3 Coupon tweaks (#13222)
* pass coupon to applied/removed JS trigger

* add coupon id and coupon object to action hooks in admin metabox
2017-02-17 11:58:15 +00:00
Shiva Poudel 04bfa3c36d Fix - Don't preserve cart notices for quantity update
Closes #12877
2017-01-26 01:05:38 +05:45
Mike Jolley 94c5680d04 Allow update cart to preserve notices and update after coupon 2016-12-15 16:37:58 +00:00
Mike Jolley e1dd355cd9 Cart js class (#12172)
* Add classes and revise JS

* Block correct element in totals

* If no form with class is present, revert to reloading page

* Reload

* Rebase fail
2016-11-11 16:00:32 +00:00
Mike Jolley 11689b244c Remove notices once only
Closes #12182
2016-10-26 17:24:35 +01:00
Kevin Killingsworth 81d186000d Fix cart update field enter on submit for IE
Fix for issue #11811
https://github.com/woothemes/woocommerce/issues/11811

IE handles hitting <ENTER> on an input field differently than
Chrome or Firefox in that it finds the nearest submit button
and fires the event from it instead of the actual text field
from which the user hit <ENTER>.

This commit catches the <ENTER> key event before the submit happens
and forces the cart_submit handling on that event instead.
2016-09-22 16:52:23 -04:00
Mike Jolley 4da955923c [2.6] Handle info notices in cart
Fixes #11808
2016-08-31 18:07:21 +01:00
Mike Jolley 0bfaaa62c4 Don't prevent submission when table is not found
Fixes #11579
2016-08-01 16:19:30 +01:00
James Koster d0865bdcc7 Don't perform cart update on search submit
If you have a search widget on the cart page which is wrapped in a div
(the default wrapper for widgets) the ajax cart would try to update on
search submit. This change ensures the search form is excluded on
`submit_click`.
2016-07-04 11:10:02 +01:00
Mike Jolley f3932e1c9e Removes specificity of shop table rules and triggers different events if on checkout 2016-06-27 11:42:28 +01:00
Mike Jolley 15400fc5f5 Prevent blocking the same element multiple times
Fixes #11242
2016-06-24 12:18:31 +01:00
Kevin Killingsworth 230ba6e5bf Cart.js: Only prevent submit for specific buttons
Fixes #11148

Only prevent default submit actions for our own
"Update Cart" and "Add Coupon" operations.
2016-06-15 14:13:46 -05:00
Kevin Killingsworth 265a4faa10 Cart.js: Use currentTarget for events.
Some themes add internal HTML to links, so this adjusts
to use currentTarget, which should always be the node on which
the event is subscribed instead of the target which triggered
the event.
2016-06-15 12:02:58 -05:00
Mike Jolley f8f065bad9 Adjusted triggers for cart.js
Closes #11119
2016-06-15 15:51:53 +01:00
Mike Jolley 81195e876f Add trigger to update cart and totals area
Closes #11020

Example: jQuery(document).trigger('wc_update_cart');
2016-06-01 12:45:14 +01:00
Brent Shepherd aa2b97cb4c Allow string indexes for shipping packages 2016-05-23 17:34:43 -07:00
Kathy Darling 9926afbebf removed_coupon trigger. follow up to #10863. 2016-05-09 10:39:21 -05:00
Mike Jolley 83844fd55b Added applied_coupon trigger to cart page
#10863
2016-05-06 12:05:59 +01:00
Mike Jolley b39ec6b2d6 Fix undo on storefront
Closes #10816
2016-05-03 17:03:46 +01:00
Kevin Killingsworth 2e6d37c1c3 Fix cart ajax submit buttons for Safari.
Fixes #10813

This adds a "clicked" attribute to clicked form buttons,
which augments Safari specifically since it sets activeElement
to the page body when a button is clicked.
2016-05-02 15:26:14 -05:00
Mike Jolley 9eb32a2bd8 Keeps undo message in view
@coderkevin there was another case where the undo message would be gone
after refresh. This loads the content via ajax still preserving the
message.
2016-04-20 11:21:32 +01:00
Mike Jolley 3a59e3cbad Enable update cart button only when qty's change 2016-04-20 11:10:39 +01:00
Kevin Killingsworth f45a4cd57d Reload cart page upon emptying.
The server shows a different page for the cart
when the cart is completely empty. The Cart AJAX
update subverted this and caused issue #10736 as
a result. Not to mention, the page just didn't look
good or functional with no items left in the cart.

This commit forces a reload any time the cart becomes
empty, which shows the empty page generated from
the server.

Fixes #10736
2016-04-19 23:36:48 -05:00
Kevin Killingsworth 069eca0b32 Fix: Ensure cart gets updated
The cart was not getting updated in all cases
when products were removed or shipping was
updated. This ensures those changes update the
cart as well.

Fixes #10734
2016-04-19 13:00:18 -05:00
Kevin Killingsworth 00c3bf9ce3 Fix: Update message on update cart/shipping
This adds the messages to the ajaz update cart
and shipping operations.
2016-04-08 12:02:45 -05:00
Kevin Killingsworth 3073437ea1 Fix: Make cart ajax selectore more specific
The previous jQuery selector was on div.woocommerce,
which was also selecting other divs on the page.
This is more specific to the cart table on the page.
2016-04-06 12:14:54 -05:00
Kevin Killingsworth 45b2f7eae3 Remove console.log calls
Some left-over console log calls were removed.
2016-02-22 11:12:05 -06:00
Kevin Killingsworth b7f365982e cart objects: refactor into objects
This update actually takes the code and refactors it into
two object handlers, cart and cart_shipping.

Also, more block comments are added to each function.
2016-02-22 10:15:47 -06:00
Kevin Killingsworth 02b7c1edc4 cart objects: Create cart_shipping object.
This commit creates a cart shipping object which handles all shipping
code in this file.
2016-02-19 14:33:28 -06:00