Commit Graph

530 Commits

Author SHA1 Message Date
Claudiu Lodromanean 5ebc4a4010 Merge pull request #15740 from woocommerce/update/prime-term-caches
Update/prime term caches for product queries
2017-06-22 08:18:55 -07:00
Mike Jolley 67bc729ea5 update_post_caches for all posts at once 2017-06-22 13:39:17 +01:00
Mike Jolley 74cb2965b3 Ensure we have a parent
Fixes #15737
2017-06-22 12:06:10 +01:00
Mike Jolley e06aa6f60a Prime term cache before read 2017-06-21 17:09:39 +01:00
Mike Jolley 0ce2ff2249 Fix update of terms after new rating 2017-06-15 11:29:18 +01:00
claudiulodro 57c5bab731 Space 2017-06-14 09:58:15 -07:00
Mike Jolley cb34cb8d81 Made variations more lenient so that they can be created whilst a parent does not yet exist 2017-06-14 16:37:46 +01:00
claudiulodro 62064d56f8 Add edge case test 2017-06-13 14:00:12 -07:00
claudiulodro f1a9dbc69e Extra checks and tests 2017-06-13 13:32:21 -07:00
claudiulodro f020d54e67 Add support for paginate and return ids in wc_order_query 2017-06-12 13:26:29 -07:00
Mike Jolley 012f251e42 Update variation outofstock term on save. 2017-06-12 13:09:47 +01:00
Mike Jolley 6eacecfeb6 Append blog ID on persistent cart user meta 2017-06-08 13:47:23 +01:00
Boro Sitnikovski 0271a9e2fe Update version 2017-06-07 16:20:09 +02:00
Claudio Sanches 20d5e0f769 Merge pull request #15477 from woocommerce/fix/15392
Variations to inherit catalog_visibility
2017-06-06 14:27:46 -03:00
Boro Sitnikovski efd42e6bc4 Proof of concept to error when internal meta props are accessed directly 2017-06-06 19:13:53 +02:00
Mike Jolley e0a64ad36a Variations to inherit catalog_visibility 2017-06-06 14:49:32 +01:00
Claudio Sanches 6be1569955 Start indexing variations with 1, closes #15081 2017-06-05 17:42:58 -03:00
Mike Jolley fc4a9d185e Move changes after set name 2017-05-31 16:28:55 +01:00
Claudio Sanches bc3c7f6bbd Merge branch 'master' into fix/15315 2017-05-31 11:59:49 -03:00
Mike Jolley 6883b49e81 Atom sucks 2017-05-31 15:57:49 +01:00
Mike Jolley eda55579b7 Merge pull request #15373 from woocommerce/feature/product-csv-import-export
Product CSV Import Export
2017-05-31 13:57:37 +01:00
Mike Jolley 21300951f1 Fix tests due to generated names 2017-05-31 13:48:28 +01:00
Mike Jolley 32ab4fb47f Merge pull request #15360 from woocommerce/fix/15228
Store user ID and use that to determine if the session should be loaded or not.
2017-05-31 13:03:29 +01:00
Mike Jolley 532ddfa6b0 Merge conflicts 2017-05-31 12:23:52 +01:00
Mike Jolley 56ffa3d2aa Merge pull request #14706 from crodas/make_get_item_consistent
Make get item consistent
2017-05-31 11:10:09 +01:00
Mike Jolley 60def8cde0 Store user ID and use that to determine is session data should overwrite user data. 2017-05-30 17:03:55 +01:00
Mike Jolley 3dd7cbf59b Revert d570a81241 2017-05-30 16:54:37 +01:00
Cesar Rodas 001cf94ff3 Fixed typo 2017-05-30 10:37:29 -04:00
Mike Jolley ed32f9c792 Only delete if the object has an ID 2017-05-30 14:44:28 +01:00
Mike Jolley 2346af1816 Update title if changed
This could be the result of a term name changing, parent changing etc.

Fixes #15315

