Commit Graph

121 Commits

Author SHA1 Message Date
Scott Kingsley Clark ceb3a0d753
Fix fatal error problems by no longer adding false to the list of orders
By adding this prevention, it also stops fatal errors (calling method on non-object) from happening down the line when working with the orders list that is always assumed to be a proper order object.

Example error this prevents:

```
Fatal error: Uncaught Error: Call to a member function get_items() on bool in /wp-content/plugins/woocommerce/includes/class-wc-order.php on line 1902
```
2021-01-25 10:11:14 -06:00
vedanshujain 3dd80d6d65 Add polyfill for wp_cache_get_multiple 2020-11-10 14:23:44 +05:30
vedanshujain 0b29232fe3 Prime caches only when needed. 2020-11-10 14:23:44 +05:30
vedanshujain eeb8851717 Minor fixups for PR #27734 2020-11-10 14:23:44 +05:30
vedanshujain 4599884dd0 Fix failing tests. 2020-11-10 14:23:43 +05:30
vedanshujain bb1e2f44ae Removed/reverted more unnecessary changes. 2020-11-10 14:23:43 +05:30
vedanshujain 12f69c2d2d Only set cache when neccessary.
This creates a tradeoff in optimizing repeated queries vs on off queries.

Another tradeoff is making more cache get calls as opposed to more SQL calls.
2020-11-10 14:23:43 +05:30
vedanshujain a5fb3178f0 Drop CacheHydration class and do it directly.
Primary reason for dropping the cache hydration is that seems like we can acheive the same results without it, so no need to add this additional complexity to our code.
2020-11-10 14:23:43 +05:30
vedanshujain 975783b2b4 Also support methods in case direct accessing key is deprecated.
For example, in case of refunds, directly accessing parent_id is deprecated, we should use get_parent_id instead.
2020-11-10 14:23:42 +05:30
vedanshujain 8ab9fd26ef Set key before trying to add values 2020-11-10 14:23:42 +05:30
vedanshujain d502407145 Use CacheHydration to speed up fetching Order data.
This also primes various caches by fetching data well in advance, this would have been individual SQL queries otherwise.
2020-11-10 14:23:42 +05:30
Claudio Sanches d48f1d4e2e Fixed package tag usage 2020-08-05 13:36:24 -03:00
Claudio Sanches ea19190d3b Allows to set custom order_key while creating an order 2020-05-20 17:14:17 -03:00
Rodrigo Primo 7c9d6110e2 Fix typo in code comment 2020-02-05 15:48:40 -03:00
vedanshujain ad2f76275a Applied coding standards 2019-12-17 19:13:19 +05:30
vedanshujain 47ba1d49da Cascade to return null to prevent notice when array is empty.
Another situation where this change is required when there are two coupons in an order but only one coupon has limit. In this case array will be present but one of the coupon will not have a corresponding record which will throw a notice.
2019-12-17 19:13:19 +05:30
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
Mike Jolley e354bb90aa Pass objects to new/update actions 2019-04-17 12:50:46 +01:00
Mike Jolley c52eac2871 check updated props for variables 2019-03-12 19:22:30 +00:00
Mike Jolley 5749369ba5 Update coupons and orders to use update_or_delete_post_meta 2019-02-19 15:35:05 +00:00
Mike Jolley 13612ef3f1 Update CRUD update hook based on status transition 2019-02-13 17:55:30 +00:00
Mike Jolley 6367d19615 phpcs 2019-01-21 08:11:40 -08:00
Rodrigo Primo fce22a705f Reapply change made in c765ce644d
Reverting commit 61c7abc in commit ece9f02776, overrode a unrelated change made to the same code in another PR by commit c765ce644d. This commit simply reapplies this change.
2018-10-29 16:34:48 -03:00
Rodrigo Primo ece9f02776 Revert "First pass at using post_author instead of the post meta '_customer_user'"
This reverts commit 61c7abce4f.
2018-10-29 11:48:44 -03:00
Rodrigo Primo ff7e307b6b Revert "Make sure post_author is used only after WC 3.3.0 DB upgrade routine is executed"
This reverts commit 997a6fa40d.
2018-10-29 11:46:33 -03:00
Rodrigo Primo 487ac201c0 Revert "Bump WC version to 3.4.0"
This reverts commit 7f43c39f2f.
2018-10-29 11:44:32 -03:00
Rodrigo Primo 1d9ab63134 Revert "Punt to WC version 3.5.0"
This reverts commit ccf10f6ab2.
2018-10-29 11:37:24 -03:00
Rodrigo Primo e47ebfaafb Revert "Update WC_Order_Data_Store_CPT::get_wp_query_args() to use post_author instead of _customer_user"
This reverts commit 8db3236889.
2018-10-29 11:08:53 -03:00
Rodrigo Primo c49059ce7a Merge branch 'master' into update/use-post-author-for-customer-id 2018-05-08 17:34:09 -03:00
Rodrigo Primo 8db3236889 Update WC_Order_Data_Store_CPT::get_wp_query_args() to use post_author instead of _customer_user 2018-05-08 17:21:57 -03:00
Mike Jolley c765ce644d Inactive account handling 2018-04-30 15:38:45 +01:00
Mike Jolley 29961b540a Fix up query 2018-04-18 12:04:53 +01:00
Mike Jolley 314d949d2c Background process to cleanup 2018-04-17 15:21:03 +01:00
Rodrigo Primo ccf10f6ab2 Punt to WC version 3.5.0 2018-04-17 11:12:46 -03:00
Rodrigo Primo a7d2c5dd6e Merge branch 'master' into update/use-post-author-for-customer-id 2018-04-03 15:13:07 -03:00
Rodrigo Primo 231328e112 phpcs fixes in includes/data-stores/class-wc-order-data-store-cpt.php 2018-03-08 16:28:16 -03:00
Patrick Garman fd3a39345f
Return amount refunded as a float
An amount refunded should be numeric, I was receiving pHP notices that a non numeric value was encountered. Seems this is something potentially new as of PHP 7.1? Is there any reason we should **not** return a float here? Any null or empty response from the SQL query would be 0, which would still be accurate for the total that was refunded for that order.

