Commit Graph

1619 Commits

Author SHA1 Message Date
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
Claudio Sanches a17af7ad30 New default attributes method 2016-11-11 14:56:03 -02:00
Claudio Sanches 47e3f22810 Remove deprecated get_variation_id() 2016-11-11 14:56:03 -02:00
Claudio Sanches 5cab607be7 Use variations CRUD to save variations metadata 2016-11-11 14:56:03 -02:00
Claudio Sanches 9fd64f49e4 Updated get methods on REST API for variations 2016-11-11 14:56:02 -02:00
Mike Jolley ac6bda2f62 Product crud abstract todos (#12316)
* Get dimensions and weights, with soft deprecation

* Product attributes

* Ratings

* Fix read method

* Downloads

* Feedback

* Fix up store
2016-11-11 15:31:00 +00:00
Justin Shreve 90e43d97de [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
2016-11-11 14:31:15 +00:00
Mike Jolley 4fc03c9930 Revert "[Product CRUD] Abstract todos (#12305)"
This reverts commit 9a6136fcf8.
2016-11-11 11:58:57 +00:00
Mike Jolley 9a6136fcf8 [Product CRUD] Abstract todos (#12305)
* Get dimensions and weights, with soft deprecation

* Product attributes

* Ratings

* Fix read method

* Downloads

* Feedback
2016-11-11 11:43:52 +00:00
Claudio Sanches fe4b45481d Include security data in system status endpoint 2016-11-09 22:19:12 -02:00
Mike Jolley 09ea4ba91f [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
2016-11-09 16:10:37 +00:00
Justin Shreve 9072b1da43 Handle PR feedback 2016-11-09 16:05:50 +00:00
Justin Shreve e551a846b8 Implement CRUD in the legacy REST API 2016-11-09 16:05:50 +00:00
Mike Jolley 5f4dbdb733 [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
2016-11-09 16:05:49 +00:00
Justin Shreve 1985620f33 Fix comparison for is_on_sale and remove download_type from WC_Product. 2016-11-09 15:47:23 +00:00
Justin Shreve 37c8e62fcf Fix final failing tests and implementing setters/getters and attributes functionality. 2016-11-09 15:47:23 +00:00
Justin Shreve e31a75d584 Additional API updates/fixes. Added some todos 2016-11-09 15:47:23 +00:00
Justin Shreve bcae6fb1d6 REST API CRUD Updates 2016-11-09 15:47:23 +00:00
Mike Jolley af32b3ea91 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
2016-11-09 15:43:20 +00:00
Claudio Sanches f23a529329 [REST API] Throw messages when trying to manipulate variations in products endpoint 2016-11-08 13:55:33 -02:00
Claudio Sanches e1b914d227 Reverted changes that allowed manipulate variations on products endpoint (#12255) 2016-11-08 11:14:01 +00:00
Claudio Sanches 0c3b0f57e9 [REST API] Delete refund if payment gateway API fails, closes #12248 2016-11-04 18:06:15 -02:00
Claudio Sanches fa7775254b REST API - Allow remove product category image (#12247)
* Allow remove product category images

* Allow remove sending an empty array too
2016-11-04 10:19:34 +00:00
Rami Yushuvaev 55f08d62ae add translators comments 2016-10-29 23:03:28 +03:00
Rami Yushuvaev 93d55dade9 add translators comments 2016-10-29 20:32:38 +03:00
Claudio Sanches c58940258a Updated $order->id to $order->get_id() 2016-10-25 22:46:36 -02:00
Rami Yushuvaev 140d0efb99 i18n: Avoid using HTML tags in translation strings (#12166)
* i18n: Remove some HTML tags from translation strings

* i18n: simpler translation string

* i18n: translations strings with surrounding `<strong>` HTML tags should be moved outside the translation string

* i18n: Avoide using `<code>' HTML tags in translation strings

* i18n: Split the notice to avoide using HTML tags in translation strings
2016-10-24 21:56:37 -02:00
Daniel Hüsken ab7f9dd674 Flush rewrite rules with cron for attribute terms (#12132) 2016-10-21 15:29:50 +01:00
Mike Jolley 73408342bc Correct $value in API 2016-10-19 17:16:13 +01:00
Mike Jolley 81778555c8 Use order statuses when getting refunds in api.
Closes #12102

@claudiosmweb
2016-10-19 12:53:49 +01:00
Claudio Sanches f218b6cfd9 [REST API] Allow filter by on sale products, closes #12093 (#12105) 2016-10-18 11:40:13 +01:00
Claudio Sanches ee061f98ec [REST API] Better sanitization for product taxonomy filters 2016-10-17 14:39:02 -02:00
Bryce Adams ea1f9aea65 Remove last order from customers part of the API (#12081)
Proposed solution to close #12080

* Also removes from tests.
2016-10-14 14:38:35 +01:00
Claudio Sanches 507bbffc66 Fixed coding standards 2016-10-14 11:19:20 +01:00
Claudio Sanches ec79238f30 Added min_price and max_price product filter 2016-10-14 11:19:20 +01:00
Claudio Sanches 2400a72b93 Filter products in stock or out of stock 2016-10-14 11:15:11 +01:00
Claudio Sanches e57ae3da27 Filter products by tax class 2016-10-14 11:15:11 +01:00
Claudio Sanches 842c39b525 Make easy to add query_meta 2016-10-14 11:15:11 +01:00
Claudio Sanches 92404fc867 Allow filter products by featured post meta 2016-10-14 11:15:11 +01:00
Claudio Sanches 4aa1689015 Better description for product taxonomy filters 2016-10-14 11:15:11 +01:00
Manos Psychogyiopoulos 4658245625 Revise the stock + stock status saving logic (#11858)
* use set_stock to reset stock meta when not managing stock

Ensures that the 'woocommerce_{ variation | product }_set_stock' hooks fire to refllect the fact that stock becomes infinite.

* track state of Manage Stock? option

* quick/bulk edit fixes

* reapply quick and bulk edit fixes

* improve conditional reset logic that prevents actions from *_set_stock actions from firing with every save
2016-10-12 12:51:40 +01:00
Claudio Sanches 657c312cae Fix strings case (#12069)
* Fixed case for all _e, esc_attr_e and esc_html_e strings

* Fixed case for all _n_noop strings

* Fixed case for all _x strings

* Fixed case for all __, esc_html__ and esc_attr__ strings

* Fixed a few more strings

* Fixed strings in unit tests

* Fix PayPal Standard case.

* Save Order text
2016-10-12 11:16:30 +01:00
Claudio Sanches 77722ecbe3 Fixed missing text domains (#12066) 2016-10-12 11:05:37 +01:00
Rami Yushuvaev 65cf1bcb6f Merge branch 'master' of https://github.com/ramiy/woocommerce into i18n/similar-strings 2016-10-11 21:14:56 +03:00
Daniel Hüsken 9b12df381e Rest-API fix action not called if no core attribute param updated 2016-10-11 13:40:54 +02:00
Rami Yushuvaev 83e938af1e i18n: Merge similar translation strings to reduce the total strings count #11905 2016-10-11 04:39:13 +03:00
Claudio Sanches 0d756deb1c [REST API] Allow filter order note by type 2016-10-05 12:27:06 -03:00
Claudio Sanches 226482baf5 Fixed coding standards 2016-10-04 14:36:18 -03:00
Claudio Sanches c62c5b835e Updated values to check if line item is null 2016-10-04 13:39:37 -03:00
rspublishing 180ac717a8 Coding standards 2016-09-30 16:23:17 +02:00
rspublishing 424948f4de Coding standards 2016-09-30 16:15:56 +02:00
rspublishing 5814dc3a97 Adds a system status tool for clearing orphaned variations 2016-09-30 10:39:37 +02:00
Justin Shreve ca10cca69b Merge pull request #11990 from woocommerce/variations-rest-api
Implement Variation Endpoints & Tests
2016-09-29 15:48:36 -07:00
Justin Shreve c1d7111240 Implement separate variation endpoints for managing a product's variations. Also adds tests. 2016-09-29 14:44:14 -07:00
Claudio Sanches 1230be795e Fixed REST API docs, codeclimate and coveralls URLs 2016-09-28 09:09:06 -03:00
Matty d037c4a3f2 Ensures any checks for 'woothemes.com' in logic also check for 'woocommerce.com'. 2016-09-28 12:19:58 +02:00
Claudio Sanches 9817caccdd Removed multiple lines #11915 2016-09-14 11:27:11 -03:00
Taylor Lovett 01a92a3bcb Add filter to continue uploading images if one fails (api) 2016-09-13 21:03:05 -04:00
Claudio Sanches 16eb18a0ab [REST API] Include variation description, closes #11815 2016-09-13 19:28:25 -03:00
Mike Jolley e0489e4706 [2.6][api] Skip empty attribute. 2016-09-12 15:13:32 +01:00
Mike Jolley 1037f9b8c4 Merge pull request #11895 from tlovett1/api-silent-images-fail
(API) Add filter to continue uploading images if one fails
2016-09-12 14:53:58 +01:00
Mike Jolley f9b2ed88c2 Merge branch 'pr/11883'
# Conflicts:
#	includes/class-wc-shortcodes.php
2016-09-12 14:53:04 +01:00
Mike Jolley 978fa976f7 [2.6][api] Convert posted names to the API to slugs before save.
Fixes #11871

@claudiosmweb can you review the API changes made today - there are a
few like this - for inclusion in 2.6 asap. Let me know on slack.
2016-09-12 14:37:44 +01:00
Mike Jolley 8d19028754 Merge branch 'pr/11876' 2016-09-12 14:23:10 +01:00
Taylor Lovett 6eae03c6df Make sure to continue to next image on error 2016-09-09 23:49:45 -04:00
Taylor Lovett 3c164427ca Add filter to continue uploading images if one fails (api) 2016-09-09 22:41:41 -04:00
Aristeides Stathopoulos 230c0398b3 fix failing test from master 2016-09-09 19:39:09 +03:00
Aristeides Stathopoulos 831b4463d0 Merge pull request #5 from woothemes/master
sync
2016-09-09 16:49:48 +03:00
Justin Shreve c8ddca0635 Merge pull request #11882 from woothemes/settings-and-api-fixes
Settings & API Fixes
2016-09-09 05:52:23 -07:00
Justin Shreve e1e6c682b5 * Stop using _ as a prefix for protected or private vars and functions. We have a keyword for that.
* Introduces set_id and get_id to WC_Data for the CRUD classes to share
2016-09-09 05:36:54 -07:00
Aristeides Stathopoulos 7a509f53d4 Merge pull request #4 from woothemes/master
sync
2016-09-09 03:17:28 +03:00
Aristeides Stathopoulos 9668247b95 WordPress.PHP.YodaConditions.NotYoda 2016-09-09 03:14:28 +03:00
Justin Shreve a36b25a68f Add setting validation to the REST API 2016-09-08 15:20:15 -07:00
Justin Shreve b665f5e1c6 Setting IDs do not need to be unique across the entire system.. just the group. 2016-09-08 15:20:15 -07:00
Justin Shreve 49676d1781 Hook up email settings to the API
Add support for option_key when registering settings, so we can also manage settings that are stored in the array of a single option.
2016-09-08 15:20:15 -07:00
Justin Shreve 9889222bd1 Swap "doesn't" with "does not" in 404 error messages. 2016-09-08 15:17:02 -07:00
Daniel Hüsken 47561278b8 API: Attribute slug will not be sanitize correctly #11874 2016-09-08 15:06:19 +02:00
Daniel Hüsken 367e16ffa9 API Variation returns sanitize attribute names #11868 2016-09-08 14:13:39 +02:00
Mike Jolley 238483ff2b No need to strip pa_ here
Closes #11868
2016-09-08 12:04:51 +01:00
Mike Jolley 9cca27f21e Take out admin check
@justinshreve I’m not sure why we had the admin check there, but I’ve
removed it because the setting of WP_ADMIN was breaking unrelated unit
tests. I think we should leave constants alone if possible and just
modify gateways.
2016-09-07 12:37:39 +01:00
Mike Jolley 311c540662 Merge pull request #11833 from aristath/master
Coding Standards (2nd pass)
2016-09-07 10:14:17 +01:00
Justin Shreve 5113a8d19f Fix unusued variable in Payment Gateway's prepare_item_for_response and fix the phpdoc for get_gateway 2016-09-06 13:34:25 -07:00
Justin Shreve 3dc0c5242a Update method_title and method_description to use their get_ methods, also update the resource does not exist message, based on feedback. 2016-09-06 10:32:54 -07:00
Justin Shreve fd952e8efa Payment Gateways API 2016-09-05 14:49:29 -07:00
Aristeides Stathopoulos 2346c3b735 Squiz.ControlStructures.ControlSignature.SpaceAfterCloseBrace 2016-09-02 06:15:49 +03:00
Aristeides Stathopoulos 5280722f21 Squiz.Commenting.InlineComment.SpacingAfter 2016-09-02 05:47:24 +03:00
Aristeides Stathopoulos cc0b29ccf4 PEAR.Functions.FunctionCallSignature.SpaceAfterCloseBracket 2016-09-02 05:00:46 +03:00
Aristeides Stathopoulos d4e3faf014 PEAR.Functions.FunctionCallSignature.SpaceAfterOpenBracket 2016-09-02 04:51:31 +03:00
Aristeides Stathopoulos 0516e96843 PEAR.Functions.FunctionCallSignature.SpaceBeforeCloseBracket 2016-09-02 04:33:57 +03:00
Aristeides Stathopoulos 8fe4cd65a4 PEAR.Functions.FunctionCallSignature.SpaceBeforeOpenBracket 2016-09-02 04:12:22 +03:00
Aristeides Stathopoulos d922d045a7 Squiz.Commenting.BlockComment.NoNewLine + indentation on class-wc-cart 2016-09-02 04:03:52 +03:00
Aristeides Stathopoulos e07511502d Additional coding-standards fixes. 2016-09-02 03:26:24 +03:00
Aristeides Stathopoulos fde1037757 fix failing tests. 2016-09-01 23:50:14 +03:00
Mike Jolley 1b2df3dd3b Merge branch 'pr/11797'
# Conflicts:
#	includes/admin/meta-boxes/class-wc-meta-box-coupon-data.php
#	includes/api/class-wc-rest-coupons-controller.php
#	includes/class-wc-coupon.php
#	tests/unit-tests/api/coupons.php
#	tests/unit-tests/coupon/crud.php
2016-09-01 11:46:05 +01:00
Mike Jolley 402d0ff077 Merge branch 'master' into pr/11797
# Conflicts:
#	includes/admin/meta-boxes/class-wc-meta-box-coupon-data.php
#	includes/api/class-wc-rest-coupons-controller.php
#	includes/class-wc-coupon.php
#	tests/unit-tests/api/coupons.php
#	tests/unit-tests/coupon/crud.php
2016-09-01 11:43:31 +01:00
Mike Jolley 4e14c4abeb Merge pull request #11821 from woothemes/customer-exceptions
Customer CRUD/API exceptions
2016-09-01 10:58:35 +01:00
Claudio Sanches f6d20eb324 [REST API] Fixed products query by SKU 2016-08-31 19:36:55 -03:00
Claudio Sanches 6def1188ab Force post_type in products controller 2016-08-31 19:22:27 -03:00
Justin Shreve 43e55c3336 Instead of catching just the post_status, don't overwrite any filter args. 2016-08-31 15:15:28 -07:00
Justin Shreve 6cb9e1b613 Since we support WP_Query filtering via the API, make sure post_status filtering works too. 2016-08-31 14:39:37 -07:00
Mike Jolley d9a0d0988b Handle meta data and fix unit tests 2016-08-31 15:43:34 +01:00
Mike Jolley 047242515d Make API and CRUD use consistent keys and make use of data 2016-08-30 17:50:35 +01:00
Mike Jolley b82415dfa3 Handle exceptions in API 2016-08-30 15:57:45 +01:00
Mike Jolley 499e190efb Merge pull request #11785 from woothemes/coupon-exceptions
Coupon Exceptions and REST/CRUD improvements
2016-08-30 11:44:19 +01:00
Mike Jolley df35845d4d wc_get_coupon_id_by_code 2016-08-30 11:43:53 +01:00
Justin Shreve de4296dd15 Add some missing API pieces:
* Value was missing from the settings schema (but was still present in the response).
* Added delete endpoint for shipping zones.
* Corrected permissions check/error for shipping zone methods.
2016-08-29 10:22:29 -07:00
Aristeides Stathopoulos 72696901f3 WordPress.WhiteSpace.OperatorSpacing.SpacingAfter 2016-08-27 09:14:06 +03:00
Aristeides Stathopoulos e69fafbda7 WordPress.WhiteSpace.OperatorSpacing.NoSpaceAfter 2016-08-27 09:06:22 +03:00
Aristeides Stathopoulos f2730eea02 WordPress.WhiteSpace.ControlStructureSpacing.BlankLineAfterEnd 2016-08-27 08:57:05 +03:00
Aristeides Stathopoulos dea39df779 WordPress.WhiteSpace.ControlStructureSpacing.NoSpaceAfterOpenParenthesis 2016-08-27 07:38:29 +03:00
Aristeides Stathopoulos 9543c7fe1c WordPress.WhiteSpace.ControlStructureSpacing.NoSpaceBeforeCloseParenthesis 2016-08-27 07:29:49 +03:00
Aristeides Stathopoulos 82f3cc221e WordPress.WhiteSpace.ControlStructureSpacing.NoSpaceBeforeOpenParenthesis 2016-08-27 07:23:02 +03:00
Aristeides Stathopoulos 56fd004a72 WordPress.Arrays.ArrayDeclaration.FirstIndexNoNewline 2016-08-27 06:56:09 +03:00
Aristeides Stathopoulos 6c30f84fa2 WordPress.Arrays.ArrayKeySpacingRestrictions.SpacesAroundArrayKeys 2016-08-27 06:23:21 +03:00
Aristeides Stathopoulos ff852038c9 WordPress.Arrays.ArrayKeySpacingRestrictions.NoSpacesAroundArrayKeys 2016-08-27 06:11:30 +03:00
Aristeides Stathopoulos 17961f6484 WordPress.Arrays.ArrayDeclaration.ValueNoNewline 2016-08-27 06:04:10 +03:00
Aristeides Stathopoulos 58b9df6564 WordPress.Arrays.ArrayDeclaration.NoSpaceAfterOpenParenthesis 2016-08-27 05:23:54 +03:00
Aristeides Stathopoulos ec8a0b288b PHPCS: WordPress.Arrays.ArrayDeclaration.NoCommaAfterLast 2016-08-27 05:08:49 +03:00
Aristeides Stathopoulos b063bcfe4c last item in a multiline-array should end in a comma 2016-08-27 04:46:45 +03:00
Mike Jolley 8eef062079 Merge pull request #11781 from woothemes/shipping-method-api
Shipping Methods API
2016-08-26 16:51:55 +01:00
Mike Jolley b0672a000a Fixed unit tests 2016-08-26 16:44:00 +01:00
Mike Jolley 7d8bacc2b3 Missing $wpdb 2016-08-26 16:15:18 +01:00
Mike Jolley f034e1f69d Exception handling and REST optimisation 2016-08-26 15:42:42 +01:00
Mike Jolley 3ff41ceea4 No need to add meta since CRUD handles this 2016-08-26 15:26:05 +01:00
Mike Jolley 5c40236d79 Fixes notices 2016-08-26 15:24:01 +01:00
Mike Jolley ed01282340 Made data match schema 2016-08-26 15:20:44 +01:00
Justin Shreve 849a208e54 Fix issues based on feedback. Make sure to use WC_Shipping_Zone's methods when avaiable, fix up some coding standards, and add a new delete_shipping_method to WC_Shipping_Zone 2016-08-26 04:57:30 -07:00
Mike Jolley 6b6c856cc7 Filter the template path
Closes #11774
2016-08-26 11:03:08 +01:00
Justin Shreve 147c18c197 Add the ability to update/create/delete shipping method instances 2016-08-25 20:34:26 -07:00
Justin Shreve 3ceb189118 Add GET /shipping_methods and GET /shipping_methods/METHOD_ID
Also adds tests.
2016-08-25 11:48:17 -07:00
Mike Jolley 077f57f139 Merge branch 'master' into WC_Data_Exception 2016-08-25 11:03:14 +01:00
Claudio Sanches 16e386c873 Merge pull request #11757 from woothemes/get-coupon-code-by-id
Get coupon code by
2016-08-24 14:18:23 -03:00
Mike Jolley cde78abed3 Working on catching errors 2016-08-24 15:26:35 +01:00
Mike Jolley d9798f7226 Set reading to prevent exceptions during DB load 2016-08-24 14:37:19 +01:00
Claudio Sanches c8726cc42b Fixed method return value in write context
cc @justinshreve
2016-08-24 01:50:12 -03:00
Claudio Sanches 3633960165 Removed dead global variables 2016-08-23 20:02:38 -03:00
Claudio Sanches 00b2e43250 DRY 2016-08-23 20:00:30 -03:00
Claudio Sanches 5e069a4f4e Merge pull request #11756 from woothemes/update/coupon-api-crud
Update Coupon API to use CRUD
2016-08-23 19:51:27 -03:00
Justin Shreve 77088a4a22 Coupon ID will also be an integer, so we can switch the prepare statement to expect that 2016-08-23 13:55:21 -07:00
Mike Jolley 3e3e35d50d Add set prop/get prop helper, error handler, and validation to item product class 2016-08-23 14:58:44 +01:00
corsonr f430c23cdc fix issue 11751 2016-08-23 11:16:38 +02:00
Justin Shreve a243829db6 Convert Coupon Controller to use CRUD operations 2016-08-22 15:06:21 -07:00
Justin Shreve 7da590e422 Coupon Tests:
* Move tests for legacy endpoints to a legacy test folder.
* Create a test class to test the WC-API coupons endpoint.
2016-08-22 13:50:32 -07:00
Claudio Sanches eb55096a32 Allow oAuth1.0a authentication using headers 2016-08-22 17:39:41 -03:00
Claudio Sanches 38e1be71eb ID first for all elements in the REST API
cc @mikejolley
2016-08-22 16:58:34 -03:00
Claudio Sanches 0da91bb7d7 Merge pull request #11746 from woothemes/crud-meta-id
Swaps meta_id for id across crud and api
2016-08-22 16:43:57 -03:00
Mike Jolley f34f1aa635 Simplify prepare_line_items logic 2016-08-22 19:58:30 +01:00
Mike Jolley 39f4a1cdca Swaps meta_id for id across crud and api 2016-08-22 19:37:34 +01:00
Mike Jolley 3d696266d2 Set_address 2016-08-22 17:03:59 +01:00