Commit Graph

1767 Commits

Author SHA1 Message Date
Mike Jolley a44a57b5d9 Improve tools page styling 2017-08-15 12:05:34 +01:00
Josh Smith 6dadaa0f7f Merge remote-tracking branch 'upstream/master' 2017-08-11 16:29:16 +00:00
Claudio Sanches 3f12fd1b01 Fixed missing hooks in legacy REST API 2017-08-10 18:57:31 -03:00
Claudio Sanches 40cb0e2e95 Trigger only customer.created webhook 2017-08-10 18:57:13 -03:00
Josh Smith d8b6b2042a Merge remote-tracking branch 'upstream/master' 2017-08-08 21:20:35 +00:00
Claudio Sanches 1a9b499be8 Apply attribute helper functions to importers and REST API 2017-08-07 22:34:25 -03:00
Patrick Garman 1314158a14 Add “site size” areas to system status report
The size of the site very much impacts the status of the site. This type of information would be extremely helpful when supporting a site.

1) post counts - can reveal high volumes of specific kinds of post types both within WC (orders, products, etc) or outside (revisions, attachments, third party ones, etc)

2) table sizes - a site with a 5MB postmeta table is very different than a site with a 5GB postmeta table, which is different than a site with a 50GB postmeta table, and require different kinds of support and focus.
2017-08-06 01:15:10 -04:00
Josh Smith 644ac674d7 [#12517] Replace download_id on customer download and product download with static UUID instead of filename based hash, to preserve download links, logs, and permissions across filename changes 2017-08-05 04:42:31 +00:00
Jaydeep Rami 46d3638089 Fix missing return statement (#16148)
* Fix missing return statement

* Fix missing return statement

* Fix missing return statement

* Fix missing return statement

* Fix missing return statement

* Fix missing return statement
2017-07-20 18:01:14 +01:00
Jaydeep Rami 3522857d23 Fix typo in WooCommerce plugin (#16135)
* Fixed typo

* Fixed more typo

* Fixed more typo

* Fix tyop

* Fix more typo

* Fix more typo

* Fix typo

* Fix typo

* Fix typo

* Fix typo datatime object

* Fix short name of compat

* Fix typo: update short name

* Fix typo "deactive" to "deactivate" and short BW - Compat

* Fix typo "Backwards compat"

* Fix typo 'parameters'

* Fix more typo 'pararmeters'

* Fix typo 'compund'

* FIx typo order

* Fix typo

* Fix typo 'incorrecly'

* Fix typo 'genarate'

* Fix typo 'reletive'

* Fix typo 'Handly'

* Fix typo 'rotatated'

* Fix typo

* Fix typo 'additonal'

* Fix typos
2017-07-17 11:10:52 +01:00
Mike Jolley 62a3554c22 Merge pull request #16114 from woocommerce/fix/rest-api-options
[REST API] Allow OPTIONS requests again
2017-07-17 11:08:48 +01:00
Claudio Sanches eb4caec13e Applies wc_delete_order_note() and properly delete notes by AJAX 2017-07-13 19:38:37 -03:00
Claudio Sanches f37e066d97 [REST API] Allow OPTIONS requests again 2017-07-13 15:19:17 -03:00
Jason Conroy 0d91f008ac Add terms and conditions to page to api pages property 2017-07-13 16:26:20 +10:00
Claudio Sanches 4262e83187 [REST API] Check if is a valid instance of WC_Product before load data
Closes #16072
2017-07-11 12:27:56 -03:00
Daniel Rey Lopez 04a83b0faa Change the "Rest of the World" zone name to "Locations not covered by your other zones" everywhere 2017-07-11 08:19:42 +01:00
Akeda Bagus 53807185a8
Fixed typos.
These typos are catched by `misspell` program.

```
find . -type f | grep -v assets | grep -v dummy-data | grep -v i18n | grep -v node_modules | grep -v .git | grep -v apigen |  xargs misspell -w
```

Some results were excluded because of 3rd party ownership and non-english
sentences.
2017-07-10 12:56:28 +07:00
Claudio Sanches 78a6585f19 [REST API] Allow unset product shipping_class
Closes #15960
2017-07-04 14:01:17 -03:00
claudiulodro 587dc56d9a Formatting 2017-06-29 11:16:26 -07:00
claudiulodro 2948e46cb4 Add tool for adding address indexes. 2017-06-29 11:14:09 -07:00
Mike Jolley afcfb4eb35 Only set default if no value is set in API settings 2017-06-27 15:29:31 +01:00
Job 8b48accc01 Upsell/up-sell
We had a few different usages of up-sells and upsells in the copy -
“Upsells” were used more and also seems to be more correct English so
I’ve updated the “up-sells”
2017-06-15 15:56:01 +02:00
Claudio Sanches 4dcb61e098 Fixed a typo 2017-06-12 13:59:47 -03:00
Claudio Sanches 43d28372b9 [REST API] Allow set grouped_products
Fixes #15559
2017-06-12 13:34:39 -03:00
claudiulodro 4515e5fca9 Fix undefined/incorrectly used variables 2017-06-09 14:10:55 -07:00
Claudio Sanches 2523490f9f [REST API] Fixed oAuth1.0a to allow multi-dimensional arrays
Fixes #15395
Closes #15396
2017-06-06 17:05:03 -03:00
Claudio Sanches 6c29d32396 Merge pull request #15446 from woocommerce/fix/15437-15443
Notice fixes in API and meta handling class
2017-06-05 15:00:48 -03:00
Mike Jolley 1e8e40565d Avoid deprecated ID in API. Fixes #15437 2017-06-05 10:45:10 +01:00
Jonathan Belcher 66736e69f7 Fix incorrect documentation 2017-06-02 12:58:16 -04:00
Mike Jolley 4b74f304b0 Gallery should be updated even if empty.
Fixes #15240
2017-05-24 17:23:28 +01:00
Mike Jolley 35536b8ace Merge pull request #14576 from Chouby/tools_message
Add custom message for custom system status tools
2017-05-23 19:22:47 +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
Claudiu Lodromanean 58189cb4b5 Merge pull request #15208 from woocommerce/fix/15203
Missing variable in legacy API
2017-05-22 13:10:28 -07:00
Mike Jolley 8cba7db7cd Prevent zone 0 name being changed 2017-05-22 15:19:04 +01:00
Mike Jolley a826b363d8 Prevent zone 0 locations being changed 2017-05-22 15:18:55 +01:00
Mike Jolley d1b49888f2 Missing variable in legacy API
Fixes #15203
2017-05-22 13:25:33 +01:00
Justin Shreve 0c5588aac7 Makes sure that the 'base location' setting is returned to the /settings/general endpoint correctly. It uses a special setting type that the API didn't handle properly. 2017-05-15 10:21:06 -07:00
Rasmus Bengtsson 185934fad9 Fix phpdoc to include params and correct types 2017-05-15 13:50:52 +02:00
Mike Jolley 31651e41cb Merge pull request #15063 from rasmusbe/unused-vars
Remove unused local variables
2017-05-15 12:45:54 +01: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
Rasmus Bengtsson 51fd482206 Remove duplicate entries from defined arrays 2017-05-15 10:48:02 +02:00
Mike Jolley 6797b2229d Ensure get_plugin_updates exists
Fixes #14978
2017-05-12 10:56:43 +01:00
Claudio Sanches 7ba011a3b8 Properly save order items in legacy REST API
Closes #14917
2017-05-08 12:37:33 -03:00
Claudio Sanches abfedafd46 Merge pull request #14842 from woocommerce/fix/14799
Get outdated plugins using get_plugin_updates()
2017-05-03 18:42:17 -03:00
Claudio Sanches 7b5d56c643 [REST API] Adds missing "id" in shipping zone methods endpoint
This missing "id" will break CLI.

Added as duplicated with `instance_id` to keep backwards compatibility.

Fixes #14831
2017-05-02 20:37:03 -03:00
Claudio Sanches 9ae846ccad Get outdated plugins using get_plugin_updates()
plugins_api() does a query for each plugin in api.wordpress.org that can takes 15 seconds, what is bad when have a lot of installed plugins and causing "gateway timeout" issues in System Status page.

get_plugin_updates() have already all available updates saved in cache.

Fixes #14799
2017-05-02 19:04:26 -03:00
Mike Jolley 4b0fff3437 Fix zone routes in CLI
Fixes #14750
2017-04-28 15:49:51 +01:00
Claudio Sanches c58a6f42e3 Merge pull request #14604 from cristiangrama/fix-filter-guest-orders
Fetch only guest orders: Allow passing a `customer=0` filter on the order request
2017-04-27 14:04:19 -03:00
Mike Jolley aacb01d1e7 Merge branch 'pr/13503'
# Conflicts:
#	assets/css/twenty-seventeen.css
#	assets/css/woocommerce-layout.css
#	assets/css/woocommerce-layout.scss
#	assets/css/woocommerce.css
2017-04-27 12:46:05 +01:00
Claudio Sanches 2d9e876e6d Removed deprecated WC_Order_Item_Meta from REST API v1 2017-04-24 20:55:09 -03:00
cristiangrama 216375f6ea Allow passing a `customer=0` for fetching all guest orders 2017-04-21 10:43:09 -05:00
Frédéric Demarle 928d157ba7 Add custom message for custom system status tools 2017-04-20 18:25:19 +02:00
Mike Jolley f8781b9552 Decrease paypal request timeout so failed requests to not take too long
Closes #14546
2017-04-20 15:45:52 +01:00
Claudio Sanches 60b3e3c123 [REST API] Fixed v1 order shipping taxes
Fixes #14518
2017-04-20 00:37:27 -03:00
Mike Jolley be96e8c8a1 Merge pull request #14506 from woocommerce/fix/14496
Prevent nonce check outside admin when calculating for reports
2017-04-19 15:05:31 +01:00
Claudio Sanches f318ce935c [REST API] Fixed ignored parameters when changing status
Prevent override saved data when updating order status.

Fixes #14359
2017-04-18 21:15:24 -03:00
Claudio Sanches 2da71bd7fb Prevent nonce check outside admin when calculating for reports
Fix all REST API reports endpoints.

Fixes #14496
2017-04-18 20:33:25 -03:00
Claudio Sanches 81dcd6e79e Fixed docblocks in REST API v1 for #14416 2017-04-18 13:40:10 -03:00
Tim Elsass 02de1cc60b Fixing grammar error in msg fixes #14319 2017-04-12 17:03:39 -04:00
Mike Jolley d81493cc52 Merge pull request #14229 from woocommerce/fix/14184
[REST API] Fixed line_items meta type to array on legacy REST API
2017-04-11 10:32:17 +01:00
Claudio Sanches 4a5a93f629 Merge pull request #14107 from woocommerce/fix/rest-api-legacy-v3-variations
[REST API] Fixed missing $variations variable in legacy v3
2017-04-10 20:19:43 -03:00
Claudio Sanches 5c92f9141b [REST API] Fixed line_items meta type to array on legacy REST API
Closes #14184
2017-04-10 19:57:35 -03:00
Mike Jolley 7d5efe4b78 Add product visibility terms to system status report to help debug
Closes #14147
2017-04-10 15:51:14 +01:00
Mike Jolley 84c96046f0 Check objects are not false/null 2017-04-07 16:01:51 +01:00
Claudio Sanches 8de0bb0a46 [REST API] Fixed missing $variations variable in legacy v3 2017-04-07 10:31:28 -03:00
Claudio Sanches fc9ba64e50 Properly format variation description in REST API v2 2017-04-06 13:02:51 -03:00
Claudio Sanches f3156fb5f4 Merge pull request #13981 from woocommerce/fix/13936
[REST API] Fixed attributes while trying to save variations
2017-04-06 11:38:23 -03:00
Mike Jolley eea6867ac9 Allow variation image to be unset
@claudiosanches is this correct way?

Fixes #14008
2017-04-06 10:41:09 +01:00
Claudio Sanches 4bb2c070ae Merge pull request #13900 from woocommerce/fix/rest-api-remove-extra-taxes-params
[REST API] Removed extra taxes params.
2017-04-05 21:18:09 -03:00
Claudio Sanches 87199d0627 [REST API] Fixed attributes while trying to save variations
Closes #13936
2017-04-05 17:03:05 -03:00
Claudio Sanches 67274e8c2c Make sure that ID exists 2017-04-05 14:23:50 -03:00
Mike Jolley 811d59feec Fallback to home URL if no shop page is set for system status security check.
Fixes #13921
2017-04-05 10:03:41 +01:00
Claudio Sanches c88941a424 Removed extra taxes params.
Search, include and exclude are not handled by the REST API.
2017-04-04 14:54:01 -03:00
Mike Jolley 31cd2dcb90 Merge pull request #13853 from woocommerce/crud-security-hardening
CRUD security/hardening
2017-04-03 11:09:38 +01:00
Mike Jolley da86e02331 Merge pull request #13872 from woocommerce/fix/missing-rest-api-v2-webhooks-settings
Include missing REST API v2 from webhooks options.
2017-04-03 09:51:31 +01:00
Claudio Sanches 984edf07d2 Missing period 2017-04-02 03:27:58 -03:00
Claudio Sanches 5b51b915f6 Fixed a typo 2017-04-02 03:24:52 -03:00
Claudio Sanches 4922e17876 Include missing REST API v2 from webhooks options. 2017-04-02 03:07:09 -03:00
Mike Jolley 14802a0307 Remove double unserialization 2017-03-31 12:10:20 +01:00
Claudio Sanches be8036869e [REST API] Ignore 0 category while querying products 2017-03-30 13:43:59 -03:00
Claudio Sanches afccb22f58 [REST API] Fixed all products v1 query parameters 2017-03-28 14:44:11 -03:00
Claudio Sanches 54c353d67f [REST API] Fixed taxonomies query arguments.
Fixed the follow error:

PHP Warning: explode() expects parameter 2 to be string, array given in
includes/api/v1/class-wc-rest-products-controller.php on line 156

Error caused since terms are sanitized by wp_parse_id_list() that
already creates an array.

Closes #13790
2017-03-28 14:34:41 -03:00
Mike Jolley ca8fafdd36 Hide enabled/description 2017-03-24 13:27:47 +00:00
Mike Jolley 53a7d54253 Update settings once 2017-03-24 13:22:09 +00:00
Mike Jolley 8b4ce8460a Merge pull request #13757 from woocommerce/fix/rest-api/shipping-zones-methods-schema
[REST API] Properly handle required items of shipping zone methods
2017-03-24 10:39:23 +00:00
Mike Jolley 9af295d618 Merge pull request #13753 from woocommerce/fix/rest-api-shipping-zones-schema
[REST API] Fixed shipping zones schema
2017-03-24 10:38:51 +00:00
Mike Jolley a9f3f9b82c Merge pull request #13758 from woocommerce/fix/rest-api-system-status-schema
[REST API] System status schema fixes
2017-03-24 10:34:11 +00:00
Mike Jolley af8e892f97 Merge pull request #13759 from woocommerce/fix/rest-api-settings-links
[REST API] Fixed links of settings endpoint
2017-03-24 10:33:16 +00:00
Mike Jolley 803786ceeb Merge pull request #13755 from woocommerce/fix/shipping-zone-locations-schema
[REST API] Fixed shipping zone locations schema
2017-03-24 10:27:52 +00:00
Mike Jolley 285a49b7e0 Merge pull request #13747 from woocommerce/fix/rest-api-settings-schema
[REST API] Fixed settings schema.
2017-03-24 10:26:59 +00:00
Claudio Sanches 7381b008e0 [REST API] Fixed links for settings endpoint
Do not allow embed and updated the key to reflect the items from the endpoint response
2017-03-24 01:56:50 -03:00
Claudio Sanches 00b9f636a8 Fixed description of items in system status schema 2017-03-24 00:48:41 -03:00
Claudio Sanches bfbd45cf85 [REST API] System status schema items are all view context only 2017-03-24 00:43:46 -03:00
Claudio Sanches 5cc246b5cb [REST API] All items from system status endpoint should be readonly 2017-03-24 00:41:39 -03:00
Claudio Sanches 3ca1d946d9 [REST API] Properly handle required items of shipping zone methods 2017-03-23 22:19:16 -03:00
Claudio Sanches 7a671ab8a5 [REST API] Fixed shipping zone locations schema
This also fix improper sanitization and validation of the items.
2017-03-23 21:44:46 -03:00
Claudio Sanches 8f3f313eff Fixed coding standards 2017-03-23 20:56:02 -03:00
Claudio Sanches 85494e5d86 [REST API] Fixed shipping zones schema
"name" is only required while creating a new zone.
"order" do request to define "required" and is already sanitized by
"integer" type.
2017-03-23 20:51:21 -03:00
Claudio Sanches b1023c23c6 Fixed setting options endpoint tests 2017-03-23 20:45:22 -03:00
Claudio Sanches c24882f5d2 Apply change on rest_base to WC_REST_Setting_Options_Controller methods 2017-03-23 20:05:19 -03:00
Claudio Sanches fb80482d73 Fixed rest_base 2017-03-23 19:56:56 -03:00
Claudio Sanches 0a7076744e [REST API] Fixed settings/options rest_base 2017-03-23 19:52:35 -03:00
Claudio Sanches 39e1fd9fc3 Merge pull request #13745 from woocommerce/fix/rest-api-name-convention
[REST API] Fixed file name convention
2017-03-23 19:50:51 -03:00
Claudio Sanches 94cb95c000 Merge pull request #13746 from woocommerce/fix/rest-api-shipping-methods-schema
[REST API] All items in shipping_methods endpoint are readonly
2017-03-23 19:50:39 -03:00
Claudio Sanches e33235ebf3 [REST API] Fixed settings schema.
Included context and readonly for all items.

And removed sanitize_callback used only in write context
2017-03-23 18:15:30 -03:00
Claudio Sanches f65cbdbfa4 [REST API] All items in shipping_methods endpoint are readonly 2017-03-23 17:59:50 -03:00
Claudio Sanches 44319e20f7 [REST API] Fixed file name convention 2017-03-23 17:48:37 -03:00
Claudio Sanches b8faa2197c [REST API] Fixed default_attributes in legacy REST API 2017-03-23 17:23:12 -03:00
Claudio Sanches 8371882002 [REST API] Fixed a minor bug that prevents saving default_attributes 2017-03-23 17:19:07 -03:00
Mike Jolley 8a9e55ed33 Merge pull request #13730 from woocommerce/rest-api-fix-variations-image-object
[REST API] Handle variation image as object and not array
2017-03-23 11:05:17 +00:00
Mike Jolley b334af4544 Merge pull request #13732 from woocommerce/rest-api-fix-context
[REST API] Fixed context from items in schema
2017-03-23 11:04:50 +00:00
Claudio Sanches 6bc29aa77f [REST API] Removed deprecated download_type from products v2 2017-03-23 02:32:47 -03:00
Claudio Sanches 1072bea460 [REST API] Fixed variations context for products v2 2017-03-23 02:29:06 -03:00
Claudio Sanches 7dfd62ecfc [REST API] Fixed download_type context for products v1 2017-03-23 02:28:21 -03:00
Claudio Sanches 39ed5c00cf [REST API] Fixed refunded_by context in order refunds 2017-03-23 02:27:32 -03:00
Claudio Sanches 5a85e6a6f8 [REST API] Handle variation image as object and not array 2017-03-23 00:38:52 -03:00
Mike Jolley 8efb45312d Merge pull request #13726 from woocommerce/rest-api-product-review-gmt
[REST API] Fixed timezone date and included GMT date to product reviews
2017-03-22 21:51:34 +00:00
Mike Jolley 7afb1bb427 Merge pull request #13727 from woocommerce/rest-api-webhooks-gmt
[REST API] Fixed dates and included GMT dates in webhook endpoints for v2
2017-03-22 21:50:56 +00:00
Mike Jolley 21b1a83624 Merge pull request #13725 from woocommerce/rest-api-product-images-dates
[REST API] Include GMT dates for images in schema
2017-03-22 21:44:32 +00:00
Claudio Sanches c074c9d57b [REST API] Fixed date and included GMT dates to webhooks 2017-03-22 18:36:15 -03:00
Claudio Sanches 7f8c4b18e1 [REST API] Fixed date and included GMT date for webhook deliveries 2017-03-22 18:34:10 -03:00
Claudio Sanches 73f7a39d09 [REST API] Fixed timezone date and included GMT date to product reviews 2017-03-22 18:28:57 -03:00
Claudio Sanches 0f5e6373e4 [REST API] Include GMT dates for images in schema 2017-03-22 18:23:41 -03:00
Claudio Sanches dbd2409e03 [REST API] Added timezone and GMT dates in category image 2017-03-22 18:17:53 -03:00
Mike Jolley a876862bfb Merge pull request #13693 from woocommerce/orders-refunds-fix-schema
Include missing api_refund item to order refunds schema
2017-03-22 15:21:37 +00:00
Mike Jolley b55f59e975 Merge pull request #13694 from woocommerce/fix-missing-settings-schema
Include missing payment gateways and shippingmethods settings schema
2017-03-22 15:21:27 +00:00
Mike Jolley 64905a4d5e Merge pull request #13692 from woocommerce/order-notes-dates
Include date_created_gmt in order notes endpoint
2017-03-22 15:21:19 +00:00
Claudio Sanches 7f7fbcbb5d Improve order notes schema 2017-03-22 10:53:59 -03:00
Claudio Sanches 8184757e8a Improved descrition of items in schema 2017-03-22 10:51:52 -03:00
Claudio Sanches 7485b418d7 Improve api_refund description 2017-03-22 10:39:23 -03:00
Mike Jolley 795e6871c0 Merge pull request #13691 from woocommerce/fix-address-labels
Improve address labels to help translations
2017-03-21 21:28:16 +00:00
Claudio Sanches be8ec903b5 Include missing payment gateways and shippingmethods settings schema 2017-03-21 17:47:28 -03:00
Claudio Sanches d2e1565f97 Fixed undefined variables in payment methods endpoint 2017-03-21 17:34:16 -03:00
Claudio Sanches 3b1da48c8d Fixed type 2017-03-21 17:07:01 -03:00
Claudio Sanches 461543fdbf Include missing api_refund item to order refunds schema 2017-03-21 17:04:25 -03:00
Claudio Sanches ad1dab947e Include date_created_gmt in order notes endpoint 2017-03-21 16:37:06 -03:00
Claudio Sanches b528e25759 Improve address labels to help translations 2017-03-21 15:54:23 -03:00
Mike Jolley 83ca80d466 Spacing and rules 2017-03-21 13:14:51 +00:00
Claudio Sanches ee15a48b7e Merge pull request #13654 from woocommerce/fix-12804
[REST API] Return attribute names instead of slugs
2017-03-20 16:45:50 -03:00
Mike Jolley 94148cf512 Text changes 2017-03-20 16:01:55 +00:00
Mike Jolley dea59579bb description changes, and usage of ID's instead of IDs 2017-03-20 15:47:51 +00:00
Claudio Sanches e3c2c79e00 [REST API] Return attribute names instead of slugs
Closes #12804
2017-03-17 17:25:38 -03:00
Mike Jolley 196ba7b770 Ensure we have a product before checking if it exists
Fixes #13642
2017-03-17 16:26:26 +00:00
Mike Jolley 8d0a4a3caf Use correct getter in legacy API for get_discount
Fixes #13635
2017-03-17 14:37:19 +00:00
Claudio Sanches 1aa8218b26 Fixed oauth signature replacing spaces by plus sign
oAuth signatures are encoded by base64, that can generate plus signs.
See RFC 4648 <http://www.rfc-editor.org/rfc/rfc4648.txt>

By default plus signs in query params are replaced into spaces while
trying to access by super globals like $_GET and $_POST

Closes #13615
2017-03-16 14:23:45 -03:00
Claudio Sanches 59c2849736 Changed version 2.7 to 3.0 2017-03-15 13:36:53 -03:00
Mike Jolley eba500d96a array spacing 2017-03-15 16:08:23 +00:00
Mike Jolley 0f2f1699dc Spacing 2017-03-15 16:08:10 +00:00
Mike Jolley d55653a408 Merge branch 'master' into fix-13498
# Conflicts:
#	includes/class-wc-order.php
#	tests/unit-tests/crud/data.php
2017-03-15 15:52:40 +00:00
Mike Jolley 943c507d3f Merge pull request #13606 from woocommerce/fix-13525-api
Fix 13525 api
2017-03-15 15:43:45 +00:00
Claudiu Lodromanean f151576410 Add missing docblock 2017-03-15 08:32:17 -07:00
Claudiu Lodromanean 0bbce21fd2 Line up whitespace 2017-03-15 08:13:06 -07:00
Claudiu Lodromanean bbfea35cf0 API tweaks from feedback 2017-03-15 08:10:42 -07:00
Claudiu Lodromanean 4483c292ba Missed a break 2017-03-14 16:04:34 -07:00
Claudiu Lodromanean 6351bb0c22 Update coupon API 2017-03-14 16:00:15 -07:00
Claudiu Lodromanean 51b7110de2 Update API v2 2017-03-14 14:43:53 -07:00
Claudiu Lodromanean f4d012cf00 Wrong branch
This reverts commit 983896cb8b.
2017-03-14 13:27:40 -07:00
Claudiu Lodromanean 983896cb8b Update v2 coupon api 2017-03-14 13:25:45 -07:00
Mike Jolley 071d389c73 Merge pull request #13595 from woocommerce/13527-wp-api
Included access_expires_gmt to customer downloads endpoint v2
2017-03-14 19:21:08 +00:00
Claudio Sanches 1b1fc109f7 Included access_expires_gmt to customer downloads endpoint v2 2017-03-14 16:04:22 -03:00
Claudio Sanches 137de9eea6 Fixed access_expires in legacy REST API 2017-03-14 15:40:36 -03:00
Mike Jolley 9bee678819 API updates 2017-03-13 21:36:31 +00:00
Mike Jolley dd1b8e35dc API endpoints 2017-03-13 20:26:52 +00:00
Mike Jolley d2bd1a422c Merge pull request #13555 from woocommerce/fix-13526-rest-api
Update date usage in REST API v1 and v2
2017-03-13 16:04:38 +00:00
Mike Jolley 0098595339 Merge pull request #13554 from woocommerce/fix-13526-legacy-api
Fix dates in customer legacy endpoints
2017-03-13 15:59:02 +00:00
Claudio Sanches 3fbb8415d6 Change to single quotes 2017-03-10 19:14:28 -03:00
Claudio Sanches 8cefbd7c08 Added and fixed date properties for customers v2 endpoint 2017-03-10 19:10:41 -03:00
Claudio Sanches 7fb4340747 Updated dates for customers in REST API v1 2017-03-10 19:00:36 -03:00
Claudio Sanches c6fa88bde8 Both $server-format_datetime() variables are false by default 2017-03-10 18:15:05 -03:00
Claudio Sanches c353241599 Fixed dates in customer legacy endpoints 2017-03-10 18:10:03 -03:00
Claudio Sanches b36fea1ce5 [REST API] Use the same order as schema for refunds response 2017-03-10 17:26:36 -03:00
Claudio Sanches 65ed14635e Change bback $item to $data 2017-03-10 17:22:38 -03:00
Claudio Sanches 4ea40d997b [REST API] Improved order of items in Orders endpoint schema 2017-03-10 17:20:27 -03:00
Mike Jolley aac2e6a39c Refund schema 2017-03-10 19:30:07 +00:00
Mike Jolley e6752932dd Sort 2017-03-10 19:05:32 +00:00
Mike Jolley 61484ed711 Update API endpoints 2017-03-10 18:54:59 +00:00
Mike Jolley 69cc8f5150 API dates 2017-03-10 16:28:50 +00:00
Konstantinos Kouratoras f77b03ef94 Add missing trailing punctuation
Trailing punctuation is missing, causing duplication of the same text in translation, although it exists in another file:
https://github.com/woocommerce/woocommerce/blob/master/includes/api/class-wc-rest-settings-options-controller.php#L482
2017-03-10 17:01:47 +02:00
Illimar Tambek 21a54b93d8 Use wc_clean to sanitize fee title in legacy apis
This will bring legacy APIs in line with the new REST API, where the
order item names are sanitized using wc_clean and fix the
backwards-incompatible change of using sanitize_title.
2017-03-09 11:00:35 +02:00
Illimar Tambek 8e81a7e4e0 Set order id for fees & shipping on legacy api
If order ID is not set, the item will be created, but will not be
associated with the order being updated.
2017-03-09 10:53:10 +02:00
Aristeides Stathopoulos 10ffc92a73 Inline control structures are not allowed 2017-03-07 22:24:24 +02:00
Claudiu Lodromanean dd97b7bc50 Allow product ids in get_product_data 2017-03-07 09:40:28 -08:00
Claudio Sanches 1e576133b1 Merge pull request #13493 from woocommerce/fix-13489
Multiple arguments passed to isset must all be isset to be true. We need 'or'.
2017-03-07 13:01:03 -03:00
Mike Jolley 3eea782750 Brackets 2017-03-07 12:45:35 +00:00
Mike Jolley 3073867449 Multiple arguments passed to isset must all be isset to be true. We need 'or'.
Fixes #13489
2017-03-07 12:44:30 +00:00
Mike Jolley ce6c4a736f Merge pull request #13488 from woocommerce/downloads-consistency
Downloads data consistency
2017-03-07 12:13:03 +00:00
Claudio Sanches df1a87a749 [REST API] Removed extra product_name in v1 and added schema for product_name in v2 2017-03-06 19:48:26 -03:00
Claudio Sanches 50d62a5c4c REST API v1 should return 0 when limit_usage_to_x_items is empty 2017-03-06 18:14:32 -03:00
Claudio Sanches 8a77bb0957 Fixed undefined $id #13405 2017-03-04 12:15:52 -03:00
Claudiu Lodromanean e4db7f1d76 Update variable names to correct ones 2017-03-03 14:40:31 -08:00
Claudio Sanches 8d28e966c4 Let product CRUD handle terms IDs 2017-03-03 16:21:27 -03:00
Claudiu Lodromanean 51c5910866 Set line item prices on legacy API order create 2017-03-03 09:26:08 -08:00
Claudio Sanches f7d8ddffab Merge pull request #13452 from woocommerce/fix-13405
Legacy API tweaks
2017-03-02 22:42:46 -03:00
Claudiu Lodromanean bd4458fa90 Change create to save 2017-03-02 14:28:35 -08:00
Claudio Sanches 3aa86075d1 Prevent errors when do not have a paid date 2017-03-02 16:29:04 -03:00
Claudio Sanches 9fb2ba7783 [REST API] date_paid should be in date time format, closes #13255 2017-03-02 15:25:32 -03:00
Claudio Sanches e42e2a3335 Replace woocommerce_coupon_code filter by wc_format_coupon_code() 2017-02-22 14:40:24 -03:00
Akeda Bagus 43a63985c6
Install pages action should return array instead of string.
Fixes #13256.
2017-02-21 12:01:27 +07:00
Claudio Sanches 486a81bf12 Fixed coding standards 2017-02-17 16:10:15 -02:00
Claudio Sanches 0410518f31 Removed filter query param from products queries in REST API 2017-02-17 13:15:54 -02:00
Claudio Sanches b0e6a5ab5d Get object again after saved 2017-02-17 01:46:42 -02:00
Claudio Sanches 58d90a2ee8 Added legacy classes 2017-02-17 00:27:40 -02:00
Claudio Sanches ba7607fe00 Improved delete_item() for products and variations 2017-02-17 00:10:25 -02:00
Claudio Sanches 94b0800735 Use CRUD Controller for product variations 2017-02-16 22:51:36 -02:00
Claudio Sanches 55977d03f3 Do not allow manipulate variations on products endpoint 2017-02-16 22:51:24 -02:00
Claudio Sanches 63cb7e7c27 Use CRUD Controller for products 2017-02-16 22:26:21 -02:00
Claudio Sanches 31f68377f9 Fixed docblock 2017-02-16 22:25:20 -02:00
Claudio Sanches 197d2eb98e Use CRUD Controller for order refunds 2017-02-16 21:45:12 -02:00
Claudio Sanches 687433d5cc Use CRUD Controller for orders 2017-02-16 21:15:34 -02:00
Claudio Sanches 34cf70407e Use CRUD Controller for coupons 2017-02-16 20:31:36 -02:00
Claudio Sanches 7a52ec465b Fixed docblocks and removed dead variables 2017-02-16 18:05:06 -02:00
Claudio Sanches 9c15ca936b Merge pull request #13206 from woocommerce/rest-api-v2
REST API v2
2017-02-16 12:53:46 -02:00
Claudio Sanches f08c10d068 Fixed and improved the variations endpoint 2017-02-16 03:07:51 -02:00
Claudio Sanches e48243aa0b No private methods in REST API 2017-02-16 02:30:04 -02:00
Claudio Sanches 666d1f3c06 Prevent PHP notices while saving meta_data without an id 2017-02-16 01:44:45 -02:00
Claudio Sanches 75b2661ba3 Fixed undefined $meta[id] 2017-02-16 01:42:47 -02:00
Claudio Sanches 036a2f6c92 Allow save meta data for products in v2 2017-02-16 01:39:30 -02:00
Claudio Sanches d2818be2ba Order refunds v1 and v2 2017-02-16 01:27:44 -02:00
Claudio Sanches a19fa78cef Fixed orders get_collection_params() 2017-02-16 01:10:41 -02:00
Claudio Sanches 5ebeafac33 Removed duplicated code 2017-02-16 01:09:36 -02:00
Claudio Sanches eaf492a7f1 Fixed orders v2 schema 2017-02-16 01:08:02 -02:00
Claudio Sanches 503812971d Fixed deprecated warnings in orders v1 2017-02-16 00:45:20 -02:00
Claudio Sanches 5c0046b325 Do not allow save meta_data in orders v1 2017-02-16 00:33:17 -02:00
Claudio Sanches cc1992f1c8 Fixed item variation_id 2017-02-16 00:26:42 -02:00
Claudio Sanches 2d0a479750 Updated v1 methods 2017-02-16 00:22:15 -02:00
Claudio Sanches bad93d4c86 Improved naming for meta_data in schema 2017-02-15 12:28:45 -02:00
Claudio Sanches 0dac5e596c Included meeta data to products 2017-02-14 14:01:31 -02:00
Claudio Sanches ad3716a49e Fixed coupons schema 2017-02-14 13:59:22 -02:00
Claudio Sanches 5365fec1b3 V1 and V2 for products endpoint 2017-02-13 19:44:27 -02:00
Claudio Sanches d02d90c867 V1 and V2 for product taxonomies, reviews, reports, taxes and webhooks 2017-02-11 12:51:41 -02:00
Claudio Sanches e9f2e75d53 Fixed coding standards and file header 2017-02-11 12:51:13 -02:00
Claudio Sanches 190ebccd00 Fixed order notes 2017-02-10 21:34:01 -02:00
Claudio Sanches 7f82051dd9 Fixed returning values in write context 2017-02-10 21:32:40 -02:00
Claudio Sanches ca67d448a2 Fixed doing it wrong notices 2017-02-10 21:11:56 -02:00
Claudio Sanches e84acf3ee4 Order notes v2 2017-02-10 18:31:29 -02:00
Claudio Sanches e4b6c81f66 Customer downloads v2 2017-02-10 18:31:21 -02:00
Claudio Sanches b1b536b5d2 Give REST API authentication a lower priority
Bigger than add_filter( 'determine_current_user', 'wp_validate_auth_cookie' );
Smaller than add_filter( 'determine_current_user', 'wp_validate_logged_in_cookie', 20
);

This solve issues while trying to authenticate in a browser while logged
in.

Closes #13134
2017-02-10 15:35:52 -02:00
Claudio Sanches ec8fe6e30d [REST API] Implement CRUD to customers 2017-02-09 19:54:16 -02:00
Claudio Sanches 23fbc31dfb [REST API v1] Implement CRUD to coupons 2017-02-09 19:22:19 -02:00
Claudio Sanches 5d87a28407 Restored shipping zones base controller 2017-02-09 18:46:57 -02:00
Claudio Sanches 88d2875514 Restored REST API v1 2017-02-09 18:40:35 -02:00
Claudio Sanches 4352484ed7 REST API v2 2017-02-09 15:06:13 -02:00
Mike Jolley c49368f7fc Small id fix for #13118 2017-02-08 18:19:24 +00:00
Claudio Sanches 9b0a4e6c92 Merge pull request #13109 from woocommerce/fix-regressed-tests
Fix failing tests and array_merge error
2017-02-08 16:18:08 -02:00
Claudio Sanches 4e653139b6 Merge pull request #13117 from woocommerce/fix-12973
Moved refund logic
2017-02-08 16:15:54 -02:00
Mike Jolley 3cf772bcb5 Always use type arg 2017-02-08 18:08:13 +00:00
Mike Jolley eb150724c4 Make sure calculations are redone after setting line items
Closes #13075
2017-02-08 17:23:40 +00:00
Mike Jolley 11ef37880b Moved logic to wc_create_refund 2017-02-08 16:20:42 +00:00
Mike Jolley 52291e003c wrong method name 2017-02-08 16:20:05 +00:00
Mike Jolley af6ee6d420 Fix; wrong method calls 2017-02-08 16:19:13 +00:00
Claudiu Lodromanean 173c09dd04 Fix failing tests and array_merge error 2017-02-07 10:46:03 -08:00
Claudio Sanches 79256504a1 [REST API] Products endpoint fixes, closes #13031 2017-02-01 09:58:04 +01:00
Claudio Sanches 346e1ea1e0 Merge pull request #12996 from woocommerce/rest-api-missing-types-args
REST API Types
2017-01-27 14:49:35 -02:00
Claudio Sanches 24a5fe7592 Make WC_REST_Exception extend WC_Data_Exception 2017-01-27 13:52:21 -02:00
Toni Viemerö 2d92bdece6 Cast position as integer
Even though I'm sending `position` as integer in my REST request, it comes through as string value.

```
array (
  'id' => '186',
  'position' => '0',
)
```
2017-01-26 23:08:12 +02:00
Mike Jolley e930ccd16e object types to fix unit tests 2017-01-26 20:58:55 +00:00
Toni Viemerö 2b00615fa2 Remove tilde from i 2017-01-26 22:55:23 +02:00
Mike Jolley 82d7fe6e73 Added more missing args and types 2017-01-26 20:33:39 +00:00
Mike Jolley b727c61da7 Missing arg and setting types 2017-01-26 20:06:18 +00:00
Mike Jolley 2d23705431 ID arg definitions 2017-01-26 19:22:57 +00:00
Mike Jolley def35a5aa2 Cast request ids to int 2017-01-26 18:34:11 +00:00
Justin Shreve 474a307420 Introduce get_tax_class_slugs. 2017-01-25 13:38:13 -08:00
Claudio Sanches cdf59d6f68 E[REST API] Use WC_Data_Exception->getErrorData 2017-01-23 17:32:33 -02:00
Claudio Sanches f54e9e1e1a Fixed coding standards 2017-01-18 15:16:01 -02:00
Mike Jolley d92447713a Merge pull request #12852 from woocommerce/fix-terms-ordering
Restore attributes ordering
2017-01-17 12:28:41 +00:00
Claudio Sanches bd655af072 Restore attributes ordering, closes #12847 2017-01-16 21:11:56 -02:00
Claudio Sanches 3d352a680c [REST API] Allow search by multiples SKUs 2017-01-16 20:35:55 -02:00
matttallan c45d81e650 Make the system_status GET endpoint more customisable 2017-01-10 16:06:09 +10:00
Justin Shreve 291a662be1 The WC API returns exclude_product_ids and expiry_date. 2.7 renamed these in the API file, which we should not do until we version the endpoints. 2017-01-03 10:25:36 -08:00
Mike Jolley fc867c1a58 Return current variations after API update/create 2017-01-03 16:53:49 +00:00
Mike Jolley 859727d462 Merge pull request #12678 from franticpsyx/rest-api-set-order-item-action
[2.7] Add 'woocommerce_rest_set_order_item' REST API hook
2016-12-23 14:18:31 +00:00
Manos Psychogyiopoulos 42e09eac32 make rest api order item totals - always excl tax 2016-12-22 19:23:07 +02:00
Manos Psychogyiopoulos 0d6eae5fca add 'woocommerce_rest_set_order_item' hook 2016-12-22 17:56:14 +02:00
Mike Jolley 8f49724b17 Merge pull request #12674 from franticpsyx/rest-api-set-order-item-meta
[2.7] REST order item meta not intercepted
2016-12-22 14:38:39 +00:00
Mike Jolley 6861131d8f Fix version check 2016-12-22 14:30:47 +00:00
Manos Psychogyiopoulos dae45b8a29 fix paren position 2016-12-22 14:10:36 +02:00
Manos Psychogyiopoulos 6fc59cf2dc set REST order item meta 2016-12-22 12:29:57 +02:00
Mike Jolley 020a7b518f Fix API set of reviews_allowed
#12618
2016-12-16 11:24:11 +00:00
Claudio Sanches af52cf4f73 [2.6] [REST API] Throw exception when product image ID is not a valid attachment 2016-12-14 21:11:50 -02:00
Justin Shreve da1e14c087 Add WC CLI commands powered by the REST API. 2016-12-08 10:59:07 -08:00
Mike Jolley 4bacbaf90c Fix completed and paid date meta keys. 2016-12-08 11:19:32 +00:00
Mike Jolley 47fbae4d26 Product Visibility Taxonomies (#12527)
* Convert visibility and featured to taxonomy

* Comment

* Add missing tax_queries

* Only check SKU after read.

* Added visibility term for outofstock products to speed those queries up al

* wc_bool_to_string
2016-12-08 10:56:45 +00:00
Justin Shreve 63a29dd4db Add 'locale' to list of customer meta keys, and update expected type for 'object' for gateways, products, and shipping zones to fix some API issues. 2016-12-07 12:23:23 -08:00
Mike Jolley e8d119c42c Feedback 2016-12-07 18:13:17 +00:00
Mike Jolley 1ad852443b Invalid type 2016-12-07 15:54:35 +00:00
Mike Jolley 7f234a0b63 Update array schema 2016-12-07 14:24:44 +00:00
Mike Jolley cce08e6225 Indenting 2016-12-07 14:06:04 +00:00
Mike Jolley d4fbda1d68 Put back array for arrays of objects 2016-12-07 12:20:56 +00:00
Mike Jolley ba62599da0 Use objects, rather than arrays in schema when properties are defined 2016-12-07 11:36:46 +00:00
Mike Jolley ff05080208 Merge pull request #12462 from danielhuesken/fix_rest_setting_user_role
Set customer role for user if it not a customer on the current blog
2016-12-06 11:16:27 +00:00
Mike Jolley a8f6fd88f4 Merge pull request #12488 from woocommerce/save-coupon-wp-error
When saving coupons, return wp_error if necessary
2016-12-01 16:21:23 +00:00
Justin Shreve a94acad387 Fix title, enabled, and description updates for payment gateways. Add missing readonly on method title and description.
Bump WC version.
2016-11-29 11:57:56 -08:00
Justin Shreve 5d8ce22afe When saving coupons, return wp_errors if an item cannot be created or updated. 2016-11-29 03:06:10 -08:00
Mike Jolley 169c70f447 Fix get_stock_amount 2016-11-25 14:48:20 +00:00
Mike Jolley e3f19f85c6 Add readonly role field to API
Closes #12468 @claudiosanches
2016-11-25 13:04:21 +00:00
Daniel Hüsken 89026327b8 Set customer role for user if it not a customer on the current blog 2016-11-24 13:52:54 +01:00
Mike Jolley badd63bdd9 Merge pull request #12448 from woocommerce/webhook-api-versions
Allow send webhook payload using legacy API v3 or WP REST API integration
2016-11-24 10:22:01 +00:00
Mike Jolley 4ca49ba999 Fix tests 2016-11-23 16:27:18 +00:00
Mike Jolley d7dfdd3d10 Wrap all deprecation calls. 2016-11-23 16:15:00 +00:00
Claudio Sanches 7aafd6cce7 Set webhook API version in REST API 2016-11-22 22:01:16 -02:00
Mike Jolley deec278d4a Only update menu order and display if set.
Closes #12411
2016-11-22 15:50:35 +00:00
Mike Jolley 277d9db832 Fix coupon unit test 2016-11-22 13:59:08 +00:00
Justin Shreve c83823b97c Remove stray error_log 2016-11-22 03:39:26 -08:00
Justin Shreve afa294e70d Fix legacy API issues 2016-11-21 10:57:33 -08:00
Justin Shreve b20b3590c8 First pass at order items 2016-11-21 10:56:21 -08:00
Claudio Sanches ec56bd5015 Merge pull request #12386 from woocommerce/order-data-store
Order data stores
2016-11-21 15:14:22 -02:00
Mike Jolley 32de28355a Merge branch 'master' into order-data-store
# Conflicts:
#	includes/admin/meta-boxes/class-wc-meta-box-order-data.php
2016-11-21 14:45:46 +00:00
Claudio Sanches 2739243587 Use wc_get_coupon_id_by_code() while querying coupons by code 2016-11-18 17:12:01 -02:00
Claudio Sanches 40c90ac2d0 Use ID to query coupons 2016-11-18 17:10:41 -02:00
Claudio Sanches dd3a59d169 Return empty prices for deprecated cart_discount and order_discount in order legacy v1 2016-11-18 17:06:33 -02:00
Claudio Sanches fdb0cf499f Query coupons only by ID 2016-11-18 16:51:45 -02:00
Claudio Sanches 7a6bc5f9f5 Removed extra get_post() for orders 2016-11-18 16:46:59 -02:00
Claudio Sanches a8a5763b47 Removed extra ) 2016-11-18 16:39:31 -02:00
Claudio Sanches 073c924b98 Stop doing new queries only to get coupons gmt dates 2016-11-18 16:36:02 -02:00
Claudio Sanches 3074bd180f Apply GMT date for legacy v1 customers endpoint 2016-11-18 16:34:30 -02:00
Claudio Sanches 359e0a5a56 Use GMT dates in legacy API 2016-11-18 16:33:16 -02:00
Claudio Sanches 526a46325f Allow convert date to GMT in the legacy API 2016-11-18 16:13:46 -02:00
Claudio Sanches 6d66391a68 Merge pull request #12388 from woocommerce/terms-performance
Optimize terms queries
2016-11-18 13:01:38 -02:00
Mike Jolley da2cc7144c Merge pull request #12396 from woocommerce/update-customer-crud-endpoints
Apply Customer CRUD to legacy customer API endpoint
2016-11-18 12:35:24 +00:00
Mike Jolley 5d9a9b4dec Fix tests 2016-11-18 11:14:09 +00:00
Claudio Sanches 65c9a1b26b Fixed undefined method WC_Order_Item_Product::get_qty() 2016-11-18 06:08:00 -02:00
Claudio Sanches 91d6c74701 Apply Customer CRUD methods to update and create legacy API endpoints 2016-11-18 04:16:38 -02:00
Claudio Sanches e032001953 Fixed undefined variable on update_customer_meta_fields() 2016-11-18 03:37:59 -02:00
Claudio Sanches 4fd47e1b02 Use wc_get_orders() to query customer orders 2016-11-17 22:11:05 -02:00
Claudio Sanches aba4699ee2 Removed old get avatar method 2016-11-17 22:01:55 -02:00
Claudio Sanches 14996ef97a Updated customer legacy API endpoints 2016-11-17 21:55:52 -02:00
Claudio Sanches e1aeba9f21 Remove all wp_get_post_terms() and wp_get_object_terms() terms occurrences 2016-11-17 17:02:05 -02:00
Justin Shreve 20fca44334 Handle product quick and bulk edit. 2016-11-16 12:54:53 -08:00
Mike Jolley ecc503c2c7 Merge branch 'product-crud-test-fixes'
# Conflicts:
#	includes/class-wc-data-store.php
#	woocommerce.php
2016-11-16 15:09:32 +00:00
Justin Shreve 85cfe59988 Fix product related tests after product CRUD merge 2016-11-16 05:18:03 -08:00
Mike Jolley 76b32c9aa5 WIP - Product CRUD (#12065)
* Created function to get the catalog visibility options

* First methods for WP_Product crud

* Product set methods

* Fixed several erros while setting data

* First methods for WP_Product crud

* Product set methods

* Fixed several erros while setting data

* Hardcode the get_type per product class

* Initial look through getters and setters and abstract data

* Missing var

* Add related product functions and deprecate those in class.

* No need to exclude ID

* Fixed coding standards and improved the docblocks

* Get cached terms from wc_get_related_terms()

* Fixed wrong variable in wc_get_related_terms

* Use count() instead of sizeof()

* Sanitize ids later

* Remove unneeded comments

* wc_get_product_term_ids instead of related wording and use in other places.

get_the_terms is used here and also handles caching, something
wp_get_post_terms does not.

* Clean up the abstract product class a bit, deprecate two functions we have renamed, make update & create work properly, and add some tests for it.

* Bump template version

* Handle PR feedback: Remove duplicate regular_price update, allow changing of post status for products, remove deprecation for get_title since we might still offer it as a function

* Made abstract function useful

* External Product CRUD

* _virtual meta should be 'no', not taxable, in product unit test helper

* Grouped product class

* Tests

* Move children to meta and update test

* Use get_upsell_ids

* Spacing in query

* Moving and refactoring methods

* Availability html

* Tidy/add todos

* Rename method

* Put back review functions (still todo)

* missing $this

* get_price_including_tax/excluding_tax functions

* wc_get_price_to_display

* Price handling

* [Product CRUD] Variable (#12146)

* [Product CRUD] Variable Products

* Handle PR feedback.

* [Product CRUD] Grouped Handling (#12151)

* Handle grouped product saving

* Update routine

* [Product CRUD] Product crud terms (#12149)

* Category and tag id handling

* Replace template functions

* Remove todo

* Handle default name in save function

* Product crud admin save routine (#12174)

* Initial props

* Work on admin saving

* Set/get attributes

* Atom was moaning about this before but no longer.

* Update get_shipping_class

* WC_Product_Attribute

* Use getter in admin panel

* Fix attribute saving

* Spacing

* Fix comment

* wc_implode_text_attributes helper function

* [Product CRUD] Product crud admin use getters (#12196)

* Initial props

* Work on admin saving

* Set/get attributes

* Atom was moaning about this before but no longer.

* Update get_shipping_class

* WC_Product_Attribute

* Use getter in admin panel

* Fix attribute saving

* Move settings into new files

* Refactor panels and use getters

* Use getters for variation panel

* Revert save variation changes for now

* Add todos

* Fix downloads

* REST API CRUD Updates

* Additional API updates/fixes. Added some todos

* Fix final failing tests and implementing setters/getters and attributes functionality.

* Fix comparison for is_on_sale and remove download_type from WC_Product.

* Add a wc_get_products wrapper.

* Remove the download type input from the product data metabox for downloadable products. (#12221)

* [Product CRUD] Variations - setters, getters and admin. (#12228)

* Started on variation changes

* Stock functions

* Variation class

* Bulk change ->id to get_id() to fix variation form display

* Missing status

* Fix add to cart

* Start on stored data save

* save variation

* Save_variations

* Variation edit panel

* Save variations code works.

* Remove stored data code and fix save

* Improve legacy class

* wc_bool_to_string

* prepare_set_attributes

* Use wc_get_products

* More feedback fixes

* Feedback fixes

* Implement CRUD in the legacy REST API

* Handle PR feedback

* [Product CRUD] Getter setter proxy methods (#12236)

* Started on variation changes

* Stock functions

* Variation class

* Bulk change ->id to get_id() to fix variation form display

* Missing status

* Fix add to cart

* Start on stored data save

* save variation

* Save_variations

* Variation edit panel

* Save variations code works.

* Remove stored data code and fix save

* Improve legacy class

* wc_bool_to_string

* prepare_set_attributes

* Use wc_get_products

* More feedback fixes

* get_prop implementation in abstract and data classes

* Implement set_prop

* Change handling

* Array key exists

* set_object_read

* Use get_the_terms() instead of wp_get_post_terms()

wp_get_post_terms() is a wrapper around wp_get_object_terms() which does not
use the object cache, and generates a database query every time it is used.

get_the_terms() however can use data from the object cache if present.

* Allow WP_Query to preload post data, and meta in wc_get_products()

Allow WP_Query to bulk query for post data and meta if more than
just IDs are requested from wc_get_products(). Reduces query count
significantly.

* [Product CRUD] Variable, variation, notices, and stock handling (#12277)

* No longer needed

* Remove old todos

* Use getters in admin list

* Related and upsells update for CRUD

* Fix notice in gallery

* Variable fixes and todos

* Context

* Price sync

* Revert variation attributes change

* Return parent data in view context

* Defer term counting

* wc_find_matching_product_variation

* Stock manage tweaks

* Stock fixes

* Correct id

* correct id

* Better sync

* Data logic setter fix

* feedback

* First methods for WP_Product crud

* Product set methods

* Fixed several erros while setting data

* Hardcode the get_type per product class

* Initial look through getters and setters and abstract data

* Missing var

* Fixed coding standards and improved the docblocks

* Get cached terms from wc_get_related_terms()

* Fixed wrong variable in wc_get_related_terms

* Use count() instead of sizeof()

* Add related product functions and deprecate those in class.

* No need to exclude ID

* Sanitize ids later

* Clean up the abstract product class a bit, deprecate two functions we have renamed, make update & create work properly, and add some tests for it.

* Remove unneeded comments

* wc_get_product_term_ids instead of related wording and use in other places.

get_the_terms is used here and also handles caching, something
wp_get_post_terms does not.

* Handle PR feedback: Remove duplicate regular_price update, allow changing of post status for products, remove deprecation for get_title since we might still offer it as a function

* External Product CRUD

* _virtual meta should be 'no', not taxable, in product unit test helper

* Bump template version

* Made abstract function useful

* Grouped product class

* Tests

* Move children to meta and update test

* Use get_upsell_ids

* Spacing in query

* Moving and refactoring methods

* Availability html

* Tidy/add todos

* Rename method

* Put back review functions (still todo)

* missing $this

* get_price_including_tax/excluding_tax functions

* wc_get_price_to_display

* Price handling

* [Product CRUD] Variable (#12146)

* [Product CRUD] Variable Products

* Handle PR feedback.

* [Product CRUD] Grouped Handling (#12151)

* Handle grouped product saving

* Update routine

* [Product CRUD] Product crud terms (#12149)

* Category and tag id handling

* Replace template functions

* Remove todo

* Handle default name in save function

* Product crud admin save routine (#12174)

* Initial props

* Work on admin saving

* Set/get attributes

* Atom was moaning about this before but no longer.

* Update get_shipping_class

* WC_Product_Attribute

* Use getter in admin panel

* Fix attribute saving

* Spacing

* Fix comment

* wc_implode_text_attributes helper function

* [Product CRUD] Product crud admin use getters (#12196)

* Initial props

* Work on admin saving

* Set/get attributes

* Atom was moaning about this before but no longer.

* Update get_shipping_class

* WC_Product_Attribute

* Use getter in admin panel

* Fix attribute saving

* Move settings into new files

* Refactor panels and use getters

* Use getters for variation panel

* Revert save variation changes for now

* Add todos

* Fix downloads

* REST API CRUD Updates

* Additional API updates/fixes. Added some todos

* Fix final failing tests and implementing setters/getters and attributes functionality.

* Fix comparison for is_on_sale and remove download_type from WC_Product.

* Add a wc_get_products wrapper.

* Remove the download type input from the product data metabox for downloadable products. (#12221)

* [Product CRUD] Variations - setters, getters and admin. (#12228)

* Started on variation changes

* Stock functions

* Variation class

* Bulk change ->id to get_id() to fix variation form display

* Missing status

* Fix add to cart

* Start on stored data save

* save variation

* Save_variations

* Variation edit panel

* Save variations code works.

* Remove stored data code and fix save

* Improve legacy class

* wc_bool_to_string

* prepare_set_attributes

* Use wc_get_products

* More feedback fixes

* Feedback fixes

* Implement CRUD in the legacy REST API

* Handle PR feedback

* [Product CRUD] Getter setter proxy methods (#12236)

* Started on variation changes

* Stock functions

* Variation class

* Bulk change ->id to get_id() to fix variation form display

* Missing status

* Fix add to cart

* Start on stored data save

* save variation

* Save_variations

* Variation edit panel

* Save variations code works.

* Remove stored data code and fix save

* Improve legacy class

* wc_bool_to_string

* prepare_set_attributes

* Use wc_get_products

* More feedback fixes

* get_prop implementation in abstract and data classes

* Implement set_prop

* Change handling

* Array key exists

* set_object_read

* Use get_the_terms() instead of wp_get_post_terms()

wp_get_post_terms() is a wrapper around wp_get_object_terms() which does not
use the object cache, and generates a database query every time it is used.

get_the_terms() however can use data from the object cache if present.

* [Product CRUD] Variable, variation, notices, and stock handling (#12277)

* No longer needed

* Remove old todos

* Use getters in admin list

* Related and upsells update for CRUD

* Fix notice in gallery

* Variable fixes and todos

* Context

* Price sync

* Revert variation attributes change

* Return parent data in view context

* Defer term counting

* wc_find_matching_product_variation

* Stock manage tweaks

* Stock fixes

* Correct id

* correct id

* Better sync

* Data logic setter fix

* feedback

* Prevent notices

* Handle image_id from parent

* Fix error

* Remove _wc_save_product_price

* Remove todo

* Fixed wrong variation URLs

* Fixed undefined $image_id in WC_Product_Variation::get_image_id()

* Allow wc_rest_prepare_date_response() handle timestamps

* Updated get methods on REST API for variations

* Use variations CRUD to save variations metadata

* [Product CRUD] Abstract todos (#12305)

* Get dimensions and weights, with soft deprecation

* Product attributes

* Ratings

* Fix read method

* Downloads

* Feedback

* Revert "[Product CRUD] Abstract todos (#12305)"

This reverts commit 9a6136fcf8.

* Remove deprecated get_variation_id()

* New default attributes method

* [Product CRUD] Product Datastore (#12317)

* Fix up tests in the product/* folder.

* Handle data store updates for grouped, variable, external, simple, and general data store updates for products.

* Variations & variable changes.

* Update -functions.php calls to use data store.

* Add an interface for the public product data store methods.

* Finished product factory tests

* Correctly delete in the api, fix up some comments, and implement an interface for the public variable methods.

* Fix up delete in all versions of the api

* Handle feedback

* Match protected decloration to parent

* Product crud abstract todos (#12316)

* Get dimensions and weights, with soft deprecation

* Product attributes

* Ratings

* Fix read method

* Downloads

* Feedback

* Fix up store

* Fixed method returning in write context

* Fix error in variation admin

* Check for parent value - fixes tax class

* Remove old/complete todos

* Allow set tax class as "parent"

* Removed duplicated sync

* Fixed wrong variation URLs

* Fixed undefined $image_id in WC_Product_Variation::get_image_id()

* Allow wc_rest_prepare_date_response() handle timestamps

* Updated get methods on REST API for variations

* Use variations CRUD to save variations metadata

* Remove deprecated get_variation_id()

* New default attributes method

* Fixed method returning in write context

* Allow set tax class as "parent"

* Removed duplicated sync

* Fixed coding standards

* TODO is not accurate.

* Should pass WC_Product instancies to WC_Comments methods (#12327)

* Use new method in abstract order class to prevent headers sent issue in tests

* Fixed variable description in REST API

* Updated how create initial product variation

* Fixed a few fatal errors and warnings in Products CRUD (#12329)

* Fixed a few fatal errors and warnings in Products CRUD

* Fixed sync functions

* Add variations CRUD to legacy API (#12331)

* Apply crud to variable products in legacy API v1

* New REST API do not need fallback for default attributes

* Apply variations CRUD to legacy API v2

* Legacy v2 - save default attributes

* Variations in legacy API v2 do not have descriptions

* Fixed legacy API v2 variations params

* Applied variations CRUD to legacy API v3

* Sync before save in legacy apis

* Punc

* Removed API todos

* Removed test

* Products endpoint tweaks (#12354)

* Var type already normalized on CRUD

* Let Product CRUD handle with validation, sanitization and conditional checks

* Set downloads using WC_Product_Download

* Stop try catch exceptions more than one time

* Handle WC_Data_Exception in legacy API

* Complete remove products when fails on creating

* On creating I mean!

* Already have a method to complete delete products

* Fixed standards using WP CodeSniffer

* get_the_terms() returns false when empty

* get_manage_stock returns boolean

@claudiosanches

* Merge conflict

* Variations API endpoint fixes

* Product CRUD improvements (#12359)

* args is not used any more - remove todo

* Added test for attributes

* wc_get_price_excluding_tax usage

* parent usage

* Fix rating counts

* Test fixes

* Cleanup after tests

* Make sure status transition code runs even during API calls, not just in admin.

* Default visibility

* Fix attribute setting in API

* Use get name instead of get title

* variation id usage

* Improved cross sell templates

* variation_data

* Grouped product sync

* Notices

* Sync is not needed in API

* Delete

* Rename interfaces

* Update counts in data store
2016-11-16 12:38:24 +00:00
Mike Jolley af3496402d Merge branch 'master' into product-crud
# Conflicts:
#	includes/class-wc-data-store.php
#	woocommerce.php
2016-11-16 12:37:57 +00:00
Mike Jolley 599a2ad296 Product CRUD improvements (#12359)
* args is not used any more - remove todo

* Added test for attributes

* wc_get_price_excluding_tax usage

* parent usage

* Fix rating counts

* Test fixes

* Cleanup after tests

* Make sure status transition code runs even during API calls, not just in admin.

* Default visibility

* Fix attribute setting in API

* Use get name instead of get title

* variation id usage

* Improved cross sell templates

* variation_data

* Grouped product sync

* Notices

* Sync is not needed in API

* Delete

* Rename interfaces

* Update counts in data store
2016-11-16 12:17:00 +00:00
Mike Jolley d8fcfcefb8 Variations API endpoint fixes 2016-11-15 12:51:26 +00:00
Mike Jolley c18f6efeb4 Conflicts from master 2016-11-15 11:52:05 +00:00
Claudio Sanches b1c32e5e50 Products endpoint tweaks (#12354)
* Var type already normalized on CRUD

* Let Product CRUD handle with validation, sanitization and conditional checks

* Set downloads using WC_Product_Download

* Stop try catch exceptions more than one time

* Handle WC_Data_Exception in legacy API

* Complete remove products when fails on creating

* On creating I mean!

* Already have a method to complete delete products

* Fixed standards using WP CodeSniffer

* get_the_terms() returns false when empty

* get_manage_stock returns boolean

@claudiosanches
2016-11-15 10:26:42 +00:00
Mike Jolley 00ed627b29 Data stores 2016-11-14 18:18:08 +00:00
Claudio Sanches 657bd226f8 Removed API todos 2016-11-14 14:43:30 -02:00
Claudio Sanches 4827225454 Add variations CRUD to legacy API (#12331)
* Apply crud to variable products in legacy API v1

* New REST API do not need fallback for default attributes

* Apply variations CRUD to legacy API v2

* Legacy v2 - save default attributes

* Variations in legacy API v2 do not have descriptions

* Fixed legacy API v2 variations params

* Applied variations CRUD to legacy API v3

* Sync before save in legacy apis

* Punc
2016-11-14 11:31:52 +00:00
Claudio Sanches 6de7984f2d Fixed a few fatal errors and warnings in Products CRUD (#12329)
* Fixed a few fatal errors and warnings in Products CRUD

* Fixed sync functions
2016-11-14 11:02:56 +00:00
Claudio Sanches 83f74145ee Updated how create initial product variation 2016-11-11 17:29:56 -02:00
Claudio Sanches 1f31de39d9 Fixed variable description in REST API 2016-11-11 16:36:58 -02:00
Mike Jolley bc9d2c72aa TODO is not accurate. 2016-11-11 18:09:06 +00:00
Claudio Sanches 3dfb4c98e3 Fixed coding standards 2016-11-11 15:19:40 -02:00
Claudio Sanches cc109a7e0a Removed duplicated sync 2016-11-11 14:58:03 -02:00
Claudio Sanches 518c3a3467 Allow set tax class as "parent" 2016-11-11 14:58:03 -02:00