May degrade performance if reading many variations.
2017-05-30 13:20:36 +01:00
Mike Jolley f1d718d38a Format parent stock qty on read
Fixes #14759
2017-05-29 10:03:35 +01:00
Mike Jolley 2e5053633b CRUD should update post type on update so it matches expected value. 2017-05-25 12:09:59 +01:00
Kelly Dwan 0a265b53a2 Add display_name to customer data store 2017-05-24 13:57:11 -04:00
Mike Jolley f866f164eb Merge pull request #15244 from woocommerce/improvement/15187
Order query unit tests and fixes.
2017-05-24 12:03:40 +01:00
claudiulodro 201ea727db Simplify status check 2017-05-23 18:52:03 -07:00
claudiulodro 4faad7d964 Finish unit tests and bugfixes 2017-05-23 18:44:37 -07:00
Cesar Rodas ea9c573f2c Improved WC_Order::get_item()
Do not load all items, just load the items with a given order_item_type.
2017-05-23 20:12:47 -04:00
Cesar Rodas b612bab38b Fixed coding styles 2017-05-23 19:18:31 -04:00
Mike Jolley 383a318f59 Merge pull request #14949 from aelia-co/Improvement-customer-total-spent-filter
New filters for customer total spent
2017-05-23 20:37:58 +01:00
Diego Zanella 89efc65327 Fixed call to woocommerce_customer_get_total_spent_query filter
* Variable `$customer` was passed to `$wpdb->get_var()` instead of the filter.
2017-05-23 20:35:21 +01:00
Mike Jolley c16acc6b51 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	assets/css/wc-setup-rtl.css
#	assets/css/wc-setup.css
2017-05-23 19:00:24 +01:00
Mike Jolley d3666738d8 Merge branch 'pr/15069' 2017-05-23 18:56:58 +01:00
Mike Jolley 00e5189a05 Merge pull request #15070 from rasmusbe/phpdoc-missing-return-throws
Phpdoc: Add missing return and throws
2017-05-23 18:50:58 +01:00
Diego Zanella a6bcc73846 Added $customer to filter woocommerce_customer_get_total_spent_query 2017-05-23 17:06:16 +01:00
Diego Zanella 885cb14029 Merge branch 'master' into Improvement-customer-total-spent-filter 2017-05-23 17:05:08 +01:00
Mike Jolley 2383799409 A single multi-word attribute is fine for variation titles
Closes #15225
2017-05-23 10:52:44 +01:00
Mike Jolley fc8100877c Undo change 2017-05-22 12:19:54 +01:00
Mike Jolley 2082d84e4d Always sync incorrect titles on variation read regardless of version
For #15158
2017-05-19 11:28:13 +01:00
Mike Jolley eb147197a2 Variations should inherit purchase_note from parent.
Fixes #15115
2017-05-18 14:47:00 +01:00
Mike Jolley 351b0e0c67 Support limiting in search_customers 2017-05-16 10:16:57 +01:00
Rasmus Bengtsson 185934fad9 Fix phpdoc to include params and correct types 2017-05-15 13:50:52 +02:00
Rasmus Bengtsson 4a3902cd48 PHPDoc: Add missing throws statement 2017-05-15 13:39:03 +02:00
Rasmus Bengtsson 4f00d7e5e3 PHPDoc: Add missing return statement 2017-05-15 13:37:59 +02:00
Rasmus Bengtsson 6a7fc8650f Remove unused local variables 2017-05-15 12:06:52 +02:00
claudiulodro 9e9b9b86ba Cant use empty check in customer query var 2017-05-14 17:05:46 -07:00
claudiulodro cec2c3b7dc Couple requested changes 2017-05-13 12:22:22 -07:00
claudiulodro fe40e9b96a Make date queries work properly 2017-05-12 15:25:15 -07:00
claudiulodro 5b578c389f Use previous filter name 2017-05-12 13:14:52 -07:00
claudiulodro eee2ef82e8 Deprecate ->get_orders 2017-05-12 13:06:17 -07:00
Mike Jolley e777b4d557 Merge branch 'feature/product-csv-import-export' into feature/csv-exporter 2017-05-12 21:03:20 +01:00
claudiulodro 3861e32803 Migrate wc_get_orders 2017-05-12 11:45:01 -07:00
Claudiu Lodromanean c6fc0003c3 Merge pull request #14971 from woocommerce/improvement/13646
WC_*_Query date queries
2017-05-11 21:43:41 -07:00
Claudio Sanches 663c1d5f51 Merge pull request #15012 from woocommerce/fix/14994
Correctly set rating during updates
2017-05-10 19:08:38 -03:00
claudiulodro e31cbfd5c4 Formatting for readibility 2017-05-10 14:33:29 -07:00
Mike Jolley 4cacceeede Variation handling 2017-05-10 22:16:53 +01:00
claudiulodro d461ea86d6 Use local timezone for yyyy-mm-dd queries 2017-05-10 13:08:47 -07:00
claudiulodro db1d5ac987 Simplify logic 2017-05-10 12:02:15 -07:00
claudiulodro a0727fb8a1 Change to date array 2017-05-10 11:49:11 -07:00
Mike Jolley 37a544dd6f Ensure needle is set
Fixes #15004
2017-05-10 19:30:34 +01:00
Mike Jolley cd9119443a Correctly set rating during updates
Fixes #14994
2017-05-10 19:21:38 +01:00
claudiulodro 5d86b2f001 Formatting 2017-05-09 14:55:39 -07:00
claudiulodro 93835f69db New working date query format 2017-05-09 14:49:45 -07:00
claudiulodro c89e389b3f Good progress towards better date queries 2017-05-09 11:37:45 -07:00
Mike Jolley 19fb7ac079 Fix hardcoded table name 2017-05-09 19:17:24 +01:00
Diego Zanella 3f3f2bdc2c New filters for customer total spent
* Added new filters to allow altering the calculation of customer's total spent:
  * `woocommerce_customer_get_total_spent`
  * `woocommerce_customer_get_total_spent_query`
