vedanshujain
72545c44b7
Add support for `_held_for_checkout` records to improve performance.
...
This will also improve transactional stability and avoid race conditions by providing a way to lock usage counts.
2019-12-17 19:13:19 +05:30
Francesco Leanza
59af851069
Merge branch 'master' into fix/25091
2019-12-09 16:46:02 +01:00
Claudio Sanches
d7e2a98aaf
Merge pull request #24828 from woocommerce/fix/24695
...
Adds shared code between Orders and Cart calculation logic.
2019-12-05 12:39:50 -03:00
Claudio Sanches
0686e6f1cd
Merge pull request #25000 from woocommerce/feature/pay-button-support
...
Initial support for "pay button"
2019-12-04 16:02:02 -03:00
Rodrigo Primo
4af9a94129
PHPCS fixes
2019-12-04 15:52:20 -03:00
Claudio Sanches
adbb4fd2d3
Merge pull request #24937 from jenkoian/wc-placeholder-attrs
...
Add support for custom attributes to wc_placeholder_img().
2019-12-04 15:42:41 -03:00
Rodrigo Primo
02ae8d1206
Merge pull request #24292 from woocommerce/fix/24116
...
Prevent PHP notices in WooCommerce widgets using Gutenberg's Legacy Widget Block
2019-12-03 14:25:05 -03:00
vedanshujain
aaa85ac74c
Use standard way to calculate total in `get_subtotal_to_display` for consistency.
...
We were calculating subtotal to display slightly differently then we would have calculated subtotal in the cart. This was affecting subtotal value in invoices and in order confirmation screen.
This patch updates how we calculate subtotal to display such that we calculate in same way.
2019-11-27 04:43:23 +05:30
vedanshujain
1de30e8963
Refactor so that trait don't have class specific functions.
2019-11-26 01:30:45 +05:30
vedanshujain
60cd7b3651
Refactor Order Class to use shared calculation logic.
...
We added a trait to move shared logic betweem Orders and Cart. This commit refactors Order class to use that shared logic.
Also adds a test for a failing case.
2019-11-25 17:53:14 +05:30
vedanshujain
bee7ea4490
Add trait which contains common total calc logic.
...
`WC_Abstract_Order` and `WC_Cart_Totals` have their own logic to calculate totals. This means that we would have to fix in two places. This commit adds a trait which can be used to place shared logic between above two classes.
2019-11-25 17:53:14 +05:30
Francesco Leanza
dd3427958b
Fixed order totals calculation if it contains taxable and non-taxable products and percentage coupons
...
Added PHPUnit tests
2019-11-21 11:28:22 +01:00
Claudio Sanches
d53b73b56c
Added support for "pay button" feature
2019-11-07 17:22:33 -03:00
Ian Jenkins
2340f269cf
Add support for custom attributes to wc_placeholder_img().
...
When displaying a list of images you often want a specific class to be
attached to each image, therefore you pass through a custom class using
the attr parameter. Unfortunately this doesn't get passed through to a
placeholder image should one be needed. This means that, for example, if
you're custom class center an image or something, it won't be honoured
for placeholders, which can lead to some wonky image listings.
You can work around this currently by leverging the
`woocommerce_product_get_image` filter, but it's a bit gnarly as you
need to do some regexing or string splitting or something and checking
class names and what not. This provides a much easier way, by
supporting custom attrs on placeholder images as is the case for non
placehodler images.
2019-10-30 15:08:19 +00:00
Gerhard Potgieter
c01a0916c3
Merge pull request #24559 from itzmekhokan/fix/24458
...
Fix backordered product missing backordered label on frontend
2019-10-02 15:28:26 +02:00
Vedanshu Jain
9641963001
Merge pull request #24740 from woocommerce/feature/24654
...
Make WC_Abstract_Order::recalculate_coupons() public
2019-10-02 15:56:36 +05:30
Vedanshu Jain
2188f9b788
Merge pull request #24341 from woocommerce/fix/24238
...
Check for max discount to be -ve to prevent overwriting fee.
2019-10-02 14:32:15 +05:30
Claudio Sanches
8c88cd9b6f
Make WC_Abstract_Order::recalculate_coupons() public
2019-10-01 17:19:33 -03:00
Rodrigo Primo
4550bb6661
Merge pull request #24544 from woocommerce/fix/checkout-permalink
...
Prefer wc_get_checkout_url() instead of wc_get_page_permalink( 'checkout' )
2019-09-25 20:38:38 -03:00
Ayesh Karunaratne
eec96d367c
Fix a typo in WC Payment Gateway abstract '3rd party gateway size'
2019-09-18 10:22:16 +05:30
vedanshujain
6f2d64dcb4
Check for max discount to be -ve to prevent overwriting fee.
...
When we refund fee and some other line item whose value is more than fee in a single requst, value of line item will overwrite refund fee.
This is because where we check to make sure that we do not discount more than total possible value (to prevent negative total), we do not account for the fact that sometimes the cart could contain refund items. In those cases max_discount * -1 will always be larges then fees total.
This commit adds a check to make sure that max discount * -1 is indeed negative before overwriting fee total.
2019-09-03 20:45:33 +05:30
itzmekhokan
dcf3d71c79
Fixed issue #24458
2019-09-02 12:40:44 +05:30
Claudio Sanches
e814105728
Prefer wc_get_checkout_url() instead of wc_get_page_permalink( 'checkout' )
2019-08-30 13:06:50 -03:00
Claudio Sanches
78c5a37b4b
Prevent PHP notices in WooCommerce widgets using Gutenberg's Legacy Widget Block
2019-08-01 14:43:59 -03:00
Gerhard Potgieter
52f1eb4060
Revert "Prevent negative prices on products"
2019-07-15 08:50:11 +02:00
Claudio Sanches
77191a97f8
Merge pull request #23705 from woocommerce/fix/23696
...
Prevent negative prices on products
2019-07-12 12:56:34 -03:00
Mike Jolley
c928188831
Update from master
2019-07-10 12:57:02 +01:00
Claudio Sanches
01f5a09d27
Merge pull request #23338 from woocommerce/update/23335
...
More useful actions in during CRUD save events
2019-07-08 18:56:14 -03:00
rmalviya
b5447cd060
Filter meta value even if key not found
...
Resolves #24062 .
2019-07-03 22:25:51 +05:30
Claudio Sanches
deec93f8ca
Merge pull request #23769 from mch0lic/master
...
Forward query (GET) parameters when executing a batch REST API request.
2019-06-24 12:39:36 -03:00
Mike Jolley
950f31a9e0
Remove abstract rest class that is in the package
2019-06-21 13:40:10 +01:00
Mike Jolley
7451659b24
Delete REST API abstract classes
2019-06-19 11:49:28 +01:00
Jared Burke
332c94c13a
Fix fatal error when applying a virtual coupon to an order placed by a guest
2019-06-06 15:37:08 -05:00
Ajay Ghaghretiya
c9bcce3a31
#23850 Fixed the coupon usage limit issue when apply coupon from admin panel ( #23851 )
...
* fix the coupon usage limit issue
* fix the if condition for the usage limit
* fixed coding standard
* fix the if conditions for coupon usage limit per user
2019-06-03 10:47:32 -03:00
Gerhard Potgieter
b2ed079520
Manual orders coupon usage limits by email ( #23775 )
...
* Add functionality to wp-admin order to check for coupon usage based on email addresses, similar to how WC_Cart handles this seperately, included unit tests.
* Only do the coupon by email usage check if order is from a guest. Fix issue with unit test.
2019-05-27 11:45:29 -03:00
Claudio Sanches
28d49031d3
Merge pull request #23695 from james-allan/calc-base-zip-city
...
Calculate base store taxes including the store's zip and city
2019-05-22 20:49:57 -03:00
sergey.r
98586f10f4
Catch WC_REST_Exception while calling do_action( "woocommerce_rest_insert_{$this->post_type}_object"
2019-05-22 13:00:34 +03:00
Mindaugas Budreika
d67381148a
Forward query (GET) parameters when executing a batch REST API request.
2019-05-20 14:24:48 +04:00
Boris Djemrovski
c45e06a130
get_formatted_line_subtotal takes Item object instead of an array
2019-05-16 12:04:34 +02:00
Gerhard Potgieter
30ce9ff6a3
Merge pull request #23689 from woocommerce/add/get_used_coupon_codes
...
Deprecate get_used_coupons in favor of get_coupon_codes
2019-05-15 15:34:40 +02:00
James Allan
6069854d9f
Replace wc_get_base_location() with individual getters
2019-05-15 15:43:15 +10:00
Claudio Sanches
b68b35336f
Prevent negative prices for products
2019-05-14 13:22:06 -03:00
Gerhard Potgieter
b7facc0674
Merge pull request #23663 from danielbitzer/add_get_coupons_method
...
Add WC_Abstract_Order::get_coupons()
2019-05-14 11:35:21 +02:00
Gerhard
efe3e4c5d6
Move get_used_coupons to WC_Abstract_Legacy_Order and renamed get_used_coupon_codes to get_coupon_codes.
2019-05-14 11:19:48 +02:00
Daniel Bitzer
0705730121
Add WC_Abstract_Order::get_coupons()
2019-05-14 15:46:48 +09:30
James Allan
45b461639e
Calculate base store taxes including the store's zip and city
2019-05-14 13:43:57 +10:00
Gerhard
31acfbcb4a
Deprecate WC_Abstract_Order::get_used_coupons in favor of WC_Abstract_Order::get_used_coupon_codes, this reflects the actual data being returned better.
2019-05-13 14:40:54 +02:00
Nathan Dawson
6088f7c353
Fixes #23578 - Check taxes are enabled before adding totals row to orders
2019-05-01 22:05:46 +01:00
Mike Jolley
47eee0143f
Restore order note on exception
2019-04-17 13:07:52 +01:00
Mike Jolley
a0d4f6174c
Consistent CRUD classes with before/after save hooks
2019-04-17 12:47:35 +01:00
Timmy Crawford
e1c09b4609
Merge pull request #22973 from woocommerce/update/22545
...
Revised sale start/end date save logic
2019-03-14 17:53:40 -07:00
Mike Jolley
cd92c68476
fix offset check
2019-03-11 15:00:42 +00:00
Mike Jolley
c56d3ede9f
Remove day offsets
2019-03-08 13:35:30 +00:00
Mike Jolley
76fabc9b7e
Merge pull request #22771 from martinsnajdr/flatrate-shipping-cost-filters
...
Shipping method get_option function filters
2019-03-04 13:49:22 +00:00
Martin Šnajdr
4f9d47ea25
PR requested changes: shipping instance option filter moved to get_instance_option function, filters renamed.
2019-02-27 17:31:51 +01:00
Mike Jolley
9529d6eee7
Use total, not amount, when calculating fees
2019-02-20 16:22:20 +00:00
Martin Snajdr
1c678372d4
Shipping cost filters removed & added two additional parameters get_option function filters
2019-02-20 15:59:40 +01:00
Martin Snajdr
dfd4f4ea6d
Filters added to shipping method function get_option
2019-02-20 11:54:59 +01:00
Mike Jolley
b8921f9fba
Merge pull request #22420 from woocommerce/refactor/tax-rounding-methods
...
Refactor tax rounding methods for consistency
2019-02-12 16:13:58 +00:00
Mike Jolley
889cf64ac4
Merge branch 'performance/wc-get-product-class'
2019-02-07 13:34:18 +00:00
Claudiu Lodromanean
2d2d7a7053
Merge pull request #22613 from woocommerce/performance/set-props
...
Performance: `set_props`
2019-02-06 10:02:54 -08:00
Mike Jolley
a4acf5643a
Merge pull request #22533 from woocommerce/fix/21265
...
Exclude `paged` from price slider
2019-02-04 10:18:51 +00:00
Mike Jolley
8b7414cfb5
Apply fix to rating filter
2019-02-01 14:13:37 +00:00
Mike Jolley
1e3e5a4528
Merge pull request #22580 from woocommerce/fix/22515
...
recalculate coupons after adding coupon to order
2019-01-31 14:38:59 +00:00
Mike Jolley
5e9253980b
Merge pull request #22566 from jenkoian/change-for-network-media-library-compatibility
...
Remove possibe superfluous wp_attachment_is_image() filter.
2019-01-31 14:20:35 +00:00
Mike Jolley
74cd1ced37
Merge branch 'fix/20710'
2019-01-31 13:37:02 +00:00
Mike Jolley
77eba86818
Get rid of reflection method to speed up set_props
2019-01-30 16:21:06 +00:00
Mike Jolley
9a8d11e9f6
phpcs
2019-01-30 16:20:49 +00:00
Mike Jolley
7eda1bb412
Only use WP Error when needed
2019-01-30 16:20:41 +00:00
Mike Jolley
59e0867afe
Add missing post_password prop
2019-01-30 16:01:54 +00:00
Ron Rennick
3f24ad8d4c
phpcs sniff fixes for abstract-wc-order.php
2019-01-27 11:38:08 -04:00
Ron Rennick
d32f189f27
recalculate coupons after adding to order
2019-01-26 23:57:32 -04:00
Ian Jenkins
d7e32e1c77
Remove possibe superfluous wp_attachment_is_image() filter.
...
The reason to remove this is that this function uses get_post() under
the hood which always assumes the attachment is on the same site, where
as if you're using a plugin such as
https://github.com/humanmade/network-media-library it might not be.
I'm not sure if there's any adverse affects of not doing this filtering,
from my testing, it still seems to work in the same way.
2019-01-25 15:11:58 +00:00
claudiulodro
8078e6bfc2
Simplified title check that works on all wc widgets
2019-01-24 10:47:05 -08:00
Ron Rennick
8709351994
update function name to `wc_attribute_taxonomy_slug`
2019-01-23 11:11:27 -04:00
Ron Rennick
b868b484f7
fix merge conflicts
2019-01-23 10:53:42 -04:00
Mike Jolley
084dab4553
Merge pull request #22476 from woocommerce/fix/22470
...
Hide ratings when reviews are disabled
2019-01-22 13:32:22 +00:00
Mike Jolley
5cb60b840c
Merge pull request #21859 from ChromeOrange/master
...
Add filter to save_payment_method_checkbox
2019-01-22 12:05:42 +00:00
Gerhard
98948a2faf
PHPCS fixes
2019-01-17 08:32:42 +02:00
Mike Jolley
50a86a1a33
Merge pull request #21562 from terence1990/feature/rest-api-crud-params-filter
...
Add a filter to WC_REST_CRUD_Controller::get_collection_params method to allow developers to change params
2019-01-16 11:32:03 +00:00
Mike Jolley
42f77950bd
Make total recalc use unrounded tax values to fix test WC_Tests_Order_Coupons::test_add_coupon_to_order
2019-01-11 13:17:06 +00:00
Mike Jolley
28ac24d870
update_taxes can safely round all values, as lines would already be rounded if applicable
2019-01-11 13:12:31 +00:00
Mike Jolley
50ca24e5d9
set_coupon_discount_amounts should support woocommerce_tax_round_at_subtotal
2019-01-11 13:09:20 +00:00
Mike Jolley
caffa319f4
set_item_discount_amounts should support woocommerce_tax_round_at_subtotal
2019-01-11 13:06:26 +00:00
Mike Jolley
11d14b30a4
PHPCS fixes
2019-01-11 12:28:52 +00:00
pierrebuet
9ca3ae3453
Check for customer before checking for VAT excemption
...
In the actual form, the check done in the function is_taxable() of a shipping method can only be done in the frontend, since WC()->customer must be defined. Checking for a customer before checking the excemption would make the function also callable in the backend for different pre-calculation. If a customer is not defined, an exemption can not exists.
2019-01-08 15:57:21 +00:00
Mike Jolley
848eecf6a6
Merge pull request #21537 from jespervnielsen/patch-2
...
allow-filtering-on-wiget-get_current_page_url
2019-01-07 13:12:43 +00:00
Mike Jolley
71ab4c78ed
Merge pull request #22168 from woocommerce/fix/rest-api-orderby-slug
...
[REST API] Fixed orderby slug
2019-01-07 12:19:35 +00:00
Claudiu Lodromanean
1612d2a230
Merge pull request #22074 from Prospress/fix/22068
...
ensure product parent exists before getting its image
2019-01-04 09:37:03 -08:00
Mike Jolley
0c76db4093
Get instance setting defaults so it shows in customiser before save
2019-01-04 16:11:36 +00:00
JeroenSormani
f4775ccd90
Use shipping method instead of property through magic + doc return statements
2019-01-04 12:41:38 +00:00
Claudiu Lodromanean
89740f9583
Merge pull request #22204 from woocommerce/fix/22201
...
Restore empty schema support for register_rest_field
2019-01-02 12:03:41 -08:00
Claudiu Lodromanean
87a03b2331
Merge pull request #22189 from Prospress/fix/22186
...
Allow sale price to 23:59:59 on last sale date
2019-01-02 12:02:52 -08:00
Gerhard
5d22d42c9b
PHPCS fixes
2018-12-12 10:05:03 +02:00
Gerhard
38391f7bbf
Update WC_REST_Controller to apply WP 5.0 fix as per https://core.trac.wordpress.org/attachment/ticket/45220/45220.2.diff
2018-12-12 10:03:22 +02:00
Claudiu Lodromanean
c3334302bd
Merge pull request #22108 from woocommerce/fix/meta-queries-REST-API
...
Fixed support for multiple query parameters translated to meta queries via REST API requests
2018-12-11 11:12:56 -08:00
Ron Rennick
b6c614c2af
allow sale price to 23:59:59 on last sale date
2018-12-10 10:37:13 -06:00
Ron Rennick
b8d635a29c
phpcs sniffs in abstract-wc-product.php
2018-12-10 10:34:12 -06:00
Faisal Alvi
8dbb795610
abs-wc-widget-coding-stds
...
Few coding standard fixes in the file abstract-wc-widget.php
2018-12-07 18:57:03 +05:30
Claudio Sanches
fb35324c4f
[REST API] Fixed orderby slug
2018-12-06 16:17:58 -02:00