```2018/01/27 16:50:50 [error] 46797#0: *2930 FastCGI sent in stderr: "PHP message: PHP Warning:  A non-numeric value encountered in /wp-content/plugins/woocommerce/includes/admin/meta-boxes/views/html-order-items.php on line 212
PHP message: PHP Stack trace:
PHP message: PHP   1. include() /cms/wp-admin/post.php:174
PHP message: PHP   2. do_meta_boxes() /cms/wp-admin/edit-form-advanced.php:714
PHP message: PHP   3. WC_Meta_Box_Order_Items::output() /cms/wp-admin/includes/template.php:1063
PHP message: PHP   4. include() /wp-content/plugins/woocommerce/includes/admin/meta-boxes/class-wc-meta-box-order-items.php:41```
2018-01-27 17:07:20 -06:00
Peter Westwood 0b19427d1d Order: Make note of two more meta keys that we store for an order. 2018-01-23 19:27:20 -07:00
Rodrigo Primo 7f43c39f2f Bump WC version to 3.4.0 2018-01-09 15:42:13 -02:00
Rodrigo Primo bf5c6f17a7 phpcs fixes 2018-01-09 15:42:08 -02:00
Rodrigo Primo 997a6fa40d Make sure post_author is used only after WC 3.3.0 DB upgrade routine is executed 2017-12-08 15:55:53 -02:00
Rodrigo Primo 61c7abce4f First pass at using post_author instead of the post meta '_customer_user' 2017-11-28 10:13:30 -02:00
Rodrigo Primo e006e14d23 Ignore PHPCS in two instances
Ignoring PHPCS in two lines of the code where apparently it is not possible to fix the violations. I tried using what @claudiosanches suggested in this comment https://github.com/woocommerce/woocommerce/pull/17909#issuecomment-347168029 but both tags didn't work. Lets revisit this when PHPCS 3.2.0 is released and we can selectively disable rules (see https://github.com/squizlabs/PHP_CodeSniffer/issues/604).
2017-11-27 11:00:42 -02:00
Rodrigo Primo 5e43d92e07 Fix some PHPCS violations in includes/data-stores/class-wc-order-data-store-cpt.php 2017-11-24 17:25:16 -02:00
Rodrigo Primo e12fa54bc6 phpcbf automatic coding standard fixes 2017-11-23 12:16:47 -02:00
claudiulodro e6a9a5f79b Fix date query meta unset checking 2017-10-24 13:07:21 -07:00
Boro Sitnikovski 5224eab917 Update PR with new logic 2017-09-05 19:56:56 +02:00
Boro Sitnikovski 85e3cee634 Use prop getters/setters instead 2017-09-05 15:17:16 +02:00
Jeremy Pry 2d4b7356df Update some docblocks with proper parameters 2017-08-18 12:18:19 -04:00
Mike Jolley e90fb6d54f fix discount apply and save 2017-08-10 15:33:01 +01:00