2017-05-08 19:39:13 +01:00
Mike Jolley a741f2c7bf Make other queries match the new query in 14936 2017-05-08 19:08:59 +01:00
Mike Jolley b961d6fb74 Correctly exclude terms in wc_get_related_products
Fixes #14909
2017-05-08 14:15:16 +01:00
Mike Jolley dd3be1278b Merge pull request #14733 from woocommerce/feature/13646
WC_Object_Query & WC_Order_Query
2017-05-07 14:24:12 +01:00
Claudio Sanches 421c9a3ba7 Introduced woocommerce_shop_order_search_results filter
Closes #14857
2017-05-03 18:14:41 -03:00
Claudio Sanches 63552c9757 Fixed conflict between global attributes and custom attributes.
Check if is a custom attribute before trying to get an ID from a global attribute.
2017-05-03 16:30:50 -03:00
claudiulodro 7c393a4469 Better time handling 2017-04-28 14:01:06 -07:00
claudiulodro 1bb46ad876 Array filter results 2017-04-28 10:12:31 -07:00
Mike Jolley af09548ec0 Add missing shipping_company from internal props in data store
Fixes #14768
2017-04-28 13:44:22 +01:00
claudiulodro 30d2332f48 Handle paginate 2017-04-27 19:14:48 -07:00
claudiulodro 0721354ff2 Add paginate 2017-04-27 15:02:02 -07:00
claudiulodro 11c7722eff Update tests 2017-04-27 14:46:00 -07:00
claudiulodro 059389c684 Missed a spot 2017-04-27 14:13:06 -07:00
claudiulodro 4eb1396e85 Offload more to subclasses 2017-04-27 14:09:10 -07:00
claudiulodro db3de7375d Tweaks from feedback 2017-04-27 11:07:03 -07:00
claudiulodro 6aecb15505 Reduce scope 2017-04-27 08:38:18 -07:00
claudiulodro 020e24225a Line up array 2017-04-26 14:20:44 -07:00
claudiulodro 1647e253a0 Add filters 2017-04-26 11:19:54 -07:00
claudiulodro 2fad12221d Better comments 2017-04-26 11:04:28 -07:00
claudiulodro 9f0f0cd246 Polish and cleanup 2017-04-26 10:49:19 -07:00
Mike Jolley 481a5045aa Merge pull request #14622 from jaumarar/patch-2
Fix: Creating customer triggers password changed
2017-04-26 14:32:28 +01:00
Mike Jolley 234bc3c017 Missing arg in data store too 2017-04-26 11:08:47 +01:00
Cesar Rodas 38f379a7d7 Make get_item() consistent (like get_items())
Right now get_item() is loading an item from the database directly. It doesn't
take advantage of our cache and it doesn't check if the item is already loaded in memory.

