Commit Graph

563 Commits

Author SHA1 Message Date
Mike Jolley 5b0df590c0
Merge pull request #18065 from woocommerce/improve/18064
Add default row/column control for themes
2017-12-08 16:14:19 +00:00
claudiulodro fef9d612c7 Better function name 2017-12-08 07:38:40 -08:00
claudiulodro b2cac1dcab Better description 2017-12-08 07:36:33 -08:00
claudiulodro e37391affb Set/remove defaults on theme activation 2017-12-08 07:33:42 -08:00
claudiulodro 600b1bd82c Revert "Add defaults control for themes"
This reverts commit 29090e4676.
2017-12-08 07:23:46 -08:00
claudiulodro e22318449e Fix syntax error @bor0 2017-12-07 14:29:07 -08:00
claudiulodro 29090e4676 Add defaults control for themes 2017-12-07 11:35:06 -08:00
Boro Sitnikovski d0f9aaa99a Merge branch 'master' into tweak/decouple-cart-template-methods 2017-12-07 20:16:08 +01:00
Boro Sitnikovski 588c5f3779 Change method name 2017-12-07 15:53:16 +01:00
Mike Jolley 1f2011e8de Tweak query args 2017-12-06 19:03:14 +00:00
Mike Jolley 3c36ab0517 Helper functions for loop handling to avoid global usage, and helper for displaying subcats 2017-12-06 18:10:19 +00:00
Mike Jolley 8dcffa660e Normalise get_query_results names and add new param for pagination 2017-12-06 13:13:43 +00:00
claudiulodro 535d014ef9 Line up arrays 2017-12-05 10:50:17 -08:00
claudiulodro aab65923c1 Refactor for better style 2017-12-05 10:45:08 -08:00
claudiulodro fec60ab2ea Fix product shortcode pagination 2017-12-05 08:31:50 -08:00
Boro Sitnikovski 145d47c580 Decouple cart templating methods from WC_Cart class 2017-12-05 13:00:21 +01:00
claudiulodro d60456cc73 Resolve conflicts and bring up to date with master 2017-12-04 13:56:59 -08:00
Mike Jolley 20633d409d Fix archive with default permalinks 2017-12-04 15:35:52 +00:00
Ibrahim Ibn Dawood b1bef237d1 made function : woocommerce_template_loop_product_link_open, woocommerce_template_loop_product_link_close, woocommerce_template_loop_category_link_open, woocommerce_template_loop_category_link_close pluggable 2017-12-01 14:58:42 +05:30
Claudio Sanches d438a68300 Allow woocommerce_form_field() have 'custom_attributes' equal 0
array_filter() by default will remove all null values, also 0 or false,
but if trying to declare something like array( 'min' => '0', 'max' =>
'10' ) this will be a problem. So including added strlen() as callback
function will allow keep some strings but still remove null and false
values.

Ref #17940
2017-11-29 18:45:44 -02:00
Claudio Sanches 216ddc799a Fixed VSCode auto align mistake
One more reason to go back to sublime
2017-11-21 10:53:15 -02:00
Claudio Sanches 9681a331e9 Fixed coding standards 2017-11-20 20:19:09 -02:00
Claudio Sanches 5a858eb2b1 Use WC_Query->get_query_vars() instead of WC_Query->query_vars
Closes #17733
2017-11-20 14:40:56 -02:00
Mike Jolley 46775c2f7d standards 2017-11-20 12:14:05 +00:00
Alexandre GASNE 0018b4349e Fix: Apostrophe wrongly escaped for price nav filter and widget nav filters 2017-11-18 20:11:53 +01:00
Mike Jolley 9e79ceff08 Merge branch 'master' into feature/unsupported-theme 2017-11-14 17:03:35 +00:00
Mike Jolley 5adb1edef5 Since options are hidden, remove notices for now - allow use. 2017-11-10 16:26:33 +00:00
Mike Jolley d765e2319c Added theme support vars for grid settings
- product_grid
   - min_rows
   - max_rows
   - min_columns
   - max_columns

If settings violate these, they will be updated.

