Commit Graph

848 Commits

Author SHA1 Message Date
Mike Jolley d3666738d8 Merge branch 'pr/15069' 2017-05-23 18:56:58 +01:00
Mike Jolley db012b3a12 Merge pull request #15011 from woocommerce/fix/14999
Add abspath checks
2017-05-23 15:57:35 +01:00
Mike Jolley 89ece25a32 Fix stock/backorder notice when stock management is disabled
Fixes #15145
2017-05-18 15:28:38 +01:00
Claudiu Lodromanean 05132f724c Merge pull request #15067 from woocommerce/fix/15047
$post global is not required in meta box callback
2017-05-15 10:35:07 -07:00
Rasmus Bengtsson 185934fad9 Fix phpdoc to include params and correct types 2017-05-15 13:50:52 +02:00
Mike Jolley 7c63c21eaf $post global is not required in meta box callback
Fixes #15047
2017-05-15 12:29:11 +01:00
Rasmus Bengtsson 6a7fc8650f Remove unused local variables 2017-05-15 12:06:52 +02:00
Mike Jolley bc4d36fd3f Add abspath checks
Closes #14999
2017-05-10 19:03:19 +01:00
Claudio Sanches 6f126d7c60 Merge pull request #14853 from woocommerce/fix/14818
Improve "Save Order" button to reproduce WordPress post/page behavior
2017-05-03 17:36:22 -03:00
Claudio Sanches 63552c9757 Fixed conflict between global attributes and custom attributes.
Check if is a custom attribute before trying to get an ID from a global attribute.
2017-05-03 16:30:50 -03:00
Claudio Sanches 67258ec8da Improve "Save Order" button to reproduce WordPress post/page behavior
Display "Create" when order is in "auto-draft" status and then display only "Update" after.

Closes #14818
2017-05-03 15:06:06 -03:00
Claudio Sanches e46cb8813d Fixed undefined customer_user when remove users from order in admin 2017-04-28 13:13:18 -03:00
Mike Jolley ca0c3e0bb8 Merge pull request #14064 from rafsuntaskin/develop
added bulk variation update for stock status, resolves #14046
2017-04-27 17:37:59 +01:00
Mike Jolley 891e55e1cf Merge pull request #14721 from woocommerce/fix/14670
Avoid escaped quote chars in strings
2017-04-27 15:34:27 +01: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
Mike Jolley 801f5e1eb1 Avoid escaped quote chars in strings
Closes #14670
2017-04-26 13:51:53 +01:00
avinapatel 824f13924e Made the buyer phone number clickable in the in the order backend. 2017-04-26 17:48:56 +05:30
Mike Jolley 63e8221e2c Add required placeholder for meta fields
Closes #14700
2017-04-26 11:35:34 +01:00
Mike Jolley 2a4103d776 Removed the non-functional order total input and combine the recalculation buttons into one working button.
Fixes #14494
2017-04-18 19:44:42 +01:00
claudiulodro f21e47f7d0 Update save logic to allow filtering 2017-04-17 14:45:53 -07:00
Mike Jolley 41f7a637cd Use refund date not order date in refund display
Fixes #14332
2017-04-13 13:24:48 +01:00
rafsuntaskin ac5de585e5 added bulk variation update for stock status, resolves #14046 2017-04-07 02:11:04 +06:00
Claudio Sanches 4032167f6c Removed extra variation description extra sanitization 2017-04-06 13:21:34 -03:00
Mike Jolley 82cdf65c04 if product type field is not posted, we should maintain existing type, not change to simple 2017-04-06 15:56:55 +01:00
Claudio Sanches d881bf0500 Coding standards and changelog for #13867 2017-04-04 11:40:02 -03:00
Claudio Sanches faf0104b49 Merge pull request #13260 from JeroenSormani/product-data-tab-priority
Add 'priority' support to product data tabs
2017-04-04 11:33:48 -03:00
Claudiu Lodromanean 955f20be80 Do custom buttons before Cancel and Save buttons 2017-03-31 11:28:00 -07:00
corsonr 0608eaf11a Fix 13820
Add the “description” class to `.cancel_sale_schedule` so that the
“cancel” link gets aligned properly with a margin left of 7 pixels.
2017-03-29 10:01:45 +02:00
pierrebuet 32f8142c91 Fixes #13748 2017-03-24 12:13:00 +00:00
Mike Jolley a0949747fa Hide refund email from resend option
Closes #13713