There is also another bug (or feature?) that it will let you load any item, even if the item is not related to the current order. I believe this is a bug, if somebody really wants to load any item regardless of the order they should use `WC_Order_Factory::get_order_item`.

Another bug is that items loaded with get_item() are not related to the order object, therefore any calls to Order::save() won't persist the changes made to the item.

This commits makes sure the item returned by get_item is loaded similarly like get_items() does, taking advantage of the cache and the $items protected property (chances are the item is already in memory, ready to be used).

If a given item is not found false will be returned. If item exists but it is not related to the current object it will return false as well (If this behaviour is wanted, I can easily change it load the item anyways instead of returning false).
2017-04-26 02:54:14 -04:00
claudiulodro efa1dbbda5 Basic working order queries 2017-04-25 14:52:17 -07:00
Mike Jolley 8e624e6230 Filter invalid products before returning them for wc_get_products
Closes #14592
2017-04-25 14:03:30 +01:00
Jaume 5e53ed70d8 Fix: Creating customer triggers password changed
Sending POST /wc/v1/customers or POST /wc/v2/customers with the required args triggers the 'Notice of Password Changed' after creating the customer due to update() calls when the password still has a value.
2017-04-22 20:06:56 +02:00
Mike Jolley a325d03deb wc_get_orders support for guest orders and unit tests
Fixes #14575
2017-04-20 18:05:58 +01:00
Claudio Sanches 0b60af0774 Merge pull request #14415 from woocommerce/fix/save-post-infinite-loops
Prevent infinite loops during save_post
2017-04-20 00:44:57 -03:00
Claudio Sanches c90e71e890 Merge pull request #14509 from woocommerce/fix/14480
Only return product by SKU if published
2017-04-19 14:38:14 -03:00
Claudio Sanches 0d46a89f83 Check only if is not in trash 2017-04-19 14:27:19 -03:00
Mike Jolley bdb01c4bea is_existing_sku should check all post statuses except for trash
Fixes #14525
2017-04-19 11:32:49 +01:00
Claudio Sanches f61646d1a2 Only return product by SKU if published
Fixes #14480
2017-04-18 21:32:52 -03:00
Mike Jolley d4a8f3c25b fix coupon update 2017-04-15 21:48:22 +01:00
Mike Jolley 1f28b9d0b8 Other object types 2017-04-15 21:18:24 +01:00
Mike Jolley 27c9006f77 Product data store loop protection 2017-04-15 21:04:41 +01:00
claudiulodro 96ed33f227 Use read_downloads in variations 2017-04-14 14:18:08 -07:00
Mike Jolley 21da0cf71f Ensure name and file is set 2017-04-12 14:11:04 +01:00
Claudio Sanches 627d7a8790 Merge pull request #14278 from woocommerce/fix/14209-alt
Variation Attribute Name Fixes (simplified)
2017-04-11 17:25:28 -03:00
Mike Jolley 5cfed7569c Simplify wc_is_attribute_in_product_name and change separator 2017-04-11 21:12:30 +01:00
Claudio Sanches 3278d9e5d7 Merge pull request #14255 from woocommerce/fix/14163
Download permissions; Convert dates to timestamp on read so UTC is preserved.
2017-04-11 16:51:20 -03:00
Mike Jolley 510adc652c Download permissions; Convert dates to timestamp on read so UTC is preserved.
Fixes #14163
2017-04-11 13:13:03 +01:00
Mike Jolley 899176bee7 woocommerce_update_customer_args filter 2017-04-11 12:47:53 +01:00
Claudiu Lodromanean 903b176b99 Attribute title tweaks 2017-04-10 13:16:58 -07:00
Mike Jolley 243b7a0d3f Exclude location meta from setters 2017-04-10 12:16:25 +01:00
Govind Kumar 2ea79cc5ed Fixed issue #14124 2017-04-07 19:14:10 +05:30
Claudio Sanches 708df27719 Merge pull request #14117 from woocommerce/fix/14108
If variation tax class meta is not set, it should be 'parent' to support 2.6 data
2017-04-07 13:29:40 -03:00
Mike Jolley 7418b9f8b8 If variation tax class meta is not set, it should be 'parent' to support 2.6 data
Fixes #14108
2017-04-07 17:13:59 +01:00
Claudio Sanches 51c00cce09 Merge pull request #14099 from dixitadusara/issue-14089B
Modified suggestion of Invalid argument supplied for foreach ref #14089
2017-04-07 12:33:01 -03:00
Mike Jolley 4f412678bd Ensure meta_value has valid keys in read_attributes
Fixes #14085
2017-04-07 10:59:59 +01:00
dixitadusara e527b6608c modified suggestion of Invalid argument supplied for foreach ref #14089 2017-04-07 15:27:52 +05:30
dixitadusara 3ba9063d3d Invalid argument supplied for foreach - class-wc-product-data-store-cpt.php ref #14089 2017-04-07 13:24:34 +05:30
Mike Jolley 1b5cad3d78 Fix variation category restriction and limit to x uses
Fixes #14068
2017-04-06 21:51:11 +01:00
Claudio Sanches 14572c8d80 Merge pull request #13991 from woocommerce/fix/13928
When setting props, exclude deprecated ones
2017-04-06 16:20:34 -03:00
Mike Jolley 2877752e1f array_flip 2017-04-06 20:18:14 +01:00
Claudio Sanches 0529e4efab Merge pull request #14026 from woocommerce/fix/13978
Fix variable stock syncing
2017-04-06 16:06:26 -03:00
Mike Jolley 8f2287be12 Use get_children for comparison 2017-04-06 19:47:22 +01:00
Mike Jolley 5701b1f7e2 Get cross sells from parent
fixes #14054
2017-04-06 19:01:57 +01:00
Claudio Sanches 42ca7bda3d Merge pull request #13989 from woocommerce/fix/product-meta-save_post
Fix saving meta when using `save_post`.
2017-04-06 14:38:16 -03:00
Mike Jolley fd3e656912 Pull tax status from parent since there is no UI to set at variation level 2017-04-06 17:54:34 +01:00
Claudio Sanches 9a219b71da Merge pull request #14036 from woocommerce/fix/14032
Make sure we have a prefix for strstr
2017-04-06 10:25:46 -03:00
Mike Jolley 822412d03c Make sure we have a prefix for strstr
Closes #14032
2017-04-06 14:11:00 +01:00
Mike Jolley a7a896008c Fix up the child_is_in_stock function 2017-04-06 12:26:19 +01:00
Mike Jolley d570a81241 Set session data only if the value is empty in customer object. Prevents session data overwriting customer data on login.
Fixes #13906
2017-04-06 10:28:32 +01:00
Mike Jolley 70778abade When setting props, exclude deprecated ones
Fixes #13928
2017-04-05 23:16:45 +01:00
Justin Shreve 15bf1da7d5 Call save_meta_data before wp_update_post for data stores that use it, and refresh meta cache after. 2017-04-05 14:39:41 -07:00
Claudiu Lodromanean c02cee595e Add missing download_id param 2017-04-05 13:37:42 -07:00
Mike Jolley 359213d720 Fix direction 2017-04-05 20:25:21 +01:00
Mike Jolley 0035afc5a0 Make sure we have number > 0 so all variations are not deleted 2017-04-05 20:22:05 +01:00
Claudio Sanches f250cac8d1 Merge pull request #13967 from woocommerce/fix/13933
Use parent settings for determining if variations are sold individually.
2017-04-05 15:33:17 -03:00
Claudiu Lodromanean 5389844a1b Use parent data for sold_individually 2017-04-05 11:02:26 -07:00
Mike Jolley 27b35c0515 Using WPDB is quicker than wp_update_post 2017-04-05 18:40:59 +01:00
Mike Jolley ab4c921bd1 Wrap in try catch so WC_Data_Exceptions are caught on bad email. 2017-04-05 16:36:28 +01:00
Mike Jolley 71ce5b85bc Merge pull request #13884 from woocommerce/fix-13875-13877
Private and variable product fixes
2017-04-03 19:16:35 +01:00
Mike Jolley 0a96f17747 Flip orderby 2017-04-03 12:12:13 +01:00
Mike Jolley 8598f82c8a If user can edit private products, search them
Fixes #13877
2017-04-03 12:04:59 +01:00
Mike Jolley 31cd2dcb90 Merge pull request #13853 from woocommerce/crud-security-hardening
CRUD security/hardening
2017-04-03 11:09:38 +01:00