If loop_shop_columns is defined, settings are hidden with a notice.
2017-11-09 18:11:35 +00:00
Mike Jolley 2a3ace9853 Merge branch 'master' into feature/17550-archives-template-support 2017-11-09 17:34:57 +00:00
Mike Jolley 33995ace01 Helper functions 2017-11-09 17:34:54 +00:00
Mike Jolley 0d09d0c0fd Grab description directly to pass through wc_format_content 2017-11-09 16:57:50 +00:00
Mike Jolley 6e08ff0284
Merge pull request #17610 from woocommerce/update/17557
Theme support to declare image sizes
2017-11-09 16:04:22 +00:00
Mike Jolley 23aa0277d2 Rows and cols 2017-11-09 12:37:14 +00:00
Mike Jolley 52c4d21d18 Term logic fix 2017-11-09 12:09:11 +00:00
Mike Jolley ddb357cc48 Missing var 2017-11-09 10:30:27 +00:00
Mike Jolley c058921c9c Optimisation of product subcats template functions 2017-11-08 20:00:23 +00:00
Mike Jolley a0e2e59f9b Orderby support 2017-11-08 18:09:39 +00:00
Mike Jolley 8da485e911 Allow reuse of pagination template file 2017-11-08 16:39:28 +00:00
Mike Jolley 9f6f5f9f17
Merge pull request #17609 from woocommerce/update/17254-input-to-button
Convert input submit elements to button submit elements
2017-11-07 19:21:04 +00:00
Mike Jolley db4e630600 Replace thumbnail names 2017-11-07 18:48:51 +00:00
Mike Jolley e025caf177 Widths and aspect ratios 2017-11-07 18:32:43 +00:00
claudiulodro 6b514aaab8 Make underscores the default 2017-11-07 08:45:05 -08:00
Gerhard Potgieter e0a55cb8dd input to button for submit in wc-template-functions.php 2017-11-07 10:40:28 +02:00
Gerhard Potgieter 2171ae7c0a PHPCS fixes for wc-template-functions.php 2017-11-07 10:39:10 +02:00
claudiulodro c3689134d0 Underscores wrappers 2017-11-06 13:46:50 -08:00
Claudiu Lodromanean d0c1f16f26
Merge pull request #17533 from woocommerce/fix/17509
Remove kses from term description
2017-11-02 10:47:57 -07:00
Mike Jolley 92a8bdf616 Remove kses from term description
Closes #17509
2017-11-02 17:13:02 +00:00
Mike Jolley eb1bcee8b9 For code doing it wrong, ensure priority is set 2017-11-02 11:13:24 +00:00
Claudio Sanches 9e29ed0bda Removed wp_kses_post() from product archive description
Fixes #17492
2017-11-01 14:16:19 -02:00
Claudio Sanches d23448a823 Merge branch 'master' into fix/17300-search-orderby 2017-10-25 20:53:25 -02:00
Gerhard Potgieter 7ab0b25ba5 Only set to relevance when the orderby is set to menu_order 2017-10-20 10:33:21 -07:00
Gerhard Potgieter 5d9efb7885 Set orderby to relevance when searching for products. Closes #17300 2017-10-20 10:28:23 -07:00
Gerhard Potgieter f9cff6e3f8 PHPCS Fixes. @claudiosanches Would you mind reviewing these as it is quite a lot of changes. 2017-10-20 10:24:56 -07:00
Mike Jolley 4844abc326 add woocommerce_cross_sells_order
Filter to control sort direction.
2017-10-20 09:11:00 -07:00
Mike Jolley a6059ea759 Remove menu-ordering sorting 2017-10-11 21:36:13 +01:00
Mike Jolley d72f6ae22c Ensure query_vars is set. Closes #17044 2017-10-04 15:37:43 +01:00
Lane Goldberg fb8bac5957 make hidden country/state readonly
make hidden country / state fields read only. fixes #17026
2017-10-02 15:24:37 -04:00
Mike Jolley 3a17d48af2 Added screen reader text to quantity input template
Closes #16909
2017-09-26 12:05:09 +01:00
Mike Jolley 220b37d5f2 Show sorting on search results but default to relevance
Closes #16565
2017-08-24 12:58:50 +01:00
Claudio Sanches 909c3f6c8f Fixed extra "!" and ")" on #16489 2017-08-17 19:05:46 -03:00
Alex James Bishop d4a02819a7 Add filter to woocommerce_order_again_button to match WC_Form_Handler->order_again
This commit adds the `woocommerce_valid_order_statuses_for_order_again` filter to the conditional check
before displaying the order-again button.