See https://github.com/woocommerce/woocommerce/issues/13738
2017-03-23 11:25:03 +00:00
Mike Jolley b1e76fa68e Merge pull request #13718 from rellect/correct-hours-minutes-rtl
RTL - Correct hour:minute input alignment in order details
2017-03-22 19:02:29 +00:00
refael iliaguyev baef6f3907 correct hours:minutes inputs in rtl 2017-03-22 20:17:35 +02:00
Claudio Sanches b528e25759 Improve address labels to help translations 2017-03-21 15:54:23 -03:00
Claudio Sanches 59c2849736 Changed version 2.7 to 3.0 2017-03-15 13:36:53 -03: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 a34dd0480d Merge pull request #13587 from woocommerce/fix-13525
Update coupon date handling
2017-03-15 15:26:41 +00:00
Claudiu Lodromanean 3476121709 Use local time where appropriate 2017-03-14 10:27:48 -07:00
Claudiu Lodromanean 76536688e2 Use utc time for expiry box 2017-03-14 08:17:53 -07:00
Mike Jolley 7f787fac84 Check empty strings literally
Closes #13565
2017-03-14 12:17:49 +00:00
Mike Jolley e13badcdb3 Merge pull request #13584 from woocommerce/13527-update-downloads-dates
Apply WC_DateTime to WC_Customer_Downloads
2017-03-14 12:11:28 +00:00
Claudio Sanches f1c08f1a8e Updated downloads view on admin 2017-03-13 20:54:43 -03:00
Claudiu Lodromanean 12952ebcd0 Update coupon meta box with new date handling 2017-03-13 15:06:44 -07: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 c80fed52d8 Merge pull request #13571 from woocommerce/fix-13529
Check $_POST before trying to save order address inputs
2017-03-13 17:47:21 +00:00
Claudiu Lodromanean cf397cfbdd Dont try and save inputs that arent there 2017-03-13 09:55:18 -07:00
Rami Yushuvaev d2457fe922 i18n: escape translation strings and fix wrong usage of i18n functions 2017-03-13 07:39:46 +02:00
Mike Jolley 61484ed711 Update API endpoints 2017-03-10 18:54:59 +00:00
Mike Jolley 53962f1143 Other date_date call replacements 2017-03-10 16:43:05 +00:00
Mike Jolley a185e57ccb Admin panel should not hide _ meta.
Fixes #13510
2017-03-09 11:45:22 +00:00
Aristeides Stathopoulos 10ffc92a73 Inline control structures are not allowed 2017-03-07 22:24:24 +02:00
Aristeides Stathopoulos 70ee7ae7ea Fix some PHPCS errors 2017-03-07 19:57:28 +02:00
Claudiu Lodromanean 527fb42771 Refactor empty option check 2017-03-02 08:21:20 -08:00
Claudiu Lodromanean e132dcba17 Dont save empty text attributes 2017-03-01 10:39:08 -08:00
Mike Jolley 5c06a6a591 Missing wc_format_localized_price
Fixes #13356
2017-02-27 13:39:35 +00:00
Caleb Burks e782760011 Clean up
These lines, so long ;p
2017-02-25 02:27:38 -06:00
Caleb Burks 21da6ee31c Hide coupon free shipping conditionally 2017-02-25 02:16:30 -06:00
Claudio Sanches ad09c23d1f Fixed wrong index for _wc_variation_file_hashes, closes #13322 2017-02-23 18:17:44 -03:00
Mike Jolley 04aebd9fa7 Merge pull request #13306 from woocommerce/fix-13303
Fix multiple item additon to orders
2017-02-23 18:11:02 +00:00
Mike Jolley 34d03e524a woocommerce_date_input_html_pattern filter
Closes #13289
2017-02-23 12:57:33 +00:00
Mike Jolley dec52e8be2 Fix multiple item additon 2017-02-23 10:19:15 +00:00
Claudio Sanches e42e2a3335 Replace woocommerce_coupon_code filter by wc_format_coupon_code() 2017-02-22 14:40:24 -03:00
Mike Jolley 3af989fa1b Merge pull request #13281 from woocommerce/fix-13265
Fix sale date field
2017-02-22 16:18:35 +00:00
Mike Jolley 2ac125417f Fix sale date field 2017-02-22 10:31:20 +00:00
Beka Rice 24b586c18f Fixes coupon styles so admin CSS applies 2017-02-21 21:29:06 -05:00
JeroenSormani 097309a0c8 Add 'priority' support to product data tabs 2017-02-21 08:34:43 +01:00
Kathy c30b1c1bb3 Coupon tweaks (#13222)
* pass coupon to applied/removed JS trigger

* add coupon id and coupon object to action hooks in admin metabox
2017-02-17 11:58:15 +00:00
Mike Jolley 82d9abd4c5 Make sure enabled is checked by default
#13147
2017-02-10 17:43:32 +00:00
Claudiu Lodromanean ab8fb48bb4 Fix and standardize e-mail sending 2017-02-09 14:49:39 -08:00
Mike Jolley 3b06660edf Merge pull request #12917 from woocommerce/12170-rtl
#12170 Set up RTL generation and enqueuing
2017-02-08 10:29:55 +00:00
Mike Jolley fcae260b43 Missing placeholder 2017-02-07 17:07:11 +00:00
Claudiu Lodromanean e45adc14ed Bring up-to-date with master 2017-02-06 10:10:41 -08:00
Mike Jolley 58118997a9 Merge pull request #13069 from jaydeeprami/Fix-Issue-13067
Fixed issue ref #13067
2017-02-06 12:36:53 +01:00
Jaydeep 91cd899989 Fixed issue ref #13067 2017-02-06 14:35:55 +05:30
Claudiu Lodromanean da22e021f9 Tweak admin tabs CSS to look good in LTR and RTL modes. 2017-01-31 10:09:56 +01:00
Jaydeep Rami 615ba59ebb Fixed issue #12986 2017-01-26 23:21:34 +05:30
Claudio Sanches 3e60bd64de Send emails using site language, closes #12931 2017-01-23 18:40:36 -02:00
Mike Jolley cd05b94ec3 woocommerce_admin_process_product_object hook 2017-01-23 10:20:11 +00:00
Claudio Sanches 022d4fdac4 Coupon expiry date do not allow multiple date formats 2017-01-14 00:10:51 -02:00
Mike Jolley 66c3cff76d More escaping 2017-01-06 14:09:36 +00:00
Mike Jolley 76f8c3dddd Escaping for scruitinizer 2017-01-06 12:45:28 +00:00
Mike Jolley f7d72afcf9 Detect classname when saving attributes 2017-01-05 16:54:47 +00:00
Mike Jolley 5dba3d5bfe Sync variation names 2017-01-04 15:18:02 +00:00
Beka Rice b8c7d7e771 Fixes undefined index notices with empty select2 2017-01-03 09:16:58 -05:00
Mike Jolley daea231ab7 Merge pull request #12666 from woocommerce/select2-4
Upgrade Select2 to V4
2016-12-24 14:40:09 +00:00
Mike Jolley f3dc355632 Check post data is set
Closes #12670
2016-12-22 14:41:39 +00:00
Mike Jolley 92968492a0 Customer search 2016-12-21 14:18:33 +00:00
Mike Jolley 96877dbb25 Fix product search inputs 2016-12-21 13:23:26 +00:00
Claudio Sanches 485c89ee99 Fixed wrong textdomain 2016-12-15 14:44:43 -02:00
Mike Jolley f29288b542 Fix default attribute saving 2016-12-13 20:03:00 +00:00
Mike Jolley 0e72b87ca1 Allow comment editing.
Closes #12563
2016-12-12 13:00:08 +00:00
Mike Jolley 12608af03a Sorting handling 2016-12-08 14:28:51 +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 b5e9fc08fe Set featured status and catalog visibility when saving products. 2016-11-30 10:20:18 -08:00
agrillo 328401271f Fixed: if woocommerce_resend_order_emails_available hook return an empty array the optgroup label "Resend order emails" It is also printed 2016-11-30 11:32:38 +01:00
Mike Jolley 086d8bce1d Fix is_callable 2016-11-25 14:48:20 +00:00
Matty ff1442e9aa Allow cross sells to be sold as variations 2016-11-25 13:17:09 +00:00
Mike Jolley f67ffe4d89 Merge pull request #12465 from woocommerce/crud-ajax-class
AJAX Class and other fixes
2016-11-25 10:44:20 +00:00
Claudio Sanches 1ed2f9d136 Fixed undefined index while saving coupons on admin screen 2016-11-24 15:43:01 -02:00
Mike Jolley 9087a45f29 Remove attribute_ prefix rather than add so that get_attributes has better return values, and don't show duplicate data in cart. 2016-11-24 14:20:48 +00:00
Mike Jolley c8d1acb33e Prevent tags breaking page layout 2016-11-23 15:49:35 +00:00
Mike Jolley bc1103b438 Missing key in download variation 2016-11-22 15:43:21 +00:00
Mike Jolley b73bbabab6 Fix missing key variable 2016-11-22 15:41:37 +00: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
Mike Jolley b81bde4f5a admin updates 2016-11-18 19:56:17 +00:00
Claudio Sanches 0806897fa8 Keep backwards compatibility while saving and displaying order custom addresses metadata on admin 2016-11-18 17:40:32 -02:00
Mike Jolley b1565cf0d6 Download update routine and interface 2016-11-18 19:29:37 +00:00
Mike Jolley 1b6d7acd24 Data store for downloads 2016-11-18 17:13:02 +00:00
Claudio Sanches 2a4aa26a31 Removed extra … 2016-11-18 12:19:44 -02:00
James Koster 1039babe2c manual order creation - make address load/copy icons text links to improve usability. closes #12356 2016-11-17 12:38:15 +00:00
Justin Shreve 20fca44334 Handle product quick and bulk edit. 2016-11-16 12:54:53 -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 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 e1c4c4ab96 Fix error in variation admin 2016-11-11 16:22:39 +00:00
Mike Jolley aa2ce1a1cc Fix error 2016-11-09 17:29:28 +00:00
Mike Jolley b9d60965d2 Conflicts 2016-11-09 16:53:23 +00: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
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 cee91cccbf Remove the download type input from the product data metabox for downloadable products. (#12221) 2016-11-09 15:47:23 +00:00
Mike Jolley 038104c8a8 [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
2016-11-09 15:44:02 +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
Mike Jolley 7dd64662f0 [Product CRUD] Grouped Handling (#12151)
* Handle grouped product saving

* Update routine
2016-11-09 15:41:48 +00:00
Mike Jolley ed46abf3a3 [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 12:26:46 +00:00
Rami Yushuvaev 402216a553 a11y: add `role="button"` to delete note links 2016-11-05 19:12:04 +02:00
Rami Yushuvaev e71cae8d8f a11y: make order notes metabox accessible 2016-11-05 18:56:03 +02:00
Rami Yushuvaev d85075dcb0 a11y: replace `title` attributes with `aria-label`, for better accessibility 2016-11-04 17:41:51 +02:00
Rami Yushuvaev 9469673c05 a11y: remove unneeded `title` attributes 2016-11-04 17:40:15 +02:00
Mike Jolley db0ce210a3 [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-02 18:50:42 +00:00
Justin Shreve 91ddc7ecbd Remove the download type input from the product data metabox for downloadable products. (#12221) 2016-10-31 15:12:46 +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
Rami Yushuvaev 8ab8bef52e add translators comments 2016-10-29 13:51:56 +03:00
Rami Yushuvaev 6cc301e58c add translators comments 2016-10-29 13:16:03 +03:00
Claudio Sanches 4a1d5d3b0c Use Order CRUD to save admin order data (#12181)
* Fixed downlodable permissions while updating orders.

- Fixed undefined $wpdb fatal error
- Fixed how to update permissions when updated the billing_email

cc @mikejolley

* Use order CRUD to update admin order data

* Updated WC_Meta_Box_Order_Data::save() params and updated docblocks

* Missing period

* Handle cache and status on CRUD side
2016-10-28 10:52:01 +01:00
Claudio Sanches 7c28cb4d27 Merge pull request #12199 from woocommerce/product-checkboxes
Improved product type options.
2016-10-27 16:04:16 -02:00
Claudio Sanches 9b0b4be843 Improved product type options, closes #12183 2016-10-27 15:06:33 -02:00
Mike Jolley 5855170c5a [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
2016-10-27 14:08:16 +01:00
Mike Jolley 38703f1907 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-10-26 18:02:50 +01:00
Rami Yushuvaev 0be4db2261 more i18n updates (#12189)
* i18n: simpler translation strings

* i18n: simpler translation strings

* i18n: readble printf(), and moving the %s placeholder to `%s product`

* i18n: make string translatable and remove the HTML tags

* i18n: avoide using HTML tags in translatino strings

* i18n: move the colon into the translation string and use %s placeholder for the IP

* i18n: use sprintf() on field-validation translation strings, and unify those strings

* i18n: move colons into the translation strings

* i18n: use `%s` placeholder as the site name in "Powered by WooCommerce" string

* i18n: use `%s` placeholder for min and max price

* i18n: rewrite the translation strings printf()
2016-10-26 14:35:52 -02:00
Rami Yushuvaev 59dc477a20 Direction characters (i18n, RLT, a11y) (#12177)
* RTL+i18n: product title stricture as translation string to allow RTL languages to change `→` TO `←`

* i18n: move the `→` into the translation string to allow RTL languages to translate to `←`

* RTL: product filter indent using `→` and `←` chars

* a11y: remove `←` char, it's a bad accessibility practice to use visual indicators to point to menus

* a11y: remove `←` char, it's a bad accessibility practice to use visual indicators to point to menus
2016-10-25 21:34:50 -02:00
Mike Jolley b1dbfd9c5b [Product CRUD] Grouped Handling (#12151)
* Handle grouped product saving

* Update routine
2016-10-24 09:19:29 +01:00
Rami Yushuvaev f27499b501 i18n Improvements (#12078)
* use %s in translations strings

* merge simmilar error strings

* i18n: use sprintf() in translation strings to make them easier to understand for translators

* i18n: remove sprintf() function from translation string with unused parameter

* i18n: move colons and brackets into the translation strings

* revert comit addaa5d

* Fix broken sprintf()

* i18n: move colons into the translation strings on error messages

* Fix Travis-CI Error: operator must be surrounded by a single space
2016-10-24 08:33:32 +01:00
Rami Yushuvaev 4375618438 i18n context functions (#12156)
* Replace some context function with translation comments

* Remove two more context function

* Replace another context function with translation comments
2016-10-24 08:31:07 +01:00
Terence O'Donoghue edd14cd8df New Action for after Product Attribute Settings (#12099)
Allows developers to add extra checkboxes etc.
2016-10-21 15:31:20 +01:00
Rami Yushuvaev fec057c993 Use get_admin_page_title() function to display admin titles (#12077)
*  Use get_admin_page_title() function to display admin titles

* revert

* i18n: use sprintf() in translation strings
2016-10-13 13:34:48 -03:00
Mike Jolley 42f420b16c Correct admin link for variable product. 2016-10-13 15:18:44 +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
Rami Yushuvaev 83e938af1e i18n: Merge similar translation strings to reduce the total strings count #11905 2016-10-11 04:39:13 +03:00
Justin Shreve 2cc04663ee Don't run expiry date through date() if it isn't set. Also don't do a string comparison check on an integer. 2016-09-30 14:16:41 -07:00
Claudio Sanches be029374ce Fixed coding standards 2016-09-13 18:24:21 -03:00
Aristeides Stathopoulos 9668247b95 WordPress.PHP.YodaConditions.NotYoda 2016-09-09 03:14:28 +03:00
Mike Jolley 311c540662 Merge pull request #11833 from aristath/master
Coding Standards (2nd pass)
2016-09-07 10:14:17 +01:00
Mike Jolley cf59524dd7 Fix order total race condition in CRUD 2016-09-07 09:28:11 +01:00
Mike Jolley 0c78ed7f9b [2.6] Start sale on variation save if applicable
Fixes #11804
2016-09-06 11:37:20 +01:00
Aristeides Stathopoulos 6ac7f03241 Generic.Formatting.DisallowMultipleStatements.SameLine 2016-09-02 06:40:52 +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 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 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
corsonr 8cb17c1923 branch conflict fix 2016-08-30 14:30:05 +02:00
Mike Jolley df35845d4d wc_get_coupon_id_by_code 2016-08-30 11:43:53 +01:00
Aristeides Stathopoulos 72696901f3 WordPress.WhiteSpace.OperatorSpacing.SpacingAfter 2016-08-27 09:14:06 +03:00
Aristeides Stathopoulos f2730eea02 WordPress.WhiteSpace.ControlStructureSpacing.BlankLineAfterEnd 2016-08-27 08:57:05 +03:00
Aristeides Stathopoulos a19848978a WordPress.WhiteSpace.ControlStructureSpacing.NoSpaceAfterCloseParenthesis 2016-08-27 07:47:24 +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 55075ce3a4 WordPress.Arrays.ArrayDeclaration.IndexNoNewline 2016-08-27 06:35:20 +03:00
Aristeides Stathopoulos 6c30f84fa2 WordPress.Arrays.ArrayKeySpacingRestrictions.SpacesAroundArrayKeys 2016-08-27 06:23:21 +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 ed01282340 Made data match schema 2016-08-26 15:20:44 +01:00
Mike Jolley 210763e536 use CRUD in admin 2016-08-26 14:50:17 +01:00
Mike Jolley 7cf75f5085 Remove use of deprecated functions 2016-08-22 16:57:54 +01:00
Mike Jolley c88984eb0e Replace add methods 2016-08-22 16:48:19 +01:00
Mike Jolley fdd7e797ba API get refunds 2016-08-22 13:15:15 +01:00
Mike Jolley 9e45927803 Create refund with crud 2016-08-22 13:15:15 +01:00
Mike Jolley 190cd0bf86 Remove direct access of item props in admin 2016-08-19 15:08:00 +01:00
Mike Jolley 21ad196297 Use CRUD in wc_save_order_items 2016-08-19 13:43:33 +01:00
Mike Jolley 5afac69f10 Fix write context errors 2016-08-15 17:50:02 +01:00
Mike Jolley eb45acf0d5 [2.6] Use method title in admin shipping dropdown
fixes #11678
2016-08-12 14:23:59 +01:00
Mike Jolley a8759fc0aa Meta/product handling 2016-08-08 16:20:15 +01:00
Mike Jolley c3aa933ad2 coupon 2016-08-08 15:25:22 +01:00
Mike Jolley 75975de58a Item meta 2016-08-08 15:22:00 +01:00
Mike Jolley 9bbf5df1fd Billing/shipping details 2016-08-08 14:49:53 +01:00
Mike Jolley 6bf05396c2 date_paid 2016-08-05 16:14:30 +01:00
Mike Jolley 0a0330bac0 customer_user 2016-08-05 16:09:40 +01:00
Mike Jolley 7685587b22 payment_method 2016-08-05 16:04:41 +01:00
Mike Jolley 39b4831e95 get_id 2016-08-05 15:56:23 +01:00
Mike Jolley 9181c107a8 get_currency 2016-08-05 15:49:17 +01:00
Mike Jolley 66c8d6cdcf Merge pull request #11496 from franticpsyx/order_item_class_args
[2.6] Add $order arg to order_item_class filters
2016-07-22 13:58:58 +02:00
James Koster 02e08e071e Use number inputs for hour/minute fields on edit order screen. closes #11494 2016-07-22 12:19:18 +01:00
Manos Psychogyiopoulos 0173447cf9 add $order arg to woocommerce_admin_order_item_class and woocommerce_admin_html_order_item_class filters 2016-07-21 11:50:45 +03:00
Mike Jolley d17b4de6d5 woocommerce_admin_order_item_bulk_actions
Closes #11099
2016-07-20 13:37:17 +01:00
Claudio Sanches 14eeee15ee Welcome to docs.woocommerce.com 2016-07-19 07:30:31 -03:00
Mike Jolley 53511e36ec Use permission id to revoke access to downloads to prevent removing wrong rows.
Fixes #11423 @claudiosmweb
2016-07-14 15:54:28 +02:00
Claudio Sanches 7d9d091767 Fixed mixed tabs and spaces 2016-07-11 16:56:35 +02:00
Mike Jolley 53e75f3d4d Merge pull request #11300 from rspublishing/update-class-wc-meta-box-coupon-data.php
Updates class-wc-meta-box-coupon-data.php
2016-06-30 09:32:40 +01:00