The purpose is to enable consistency when altering the valid order again statuses - in the past a dev would
need to use this filter to let the order through the form handler, and then override the template file for a really
trivial reason just to get the button to display.
2017-08-17 11:31:06 +09:30
Paul Robinson 7c01201e34 Add custom attributes into radio fields for woocommerce_form_field 2017-07-21 14:23:21 +01:00
Adrian Mörchen d7484336c1 Fixed wrong class reference in comment 2017-07-20 13:29:54 +02:00
Jaydeep Rami 3522857d23 Fix typo in WooCommerce plugin (#16135)
* Fixed typo

* Fixed more typo

* Fixed more typo

* Fix tyop

* Fix more typo

* Fix more typo

* Fix typo

* Fix typo

* Fix typo

* Fix typo datatime object

* Fix short name of compat

* Fix typo: update short name

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

* Fix typo "Backwards compat"

* Fix typo 'parameters'

* Fix more typo 'pararmeters'

* Fix typo 'compund'

* FIx typo order

* Fix typo

* Fix typo 'incorrecly'

* Fix typo 'genarate'

* Fix typo 'reletive'

* Fix typo 'Handly'

* Fix typo 'rotatated'

* Fix typo

* Fix typo 'additonal'

* Fix typos
2017-07-17 11:10:52 +01:00
Mike Jolley fdcf16bb60 Merge branch 'master' into update/15563
# Conflicts:
#	assets/css/admin-rtl.css
#	assets/css/admin.css
#	assets/css/helper-rtl.css
#	assets/css/helper.css
#	assets/css/wc-setup-rtl.css
#	assets/css/wc-setup.css
#	assets/css/woocommerce-rtl.css
#	assets/css/woocommerce.css
2017-07-12 16:18:13 +01:00
Caleb Burks 572cf3813f Spacing/typo fix
Should really combine all three of these filters into one as well.
2017-07-11 13:37:43 -05:00
Mike Jolley 3939f50ced Download display in account/checkout 2017-07-11 13:45:35 +01:00
Farook Ibrahim d0489206a7 minor typo fix 2017-07-06 17:24:28 +05:30
claudiulodro 506c01f56a Fix codesniffer violations 2017-06-27 14:19:59 -07:00
Claudio Sanches 5bc03b41cf Redirect ?customer-logout=true to the correct endpoint
Checking also for `'true' === $wp->query_vars['customer-logout']` to avoid infite loops when permalinks are deactivated and "My account" is the front page.

Closes #15789
2017-06-27 14:10:20 -03:00
Mike Jolley dbe9705e4b Disable search engines indexing core, dynamic, cart/checkout pages. 2017-06-21 12:52:52 +01:00
Mike Jolley 98684233dc Filter visible children when outputting grouped products 2017-06-20 15:01:14 +01:00
Mike Jolley ccad987bac Allow state field to have the correct country set by passing it through
Fixes #15632
2017-06-16 11:45:53 +01:00
Mike Jolley 0b14e91a60 Merge pull request #15533 from woocommerce/fix/order-item-meta-formatting
Removes the use of strip_tags() when outputting order item meta
2017-06-13 11:35:03 +01:00
Mike Jolley 636ad8b652 Add a nonce and confirmation for logging out via the customer my account page 2017-06-12 14:02:29 +01:00
Matt Cohen e644bccbe8
Removes the use of strip_tags() when outputting order item meta, to account for basic HTML tags, hyperlinks, etc. 2017-06-09 11:00:23 +02:00
Mike Jolley 5ee38c54c2 Option to disable reviews globally 2017-06-08 15:26:30 +01:00
Mike Jolley 41e8b22b5a Merge branch 'pr/15219' 2017-05-23 19:28:45 +01:00
Mike Jolley 002dd935b5 Check we have a product object 2017-05-23 19:28:35 +01:00
Mike Jolley c16acc6b51 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	assets/css/wc-setup-rtl.css
#	assets/css/wc-setup.css
2017-05-23 19:00:24 +01:00
Mike Jolley d3666738d8 Merge branch 'pr/15069' 2017-05-23 18:56:58 +01:00
Mike Jolley 00e5189a05 Merge pull request #15070 from rasmusbe/phpdoc-missing-return-throws
Phpdoc: Add missing return and throws
2017-05-23 18:50:58 +01:00
Mike Jolley 8f27df6af3 Merge pull request #14294 from woocommerce/fix/14292
When searching, disable WC sort order
2017-05-23 16:43:24 +01:00
James Kemp 90c987af70 Utilise $product method to get thumbnail
Is there any reason this function isn't using the `get_image()` method? It seems if we're accessing the `$post->ID`, then we should have access to the `$product` object too?

The reason being, the `get_image()` method also checks for the parent featured image, so is more robust. It may also be worth considering a filter in the `get_image()` method.
2017-05-22 22:07:51 +01:00
Rasmus Bengtsson 185934fad9 Fix phpdoc to include params and correct types 2017-05-15 13:50:52 +02:00
Rasmus Bengtsson 4f00d7e5e3 PHPDoc: Add missing return statement 2017-05-15 13:37:59 +02:00
Mike Jolley af949b73ec Add noscript style for gallery
Fixes #14882
2017-05-08 14:35:23 +01:00
Claudio Sanches c0e71a2238 Merge pull request #14797 from woocommerce/fix/14426-1
Standardize rating HTML in all templates
2017-05-05 17:47:28 -03:00
Claudio Sanches 95f2033f88 Merge pull request #14895 from franticpsyx/tweak-wc-display-item-meta
[3.0] Tweak meta display value rendering in `wc_display_item_meta`
2017-05-05 17:09:03 -03:00
Manos Psychogyiopoulos bbf0be1205 Tweak meta display value rendering in wc_display_item_meta 2017-05-05 16:11:49 +03:00
Claudio Sanches 1753406dc0 Fixed warning when no customer country is defined.
Fixes #14850
2017-05-04 18:54:44 -03:00
Claudio Sanches ed5877f395 Improve docblocks 2017-05-02 16:48:00 -03:00
Claudio Sanches ad09564ff3 Removed extra comment 2017-04-28 20:08:37 -03:00
Claudio Sanches 1d65c9d8b7 Better screen reader support 2017-04-28 19:59:50 -03:00
Claudio Sanches 5826a9bce0 Display total of customer reviews and applied to rating template 2017-04-28 19:56:05 -03:00
Claudio Sanches 685b999357 Fixed missing variable 2017-04-28 19:41:11 -03:00
Claudio Sanches d62e68fdb5 Better i18n support 2017-04-28 19:36:43 -03:00
Claudio Sanches a049835c05 Introduced new wc_get_star_rating_html() function 2017-04-28 19:32:25 -03:00
Mike Jolley aacb01d1e7 Merge branch 'pr/13503'
# Conflicts:
#	assets/css/twenty-seventeen.css
#	assets/css/woocommerce-layout.css
#	assets/css/woocommerce-layout.scss
#	assets/css/woocommerce.css
2017-04-27 12:46:05 +01:00
Mike Jolley 29feafb116 Merge branch 'pr/14414' 2017-04-27 12:01:45 +01:00
Mike Jolley 2e77b0f417 Keep both classes 2017-04-27 12:01:37 +01:00
Mike Jolley 13a610d1d8 Merge branch 'pr/14612' 2017-04-26 13:26:26 +01:00
Mike Jolley 13bc235020 Bump template version and move to correct function files. 2017-04-26 13:25:14 +01:00
Mike Jolley 763c8e8018 Sort grouped products by menu order
Fixes #14665
2017-04-25 12:08:17 +01:00
Mike Jolley 3b6e7d9d14 Address field sorting was not working due to wrong data name
Fixes #14533
2017-04-19 16:33:32 +01:00
Akash Soni e17e7f38bd Change format of product link class.
In this class use capital characters, it's not good formate.

So, I change that and create a new class " woocommerce-loop-product__link ".

The example we use this class for loop product title tag " woocommerce-loop-product__title ".

Thank.
2017-04-16 01:26:38 +05:30
Mike Jolley 3fe7df6515 When searching, disable WC sort order
Closes #14292
2017-04-12 12:42:55 +01:00
Mike Jolley a7e22e3749 Return if there is no product in woocommerce_upsell_display
Fixes #14162
2017-04-11 19:21:13 +01:00
Claudio Sanches c42505f7e5 Merge pull request #14096 from woocommerce/fix/14087
Add missing woocommerce_cross_sells_columns filter.
2017-04-07 09:18:54 -03:00
Mike Jolley 078dfb4ffa Add missing woocommerce_cross_sells_columns filter.
Closes #14087
2017-04-07 10:35:42 +01:00
Gareth 425752d8ff Updates product title in product loop commenting
Commenting indicated the product title in the product loop was enclosed in an `<h3>`, when the code was actually printing an `<h2>`.
2017-04-07 09:55:48 +02:00
Mike Jolley e16119f687 Cross sells were not showing first last classes since columns (2) was not being set 2017-04-05 23:28:13 +01:00
Mike Jolley b251973a66 Don't filter hidden grouped products
Fixes #13903
2017-04-04 20:33:36 +01:00
Mike Jolley 7bea5db423 Use h2
Fixes #13660
2017-03-21 12:54:04 +00:00
Mike Jolley e7397f96e7 Force max to blank string when < 0
Fixes #13639
2017-03-17 12:57:18 +00:00
Claudio Sanches 59c2849736 Changed version 2.7 to 3.0 2017-03-15 13:36:53 -03:00
Mike Jolley 7baf3ddc1c Remove the clear code and property from woocommerce_form_field
Fields can be sorted dynamically with JS, so the clear div will never
move with it and cannot be output reliably.

Clearing should be done with CSS.
2017-03-14 17:49:42 +00:00
Rami Yushuvaev d2457fe922 i18n: escape translation strings and fix wrong usage of i18n functions 2017-03-13 07:39:46 +02:00
Aristeides Stathopoulos 10ffc92a73 Inline control structures are not allowed 2017-03-07 22:24:24 +02:00
Claudio Sanches 6dad909570 Merge pull request #13425 from woocommerce/fix-13411
Dont render empty stock descriptions
2017-03-02 13:49:12 -03:00
Claudiu Lodromanean 3f1d538878 Single quotes instead of double 2017-03-02 08:45:01 -08:00
Claudiu Lodromanean 36a8d08a5f Tweak no-availability check 2017-03-02 08:30:01 -08:00
Mike Jolley 2e56114d8e Fix styling of variation upsells 2017-03-02 15:33:08 +00:00
Mike Jolley 0dfab8326b Backwards compatibility for woocommerce_upsell_display_args 2017-03-02 15:29:15 +00:00
Mike Jolley 793b2dfa69 woocommerce_upsells_total filter.
Closes #13436
2017-03-02 15:15:41 +00:00
Claudiu Lodromanean 635f8c38a7 Dont render empty stock descriptions 2017-03-01 15:19:31 -08:00
Maximus80 3c2ac21294 fix photoswipe template be always loaded 2017-02-23 11:46:48 +01:00
Mike Jolley 4c75f2b7a2 Fix max value logic and -1 handling
Fixes #13237
2017-02-20 11:10:19 +00:00
Claudio Sanches 9012fead56 Merge pull request #13136 from woocommerce/improvement-12990
Add logic to variation title generation and remove redundant template info.
2017-02-14 19:15:48 -02:00
Claudiu Lodromanean 749971759f Reduce spacing back to original 2017-02-14 11:22:50 -08:00
Claudiu Lodromanean 332e79da8d Re-approach attribute skipping in simpler, general purpose way 2017-02-14 11:20:20 -08:00
Claudiu Lodromanean afcbd456c4 Skip attributes in get_formatted_meta_data a different way 2017-02-13 13:53:22 -08:00
Mike Jolley 8d13913e70 Avoid division by 0 in wc_get_loop_class
Closes #13159
2017-02-13 11:25:58 +00:00
Claudiu Lodromanean f362e0108e Enable attribute suppression in wc_display_item_meta 2017-02-10 14:11:16 -08:00
Brent Shepherd fe7e280ea0 Reinstate woocommerce_email_order_items_args hook 2017-02-02 12:26:59 -08:00
Brent Shepherd 75bcbbf959 Maintain old show/hide email order item logic
When SHA: 7b3a9b introduced wc_get_email_order_items(), it slightly
changed the logic applied to determine whether to display:
* download links; and
* purchase notes.

In WC 2.6.13 and older, WC_Abstract_Order::email_order_items_table()
would only display download links and purchase note in emails *not*
sent to the admin. This patch preserves that behaviour.
2017-02-01 18:12:21 -08:00
Claudio Sanches bd655af072 Restore attributes ordering, closes #12847 2017-01-16 21:11:56 -02:00
Claudio Sanches 0da2f70e13 Fixed coding standards 2016-12-15 15:11:08 -02:00
Mike Jolley cbc18258e6 Cast found posts to int
Fixes #12608
2016-12-15 15:24:35 +00:00
Mike Jolley ad4704f02d Variations script refactor from #12585
Applying this to master to match 2.6 PR
2016-12-15 12:58:41 +00:00
Mike Jolley d32797b733 Handle BW compat priority. 2016-12-13 18:48:39 +00:00
Mike Jolley 74f3972e26 Add sort parameter to checkout fields to aid with sorting per locale. 2016-12-12 15:23:28 +00:00
Mike Jolley fe9e89f3b7 wc_logout_url function 2016-12-07 12:04:44 +00:00
Mike Jolley 2780688a70 wc_get_price_html_from_text 2016-12-05 13:13:30 +00:00
Mike Jolley ba56274662 Move get_price_suffix back to main class 2016-12-02 17:02:06 +00:00
Mike Jolley d67f17a789 Put get_availability functions back in main product classes. 2016-12-02 16:46:35 +00:00
Mike Jolley 350ccd008c Correct autocomplete field
#11016
2016-11-23 18:43:38 +00:00
Mike Jolley d7dfdd3d10 Wrap all deprecation calls. 2016-11-23 16:15:00 +00: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
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