Commit Graph

831 Commits

Author SHA1 Message Date
Justin Shreve 5d6cdd05f1 Finish out tests, make sure to use cprrect meta ID field in order by clause. 2016-03-14 11:12:47 -07:00
Justin Shreve 97c0edf445 Start on tests for testing CRUD meta.
Includes Mock object for testing against the abstract WC_Data.
2016-03-14 11:12:47 -07:00
Justin Shreve f572a887e0 New Abstract WC_Data Class 2016-03-14 11:12:47 -07:00
Justin Shreve 5dbfc7ae16 Fix Payment Token 'set default' methods. Makes sure we are using the user ID of the payment token, and not the current user.
Also makes sure to properly unset other tokens when a new one is set as default. Finally, we make sure that a user is always set in our payment token tests (which was broken in some WP versions which alerted us to some broken tests).
2016-03-14 09:41:37 -07:00
Mike Jolley c573a5b75f Only add product line if product exists.
Fixes #10556
2016-03-14 15:40:58 +00:00
Mike Jolley 807b860a6c Merge pull request #10514 from SiR-DanieL/email-items-type
Added bool param for email order items hooks
2016-03-09 12:00:11 +00:00
Mike Jolley 55918626f5 [2.5] Update date for paid orders during non-manual updates only
Fixes #10510
2016-03-09 11:58:44 +00:00
Nicola Mustone c7756187e0 Added bool param for email order items hooks 2016-03-09 12:55:28 +01:00
Claudio Sanches 5f73c23da6 Better query params name 2016-03-09 01:46:04 -03:00
Claudio Sanches 396242b89c Fixed links for terms 2016-03-07 17:28:52 -03:00
Claudio Sanches 426410c2ae Manipule product attribute terms 2016-03-07 16:39:24 -03:00
Claudio Sanches 349b817d1e Fixed typo 2016-03-07 15:45:10 -03:00
Claudio Sanches 9f07be5271 Make easy to extend our rest controllers 2016-03-07 15:36:17 -03:00
Claudio Sanches b5e65c68b9 Added methods to update and create terms 2016-03-07 14:49:14 -03:00
Justin Shreve 927941e2ca Merge pull request #10260 from justinshreve/token-api
Payment Token API
2016-03-04 04:34:41 -08:00
Claudio Sanches d4d91d0fe9 Allow delete categories, tags and shipping classes 2016-03-03 18:19:02 -03:00
Mike Jolley e7e4808726 Correct status check and improved note
#10461
2016-03-03 17:04:20 +00:00
Mike Jolley fab1f224c6 When creating new order from draft, assume 'pending' for status transitions
Fixes #10461
2016-03-03 13:51:04 +00:00
Claudio Sanches 1f8e07108f Created methods to list and get terms 2016-03-02 20:22:12 -03:00
Claudio Sanches 0b0aa47421 Created methods to create and update customers 2016-03-02 19:14:03 -03:00
Claudio Sanches 8fe7935925 Fixed textdomains 2016-03-02 19:03:18 -03:00
Claudio Sanches c0affe96e0 Created API functions 2016-03-01 19:41:59 -03:00
Claudio Sanches 26c325acce Fixed __() functions 2016-03-01 17:53:25 -03:00
Justin Shreve ccb2c90ef3 Update references for the tokenization UI script (hiding/showing inputs) to use the correct file. 2016-03-01 11:49:43 -08:00
Justin Shreve 49c45c6dc1 Make sure the is_default/default token ability works correctly. Also adds a new method for getting a users default token. Fixes up some docblocks. 2016-03-01 11:49:42 -08:00
Justin Shreve 0985292a79 Make sure the tokenization script is output even if the current user is logged out (we still show save payment method if user is creating account). 2016-03-01 11:49:42 -08:00
Justin Shreve e3d7e206d0 Create a function for getting correctly formatted credit card type labels (MasterCard, American Express, etc) 2016-03-01 11:49:42 -08:00
Justin Shreve 75f2e6b85c Fix up some comments and add uninstalling code. 2016-03-01 11:49:42 -08:00
Justin Shreve c0b74296ff * Remove WC_Payment_Gateway_Form in favor of having a Payment_Gateway_CC and Payment_Gateway_eCheck
* Fix up some comments to match other comments in the WC code base
* Add some missing esc_* functions
* Add a gateway filter to get_customer_tokens + a test for it
2016-03-01 11:49:42 -08:00
Justin Shreve e6a527547f Add the ability for gateways to override the "new payment method" label. 2016-03-01 11:49:42 -08:00
Justin Shreve eff4e297f9 First pass at showing saved payment methods on checkout 2016-03-01 11:49:40 -08:00
Justin Shreve 5d8967c7d7 Prepare a list of payment methods for output on the payment methods "my account" page. 2016-03-01 11:49:40 -08:00
Justin Shreve 0061b36f3b Make sure WP knows about the payment token meta table, and return null in payment tokens get if a token cannot be found. 2016-03-01 11:49:39 -08:00
Justin Shreve df260c228d Prevent notice from being displayed for user_id and remove static on echeck validate 2016-03-01 11:49:39 -08:00
Justin Shreve 7b57b4c4cc Validate length for expiry - 4 chars for year and 2 for month. 2016-03-01 11:49:39 -08:00
Justin Shreve 214f077a91 Implement the rest of the WC_Data methods for creating, updating, reading, etc. 2016-03-01 11:49:39 -08:00
Justin Shreve c87c99f847 Start implementing the WC_Data interface. Move update, create, save, etc to the actual token class, and have the controller return our tokens. This matches the shipping zone API closer. 2016-03-01 11:49:39 -08:00
Justin Shreve f66b9e3681 Move meta (when creating) to its own sub meta array. 2016-03-01 11:49:39 -08:00
Justin Shreve f66a8b6478 Rename customer_id to user_id to match how orders reference the user. 2016-03-01 11:49:39 -08:00
Justin Shreve bfa9437a43 Rename the meta name _payment_tokens to remove the wc_ prefix, since this meta is a part of WC orders already. 2016-03-01 11:49:38 -08:00
Justin Shreve 6112752836 Misc cleanup based on PR feedback:
* Remove $token_id parameter from WC_Order's add_payment_token. get_id() can be used to access the ID
* Rename our list of token ids from meta to $token_ids as it makes more sense
* Cleaned up/fixed some of the comments in WC_Payment_Token
* Some code formatting fixes
2016-03-01 11:49:38 -08:00
Justin Shreve 204922e2ae Add methods for managing payment tokens associated with an order. 2016-03-01 11:49:37 -08:00
Justin Shreve c5aec06a8a First pass at a payment token API 2016-03-01 11:49:37 -08:00
Mike Jolley fa2280f3f8 Add notice on fail 2016-02-29 12:33:09 +00:00
Mike Jolley 09ef555e5a [2.5] Combine update post calls 2016-02-29 12:24:02 +00:00
Claudio Sanches 53db5ff4c8 Created coupons POST and PUT endpoints and coupons schema 2016-02-26 17:24:33 -03:00
Mike Jolley d7d609d85a Remove comment 2016-02-25 14:13:56 +00:00
Claudio Sanches f10846277b Added method to delete coupons 2016-02-23 15:28:43 -03:00
Claudio Sanches 0d88e3c380 Added endpoint to get coupons 2016-02-23 12:16:21 -03:00
Claudio Sanches a31ef08ed7 Improved permissions check 2016-02-22 17:48:38 -03:00
Claudio Sanches 43a5f6f842 Created abstract classes for posts and terms 2016-02-22 16:43:52 -03:00
Mike Jolley dbd6479f45 Comment on get_related limit
Closes #10398
2016-02-22 13:27:39 +00:00
Mike Jolley e9703da300 Merge pull request #9921 from peterrath/vat-exempt-and-tax-enabled-handling
VAT exempt and “TAX enabled” handling in back end and Orders API
2016-02-19 14:53:39 +00:00
Peter de1ecf9f78 Use === instead of == in abstract-wc-order.php
Use === here: 	if ( 'yes' === $this->is_vat_exempt or ! wc_tax_enabled() )
2016-02-18 19:56:55 +01:00
Claudio Sanches e926c54d29 Created WC_REST_Controller and structure to load WooCommerce controllers 2016-02-16 18:59:18 -02:00
Mike Jolley 3dba3378c2 Merge pull request #10315 from woothemes/layered-nav-wp-query
Layered Nav Improvements
2016-02-12 11:59:40 +00:00
Diego Zanella 6e4376511d Fixed incompatibility with PHP 5.4 and earlier 2016-02-10 19:47:16 +00:00
Mike Jolley fab8a871aa Merge branch 'master' into shipping-zones
# Conflicts:
#	assets/css/admin.css
#	includes/admin/class-wc-admin-assets.php
2016-02-10 14:12:39 +00:00
Mike Jolley 75c264837f Justins feedback/code tidy 2016-02-10 13:21:16 +00:00
Mike Jolley 1d5349bc83 Keep rating meta synced for filtering 2016-02-09 20:53:18 +00:00
Mike Jolley 75cbb74520 Rating widget standards 2016-02-09 15:18:27 +00:00
Mike Jolley 5525fadc09 Pass values to validation functions.
Closes #10032
2016-02-08 12:06:23 +00:00
Mike Jolley 352184cc06 Merge branch 'master' into shipping-zones
# Conflicts:
#	assets/css/admin.css
#	i18n/languages/woocommerce.pot
#	includes/abstracts/abstract-wc-payment-gateway.php
#	includes/abstracts/abstract-wc-shipping-method.php
#	includes/admin/settings/class-wc-settings-shipping.php
#	includes/wc-core-functions.php
#	uninstall.php
2016-02-05 14:58:48 +00:00
Mike Jolley 384c07b367 Merge pull request #10262 from Spreeuw/issue-10252
default order to processing for non-catalog products
2016-02-05 12:21:43 +00:00
Mike Jolley 787d36dee4 Merge pull request #10232 from marcusds/master
Add filter to is_in_stock
2016-02-05 12:01:10 +00:00
Ewout Fernhout a3634028fa default order to processing for non-catalog products
fixes #10252
2016-02-03 14:48:19 +01:00
Agbonghama Collins a742861cda minor typo
Found this error while trying to understand how gateways are built on WooCommerce
2016-02-02 15:35:01 +01:00
Mike Jolley 64d4bb5172 [2.5] Round shipping after tax calc
#10076 and
https://wordpress.org/support/topic/when-calculating-shipping-total-forc
e-rounding?replies=6#post-7972623
2016-02-02 11:09:02 +00:00
Marcus 780614b14e Add filter to is_in_stock 2016-02-01 11:09:12 -08:00
Mike Jolley 657521ffa4 [2.5] Don't show purchase note to admin 2016-01-27 15:30:07 +00:00
Mike Jolley f8df682f34 Hide stock amount when children are involved
Closes #10172
2016-01-27 13:00:50 +00:00
Mike Jolley 9ca216310d [2.5] When totalling up shipping, force round
Closes #10076
2016-01-27 11:06:08 +00:00
Claudio Sanches 2790307489 Changed allbuttons to select_buttons for multiselect #10079 2016-01-21 19:33:49 -02:00
Claudio Sanches f4fddf2252 Merge pull request #10079 from woothemes/add/select-all-buttons-multiselect-field
Settings API: add optional "select all"/"select none" buttons to multiselect fields
2016-01-21 19:30:12 -02:00
Mike Jolley 4cfd8ff214 [2.5] Don't show downloads in admin email 2016-01-20 16:58:58 +00:00
Florian Ludwig ddd5f9fb9b Fixed attribute check for PHP 7 compatibility 2016-01-20 15:53:51 +01:00
Brett a772457a32 remove unnecessary use of ternary operator 2016-01-20 12:30:56 +13:00
Joey Kudish 7bb99af123 Settings API: enhance multiselect fileds
Add optional "select all"/"select none" buttons to multiselect fields,
similarly to what already exists for the country field.
2016-01-14 22:07:31 -08:00
Mike Jolley a322b05f24 Avoid confusion between fields and field keys 2016-01-11 12:04:37 +00:00
Mike Jolley 1076854608 Merge branch 'master' into shipping-zones
# Conflicts:
#	assets/css/admin.css
#	includes/abstracts/abstract-wc-shipping-method.php
#	includes/class-wc-shipping.php
#	includes/shipping/flat-rate/class-wc-shipping-flat-rate.php
#	includes/shipping/flat-rate/includes/class-wc-eval-math.php
#	includes/shipping/free-shipping/class-wc-shipping-free-shipping.php
#
includes/shipping/legacy-international-delivery/class-wc-shipping-legacy
-international-delivery.php
#
includes/shipping/legacy-local-delivery/class-wc-shipping-legacy-local-d
elivery.php
2016-01-11 11:48:18 +00:00
Mike Jolley a33b9b9750 Unit tests for shipping zones 2016-01-08 13:56:01 +00:00
Mike Jolley 007abbc98e Shipping meta data
Closes #9094
2016-01-08 11:42:32 +00:00
Peter c5e3e018c3 is_vat_exempt and wc_tax_enabled handling in abstract-wc-order
If is_vat_exempt is 'yes', or wc_tax_enabled is false, then do not calculate tax.
2016-01-05 21:36:06 +01:00
Mike Jolley 7ece70a6ae Update _transaction_id
Closes #9970
2016-01-05 15:59:57 +00:00
Mike Jolley 97d47fb576 Move zones to main settings 2016-01-05 11:23:15 +00:00
Claudio Sanches 40d76ddc55 Merge pull request #9939 from frozzare/docs/abstract-wc-widget
Improve phpdoc comments for methods in abstract WC_Widget class
2016-01-04 12:59:32 -02:00
Fredrik Forsmo 513db93bd4 Improve phpdoc comments for methods in abstract WC_Widget class 2016-01-04 15:37:12 +01:00
Mike Jolley 62ca37f651 Merge branch 'master' into shipping-zones
# Conflicts:
#	includes/admin/class-wc-admin-assets.php
#	includes/class-wc-install.php
2016-01-04 14:35:45 +00:00
Fredrik Forsmo 39f37b1e30 Improve phpdoc comments for methods in abstract WC_Shipping_Method class 2016-01-04 15:18:14 +01:00
Fredrik Forsmo 450ae6e7fd Improve phpdoc comments and add missing param tags 2016-01-04 12:43:56 +01:00
Mike Jolley 520f1de24b Merge pull request #9932 from frozzare/wc-order-phpdoc
Fix phpdoc tags for methods in abstract WC_Order class
2016-01-04 11:08:45 +00:00
Fredrik Forsmo 9c8ef67249 Add better phpdoc comments and missing param and return value 2016-01-03 10:22:53 +01:00
Fredrik Forsmo b4a04a73ce Fix phpdoc tags for methods in abstract WC_Order class 2016-01-03 10:00:02 +01:00
Mike Jolley 4bf40cedb1 Tweak logic 2015-12-23 12:50:28 +00:00
Peter 458c755b5f Update abstract-wc-order.php
If the order has no shipping line, there must not generate an unnecessary shipping tax line with 0 value. It was happened if there is set a different tax class for shipping than tax classes of the actual product line items of the order, and the order has not got any shipping line.
The aim is to have the same tax calculation behavior if we create orders using the GUI (front end or back end), and the API.

This condition prevents to create the unnecessary tax line if there is no shipping methods of the order:

// Now calculate shipping tax
$matched_tax_rates = array();
$shipping_methods = $this->get_shipping_methods();
if ( ! empty( $shipping_methods ) ) {
	......
}


This conditional solution is similar than calc_line_taxes() in WC_AJAX class:

// Get shipping taxes
if ( isset( $items['shipping_method_id'] ) ) {
	.....
}
2015-12-21 23:42:59 +01:00
Mike Jolley 901db7b0f8 zone tweaks 2015-12-18 17:10:58 +00:00
Mike Jolley 119f19a5c1 Include and conditionally load legacy shipping methods 2015-12-18 14:24:34 +00:00
Mike Jolley 77f0e9d72a has settings handling 2015-12-18 13:12:20 +00:00
Mike Jolley bf06b6d7c3 Filter non-images from gallery
Fixes #9875
2015-12-18 11:55:51 +00:00
Mike Jolley 1a77563085 started on free shipping 2015-12-16 13:52:46 +00:00
Mike Jolley e25d876779 List and sort methods within zones 2015-12-15 17:48:03 +00:00
Mike Jolley b47423ff2b Moved rate calc logic into shipping class 2015-12-15 16:22:32 +00:00
Mike Jolley a0e0bb1e55 Load instance methods for calculations 2015-12-15 15:00:45 +00:00
Mike Jolley 091a8a7641 Zone matching functions 2015-12-15 12:39:52 +00:00
Mike Jolley 3b81642eec Instance and global level settings 2015-12-14 16:56:39 +00:00
Mike Jolley 2f97b16a91 Fix notice 2015-12-14 14:05:00 +00:00
Mike Jolley b27aed5753 Settings api 2015-12-14 14:03:46 +00:00
Mike Jolley f992f98b39 Merge branch 'pr/9790' 2015-12-14 12:48:11 +00:00
Mike Jolley 4b45812bac Only one sanitise hook is needed 2015-12-14 12:48:03 +00:00
Mike Jolley f3d6ce3c94 Round total discount to precision
Fixes #9834
2015-12-14 12:06:39 +00:00
Mike Jolley 63f8eebd6a Started on refactoring settings for instances 2015-12-11 16:41:38 +00:00
Mike Jolley 6cea054fca Method list screen and method screen with breadcrumbs 2015-12-11 14:11:12 +00:00
Shiva Poudel afd3aa2fc7 Let the additional third party widgets create and sanitize form fields 2015-12-08 16:19:49 +05:45
Claudio Sanches ff637abb7b Removed duplicated argument for PHP 7, closes #9788 2015-12-07 17:36:18 -02:00
Mike Jolley dd2fe6ff49 Make WC_Abstract_Order::update_status() return boolean
closes #9777
2015-12-07 10:12:17 +00:00
Shiva Poudel 88d7713a86 Modified checkbox class value from widefat 2015-12-05 05:26:28 +05:45
Shiva Poudel 69d6a25f5e Refactor to format the value based on widget settings type 2015-12-05 05:25:51 +05:45
Claudio Sanches d15c711855 Merge branch 'master' of github.com:woothemes/woocommerce 2015-12-04 21:17:47 -02:00
Max Rice 3befe1426f Introduce WC_Product::get_id() method 2015-12-04 15:17:25 -05:00
Claudio Sanches 92582e21cb Properly sanitize textarea field for widgets #9762 2015-12-04 17:14:42 -02:00
Shiva Poudel b3cd28e323 Added textarea widget form field 2015-12-04 21:23:19 +05:45
Mike Jolley 1c364e79e4 Enforce min and max
Closes #9761
2015-12-04 14:53:25 +00:00
Patrick Garman eb3dc97df9 Add filter to WC_Product::is_virtual() 2015-12-03 20:52:27 -05:00
Claudio Sanches 112f3bfc32 Merge pull request #9723 from shivapoudel/widget-field-class
Added support for class in each widget fields
2015-12-02 13:40:41 -02:00
Mike Jolley 350078b779 Merge branch 'pr/9708' 2015-12-02 12:42:09 +00:00
Mike Jolley 869dee2726 No need for rating HTML as we have no styling 2015-12-02 11:50:41 +00:00
Mike Jolley 328a84d278 Floatval to get rid of stray decimals 2015-12-02 11:46:51 +00:00
Shiva Poudel 2881587c44 Don't use key as default class 2015-12-02 15:47:57 +05:45
Mike Jolley 2e553cf220 Show order refunds in totals
Fixes #9589 @claudiosmweb
2015-11-30 15:25:48 +00:00
Mike Jolley b5a2c2a9d5 Unify all order email tables to use a single template
Closes #9587

@claudiosmweb @jameskoster
2015-11-30 15:16:23 +00:00
Shiva Poudel 532c1f9474 Added support for class in each widget fields 2015-11-30 12:11:29 +05:45
Claudio Sanches 753014da5a Merge pull request #9631 from woothemes/transient-tweaks
Transient tweaks
2015-11-21 22:48:14 -02:00
Illimar Tambek d91dfb6fe6 Introduce woocommerce_recorded_sales action hook 2015-11-19 18:07:04 +02:00
Claudio Sanches d931405156 Fixed the type returned when get_stock_quantity() is empty
Since expect return an integer value, we can't return an empty string.
This can generate some kinds of errors like:

 '' >= 1 returns false
 '' >= -1 returns true

This can be a problem comparing stock quantity like we do in
WC_Product::has_enough_stock()

But using null we have:

 null >= 1 returns false
 null >= -1 returns false

cc @mikejolley

ref #9598
2015-11-14 15:53:36 -02:00
Mike Jolley b59ec6de76 Move var definition to abstract 2015-11-14 16:39:53 +00:00
Mike Jolley 3a096b3b64 Remove transient from get_total_stock and combine into abstract
Grouped and variable methods were identical. Caching benefit comes from
get_children
2015-11-14 16:34:47 +00:00
Mike Jolley 851fc2a442 Use get_cache_prefix in orders class 2015-11-13 23:11:05 +00:00
Mike Jolley 3082c5bba6 wc_related_ and get_related method tweaks
Remove use of multiple expiring transients. See function docblock for
explanation.
2015-11-13 21:14:42 +00:00
Mike Jolley 3ceed757bd Store rating and reviews in postmeta rather than transients
These don’t change often, and as long as we listen for comment count
update events will be kept in sync.
2015-11-13 20:41:20 +00:00
Shiva Poudel d31859ab6c Remove unused variable declaration 2015-11-10 16:53:45 +05:45
Mike Jolley 4e5baf23aa Cache get_item_meta_array for better performance
Closes #8810 @claudiosmweb
2015-11-05 15:21:28 +00:00
Shiva Poudel d9e8057df3 Tweak the dockblocks and periodic-ending fix 2015-11-04 00:05:08 +05:45
Claudio Sanches 5893875b0c Removed period for file headers 2015-11-03 11:53:50 -02:00
Claudio Sanches efa19f799d Fixed some coding standards for docblocks 2015-11-03 10:28:01 -02:00
Mike Jolley aec0e0e327 supports() method which mirrors gateways
Closes #9471
2015-11-02 11:23:50 +00:00
Kathy Darling 856d192bff Use generic `ajax_add_to_cart` class for adding items in the loop to the cart via ajax. 2015-10-30 12:54:49 -05:00
Mike Jolley 5b6e16682c Handle partial/full refund for orders containing free items
Also adds helper method to determine if such as free item exists or
not. Closes #9460
2015-10-29 15:34:33 +00:00
Ari-Pekka Koponen 11ab216993 WC_Product __get should check for False instead of empty 2015-10-28 12:45:54 +02:00
Claudio Sanches b85ae9056c Rename wc_add_help_tip() function to wc_help_tip() 2015-10-23 13:09:08 -02:00
Claudio Sanches 2e95a68357 Use new "question" mark icon font
Created wc_add_help_tip() function to generate the icons
Replaced all .help_tip elements and [?]

We'll keep the old image and styles in order to maintain backwards
compatibility

Closes #9381
2015-10-23 01:40:52 -02:00
Mike Jolley 4dbfe1551c Settings API - don't save title fields
Closes #9401
2015-10-22 11:27:39 +01:00
Mike Jolley dda0f0c2bd Check for existence of global attribute when you get_attributes() for a product
Fixes #9141
2015-10-08 13:55:01 +01:00
Mike Jolley 1ec3cb0ef6 [2.4] Default value should not apply if value of option is 0
Fixes #9270 @claudiosmweb
2015-10-05 15:07:46 +01:00
Mike Jolley 42d90594af Fix password with & saving
@claudiosmweb
2015-10-05 14:09:11 +01:00
Mike Jolley d4fbe0e45c Use SKU for stock order notes
Fixes #9133
2015-10-01 18:13:37 +02:00
Claudio Sanches 1522a4d87b Added download-url class in WC_Abstract_Order::display_item_downloads(), closes #9158 2015-09-21 18:28:03 -03:00
Mike Jolley 0c56fe0844 Merge pull request #9149 from JeroenSormani/stock-changes
Add get_stock_quantity filter
2015-09-17 10:57:47 +01:00
JeroenSormani cb75a1e8af Add get_stock_quantity filter 2015-09-17 10:19:04 +02:00
Mike Jolley 83838358fe Revert "Merge pull request #8768 from SiR-DanieL/session-delete"
This reverts commit f63c500848, reversing
changes made to 2a31d1fe98.
2015-09-16 13:38:28 +01:00
Mike Jolley f63c500848 Merge pull request #8768 from SiR-DanieL/session-delete
Instroducing WC_Session::delete
2015-09-16 10:34:51 +01:00
Nicola Mustone 7d6bf488c9 using unset also in the magic method 2015-09-16 11:34:22 +02:00
Nicola Mustone 6bc17c65c8 delete to unset 2015-09-16 11:34:03 +02:00
Claudio Sanches f7d035e739 Merge pull request #9084 from rchq/patch-1
Added an action for notifications
2015-09-15 19:59:16 -03:00
Mike Jolley 0830543c4f Add disclaimer to woocommerce_adjust_non_base_location_prices 2015-09-15 16:01:11 +01:00
Mike Jolley 4959937689 Merge branch 'universal-pricing-test' 2015-09-15 15:57:04 +01:00
Mike Jolley 9f1a5e3c26 Remove unused arg 2015-09-15 12:51:45 +01:00
Mike Jolley 0164584aaf Reduce stock once and record in _order_stock_reduced meta
Also clears up the payment_complete method
2015-09-15 12:39:16 +01:00
rchq 332c1bdf9c Update abstract-wc-order.php
Created an action to be able to hook into and add additional notification triggers.
2015-09-08 11:00:22 -07:00
Mike Jolley 358f3f79fa Don't use extract() in add_rate
#9057
2015-09-07 16:02:23 +01:00
James Koster 8eebc7c900 Free is an amount!
All product prices are wrapped in `span class=“amount”`. To make
themers lives easier let’s be consistent. When the product is free the
price should still be wrapped.
2015-09-04 11:19:52 +01:00
Mike Jolley d90d562b42 Leave excl function alone 2015-09-04 10:57:22 +01:00
Mike Jolley e08f8d8902 Apply woocommerce_adjust_non_base_location_prices to all prices 2015-09-04 10:48:50 +01:00
Mike Jolley fad48bf800 Add filters to control shipped via text 2015-09-03 15:05:10 +01:00
Mike Jolley fdb25fa0c3 Pass through tax_display
Fixes #8951
2015-08-26 13:05:52 +01:00
Mike Jolley 57bb0ebe25 Record manual order status change 2015-08-18 16:33:38 +01:00
Mike Jolley 1999dbe92d Improve display_item_downloads numbering and use same function in emails. 2015-08-17 12:17:56 +01:00
Mike Jolley 63fe4a0c05 Correct docbloc Closes #8814 2015-08-13 18:05:55 +01:00
Nicola Mustone 1017798c6c instroducing WC_Session::delete 2015-08-11 10:11:36 +02:00
Brent Shepherd a826330ad0 Reinstate default value for $items
That was (accidentally?) removed with SHA: 877e39064

Fixes "PHP Notice:  Undefined variable: items" when attempting to get
line items of a type that does not exist on the order, like coupons.
2015-08-07 12:12:08 -07:00
Mike Jolley 877e390646 Remove $type from prepare 2015-08-07 14:06:19 +01:00
Mike Jolley 4c8ef3ff33 Use esc_sql on item type instead of esc_attr 2015-08-07 11:37:19 +01:00
George Stephanis c938fa24da More missing esc_attr calls, :( 2015-08-05 15:17:52 -04:00
Mike Jolley 7f3c2a78c5 Get total functions should respect rounding settings.
Closes #8707
2015-08-05 14:33:53 +01:00
Mike Jolley afd0e9edd4 Pass $this to filters
#8722
2015-08-05 13:49:27 +01:00
Nicola Mustone 9822edda0b better naming 2015-08-05 13:54:20 +02:00
Nicola Mustone 9140ca0f76 added cross and up sells IDs filters 2015-08-05 11:01:47 +02:00
Mike Jolley d6bd46c55d Move expand_item_meta to own method
Fixes notices in some extensions (deposits)
2015-08-03 13:21:44 +01:00
Mike Jolley ef798921aa woocommerce_can_reduce_order_stock filter
Needed for extension (deposits)
2015-08-03 10:37:58 +01:00
Mike Jolley 7b2aec4791 Take item qty into consideration when refunding orders
Fixes #8675
2015-07-29 13:13:41 +01:00
Mike Jolley eb19532165 Show 'fee' label is empty 2015-07-28 11:32:53 +01:00
Mike Jolley 794af1c013 When the stock level is changed via update_post_meta ensure the stock_status is kept in sync
Closes #8605
2015-07-27 19:04:08 +01:00
Claudio Sanches c95988bc8a Improve password sanitization in WC_Settings_API, closes #8627
@mikejolley
2015-07-21 18:37:12 -03:00
Claudio Sanches 9e41552342 Removed all "@return void" 2015-07-16 16:55:48 -03:00
Mike Jolley 7285ce74e6 Tax display notice 2015-07-16 10:15:45 +01:00
Mike Jolley f42fa85eab Variation tax status should always come from parent 2015-07-15 19:12:12 +01:00
Mike Jolley db473cc369 Move refund logic into main order class.
These methods are not defined in the abstract.
2015-07-15 16:02:26 +01:00
Mike Jolley 506b5ef3f6 Set total after update_shipping
Based on add_shipping code Closes #8475
2015-07-09 16:48:34 +01:00
Vignesh 91faacb4c9 Return the output directly
Return the output directly instead of variable.
2015-07-09 13:39:29 +05:30
Claudio Sanches 89cef9ff02 Introduces methods to WC_Abstract_Order for get customer full name
New methods:

WC_Abstract_Order::get_formatted_billing_full_name()
WC_Abstract_Order::get_formatted_shipping_full_name()

closes #8535

cc: @mikejolley
2015-07-08 18:00:19 -03:00
Mike Jolley dc00921ced Merge pull request #8486 from justinshreve/get-price-suffix-price-param
Add $price and $qty parameters to get_price_suffix
2015-06-30 12:59:43 +02:00
Justin Shreve eb85cd1682 Add $price and $qty to get_price_suffix so custom values can be passed into get_price_including_tax and get_price_excluding_tax 2015-06-29 19:24:48 +00:00
Justin Sainton 4d5d018a34 Deprecate PHP4 constructor usage in widgets. This is deprecated in upcoming PHP versions. 2015-06-29 11:46:03 -07:00
Gregory Karpinsky 9094bb0662 Do not FATAL on $product->has_file 2015-06-29 09:08:16 -04:00
Mike Jolley 71f2c25da4 Calc totals should not calc tax if disabled 2015-06-23 13:29:38 +01:00
Mike Jolley e08e123988 Note version since 2015-06-19 13:43:18 +01:00
Gabor Javorszky 1dfb27f928 Adds WC_Abstract_Order->get_address
Adds a function to retrieve order address in non-localized, raw, non-formatted way.
2015-06-19 01:43:31 +01:00
Justin Shreve 133b9ce969 Implement the new color picker + preview for integrations as well. 2015-06-11 14:40:06 +00:00
Mike Jolley bb4c303c39 get_type has no args 2015-06-08 12:22:26 +01:00
Mike Jolley 3c87e39ce6 Product get_type() method 2015-06-08 12:20:39 +01:00
Mike Jolley 60dd4474db abstract email class should not exist ! legacy 2015-06-01 10:48:13 -03:00
Mike Jolley ed99be9aed Sanitize tooltips with htmlspecialchars and remove esc_attr usage
Part of #4
2015-06-01 13:36:03 +01:00
Claudio Sanches 51c8bbf87c wrong nonce verification 2015-06-01 13:33:51 +01:00
Nathan Dawson e535e005b7 Add a filter to override needs_shipping_address order method.
If an order doesn't have any shipping methods it's not possible to set needs_shipping_address to true. When 'woocommerce_cart_needs_shipping_address' is set to true the address needs to be shown on the front end and in confirmation emails.
2015-05-28 15:48:37 +01:00
Mike Jolley 5920b88d5d Add classes to tax and shipping labels/notices
Closes #8189
2015-05-27 16:17:36 +01:00
Mike Jolley 28d838c5cd [2.3] Related posts tweaks
Remove real randomness and add transient caching to improve performance.

The above was not worth the cost of the query - only users refreshing a
product page would see a difference.
2015-05-25 15:40:28 +01:00
Shiva Poudel cadc1ab301 Add id for title
Fixes scrutinizer issues for not having param
2015-05-25 17:32:30 +05:45
Shiva Poudel 2871df7451 Move the validate checkbox method above select 2015-05-25 16:58:08 +05:45
Shiva Poudel 4d46b35590 Clean settings-api docblock 2015-05-25 16:56:44 +05:45
Shiva Poudel d90bb50c20 Use get_field_key for validate_*_field 2015-05-25 16:41:08 +05:45
Shiva Poudel 3b9124e0cf Use get_field_key for generate_*_html 2015-05-25 16:28:19 +05:45
Shiva Poudel 597b152407 Introduce get_field_key method for settings API 2015-05-25 16:18:28 +05:45
Mike Jolley b8bcd24edd [2.3] Combine transients for get_rating_count
@claudiosmweb
2015-05-25 02:00:20 +01:00
Mike Jolley 1b73322874 [2.3] Replace max_related_posts_query with wp_count_posts 2015-05-25 01:20:31 +01:00
Mike Jolley 3e8ba7d591 Merge pull request #8062 from Victoor/master
Add order to woocommerce_get_return_url filter
2015-05-01 15:36:16 +01:00
Mike Jolley d6604cb668 Split order details into customer + item templates. Tidied up codebase/template based logic.
cc @jameskoster
2015-05-01 14:50:18 +01:00
Mike Jolley 77941a57c5 New way to gather item meta with bw compatibility on item meta class
#7210

This also includes a new template file for order item details.
@jameskoster Version bumping the order details template. Splitting it
up some more in next commit.
2015-05-01 12:42:29 +01:00
Víctor Falcón 226d940e72 Add order to woocommerce_get_return_url filter 2015-04-28 14:48:39 +02:00
Mike Jolley 30d2ab8af8 Avoid setting is_customer_note when 0
Closes #7995
2015-04-23 11:50:09 +01:00
Mike Jolley 9f57025a1e Remove unnecessary stock notice
Closes #7990
2015-04-23 11:04:16 +01:00
Mike Jolley 9debd84a7f Merge pull request #7978 from InoPlugs/patch-3
[2.3] Update abstract-wc-order.php
2015-04-20 11:12:25 +01:00
InoPlugs Webdesign 520282ff16 Update abstract-wc-order.php
Using a wrong key name -> 'cart_discount_tax' is calculated wrong a few lines below (= $cart_subtotal_tax)
2015-04-18 14:44:39 +02:00
Spreeuw 1e2d0775c4 tax text for negative shipping (refunds) 2015-04-17 12:45:32 +02:00
Spreeuw 3f0b589797 Make get_shipping_to_display compatible with refunds 2015-04-17 12:38:08 +02:00
Mike Jolley 467a269175 Only set author for user added notes so system notes can be distinguished 2015-04-17 11:23:09 +01:00
Mike Jolley 9f65d2a1fc Added priorities for shipping methods to give more control over defaults.
Closes #7871
2015-04-13 15:32:57 +01:00
Mike Jolley 06f2ac2f09 [2.3] Remove rounding from shipping cost to greater precision with taxes 2015-03-31 13:59:17 +01:00
Mike Jolley c410771de2 [2.3] Calculate taxes should save _line_tax_data 2015-03-31 13:21:10 +01:00
Mike Jolley c6dae2b286 Merge pull request #7834 from SiR-DanieL/scrutinizer-issues
Small tweaks and style fixes
2015-03-30 10:33:27 +01:00
Nicola Mustone 95cdb0390f fix related products error 2015-03-27 17:52:21 +01:00
Nicola Mustone 214a0b669f splitted get_related for complexity 2015-03-27 17:28:26 +01:00
Nicola Mustone d2af01df5b scrutinizer suggested tweaks 2015-03-27 16:15:40 +01:00
Mike Jolley 23932dbfca Default calculate_taxes to base
Closes #7765
2015-03-27 10:42:26 +00:00
Mike Jolley ca934ba0d9 Add get methods for length, width, height and add filters
Closes #7617
2015-03-24 16:52:26 +00:00
Mike Jolley 70bf6fc842 [2.3] prices_include_tax boolean fix
Closes #7788
2015-03-23 13:35:40 +00:00
Mike Jolley f04ebeb78e has_enough_stock - use get_stock_quantity
Closes #7779
2015-03-20 10:40:53 +00:00
Mike Jolley 70d125ae96 [2.3] Fix - get_total_discount() function with certain tax setups.
Revised how discounts/discount taxes are stored for consistency. Always
store ex. tax to make data retrieval easier, and to ensure totals are
correct after settings changes. Backwards compatibility maintained
through use of order versioning.

#7728
2015-03-16 12:17:09 +00:00
Mike Jolley d49b5eb182 pass args to order amount filters
Closes #7718
2015-03-13 10:03:08 +00:00
Mike Jolley 6447d4081f Prevent notice
Closes #7705
Fixes #7704
2015-03-13 09:25:24 +00:00
Mike Jolley c44100f9e7 wc_sanitize_tooltip 2015-03-13 09:14:28 +00:00
Mike Jolley 8554796c4b Show calculate total when shipping is needed, but shipping is hidden.
Closes #7650
2015-03-10 16:57:43 +00:00
Barry Kooij 44d8bee22c Use round instead of number_format 2015-03-09 18:10:49 +01:00
Barry Kooij 245a2cf4e7 Added the option to not round the line total. 2015-03-09 18:06:31 +01:00
Mike Jolley 3fc7a0ae65 Allow wc_attribute_label to support product-level attribute names.
Closes #7662
2015-03-09 13:40:07 +00:00
Mike Jolley fa0be55b01 transient cache dashboard reports
Closes #7641
2015-03-09 11:07:49 +00:00
Tamara Zuk d4b08daa64 Avoid 'division by zero' warnings
SHA 85befad283 does not avoid these
warnings if `$inc_tax` is `false`.
2015-03-06 17:46:31 -05:00
Mike Jolley 568a0fe4fa Tweak international delivery
Fixes #7651
2015-03-06 14:45:04 +00:00
Barry Kooij c45c4fd1a2 optimize PR#7605 2015-03-06 15:06:24 +01:00
Tamara Zuk 0e4cea8e85 Introduce `WC_Order::get_cancel_order_url_raw()` method 2015-03-03 02:01:17 -05:00
Claudio Sanches f2fc3b151f Merge pull request #7562 from tjuris/get-related-terms-filters
Apply filters to product/tag terms when querying related products
2015-03-02 10:39:31 -03:00
Tanel Jüris fe60425eeb Rename filter prefix from wc_ to woocommerce_ 2015-03-02 12:09:24 +02:00
Mike Jolley d98569327d Check payment title exists before output. 2015-03-02 10:03:30 +00:00
Barry Kooij ffc436957b Removed double @property comment 2015-02-26 17:14:06 +01:00
Tanel Jüris d9a568bbea Apply filters to product/tag terms when querying related products 2015-02-25 16:02:31 +02:00
Mike Jolley 26487a5734 Fix - Settings API - allow multiselect fields to be emptied.
Closes #7542
2015-02-24 12:12:42 +00:00
Mike Jolley d9455994c8 Use 30 days instead of year for transients to avoid bugs in memcache plugins.
Closes #7520
2015-02-24 12:02:56 +00:00
Mike Jolley 4c411a69e7 * Fix - Saving an order needs to save the discount amount ex. tax like
the cart.
* Tweak - Show discounts inc. tax when showing order totals inc. tax.

Closes #7532

@barrykooij @claudiosmweb How does this look? Looks like we were saving
order discounts inconsistent with the cart/checkout
2015-02-23 17:39:57 +00:00
Mike Jolley 6c9562112f Fix Related post offset. 2015-02-20 16:17:45 +00:00
Mike Jolley 44cf2c2b70 Filter before max_related_posts 2015-02-16 16:48:11 +00:00
Mike Jolley 5c1a0d92e8 Related posts - replace ORDER BY RAND() with random offset.
Closes #7436
2015-02-16 13:16:18 +00:00
Mike Jolley 969e2d3b18 Stock status when updating out of stock product.
Fixes #7402
2015-02-16 12:14:10 +00:00
Paul Wilde c913316f8b Introduce wc_get_page_permalink. 2015-02-15 19:13:22 +00:00
Mike Jolley 30abed2f9e Merge pull request #7375 from tamarazuk/rating-count-fix
Fix average product rating when ratings are not required
2015-02-12 00:04:26 +00:00
Tamara Zuk 7eaae2d561 Fix average product rating when ratings are not required
If ratings are not required, the total rating count was counting all
reviews which skewed the average rating. In other words, reviews with
no rating were counted as a “zero” rating in the average rating
calculation. This bug was introduced in
83a457b29c which provided a fix for #6839.

This change introduces a new product method `get_review_count()` which
can be used to accurately calculate the total number of reviews for a
product. Some instances of `get_rating_count()` were replaced with
`get_review_count()` where appropriate. Additionally, the
`single-product/rating.php` template was adjusted to display the
correct number of customer reviews and ratings in rich snippets. I’ve
also included the `bestRating` rich snippet detailed
[here](http://schema.org/AggregateRating). The version number was
adjusted to 2.3.2 on that template as I think this is a larger change.
2015-02-11 17:55:16 -05:00
Mike Jolley 43c24feffd Item meta removal query in order class. 2015-02-11 22:14:24 +00:00
Brent Shepherd f1fa927f57 Fix WC_Order::payment_complete() on back-end
SHA: c038001eab changed `WC_Abstract_Order::payment_complete()` to use
WC()->session->set( 'order_awaiting_payment' ) instead of
`WC()->session->order_awaiting_payment`, but `WC()->session` is only
set on front-end requests, meaning any extension that tries to complete
payment on an order from the back-end would cause a fatal error.
2015-02-10 16:55:47 -08:00
Claudio Sanches 22c4f02bbf Used filtered comment for woocommerce_new_customer_note action, closes #7349 2015-02-10 14:44:28 -02:00
Claudio Sanches 0558c3c286 Added woocommerce_product_get_rating_html filter for WC_Product class, closes #7337 2015-02-10 13:01:04 -02:00
Mike Jolley 840efcaa00 is_on_sale should compare type Fixes #7344 2015-02-10 12:34:53 +00:00
Mike Jolley 893babaaef woocommerce_product_get_weight filter Closes #7319 2015-02-10 11:18:38 +00:00
Mike Jolley 037242a9a2 More docblock tweaks 2015-02-03 16:03:28 +00:00
Mike Jolley 74abdf27c9 Cast to array 2015-02-03 15:06:08 +00:00
Mike Jolley f032a9c7dd Missing props 2015-02-03 14:44:57 +00:00
Mike Jolley f93e027b09 validate_multiselect_field had dead var 2015-02-03 14:05:09 +00:00
Mike Jolley f711ef32ce Missing bracket in previous commit #copypastefail 2015-02-03 13:16:41 +00:00
Mike Jolley 7c019c0c50 More docblocks; the check for WP_POST isn't needed as the second case (isset) runs regardless and is true for posts 2015-02-03 13:13:07 +00:00
Mike Jolley c038001eab Docblocks for order/product 2015-02-03 12:57:08 +00:00
Mike Jolley dc5b8d9710 @var 2015-02-03 12:28:15 +00:00
Mike Jolley 6bc269858a tweak docblock 2015-01-30 14:30:10 +00:00
Claudio Sanches d6023818fd Fixed the increase and decreate of coupons usage count 2015-01-30 12:14:34 -02:00
Claudio Sanches def250e912 Display taxes labels in order totals when order has refunded, closes #7229 2015-01-29 18:50:08 -02:00
Claudio Sanches c995f23354 Fixed WC_Abstract_Order coupon methods
@mikejolley
2015-01-26 16:48:03 -02:00
Claudio Sanches 8ff08e70af Fixed the WC_Abstract_Order::get_user_id() return type and fixed the orders customer_id 2015-01-26 14:41:19 -02:00
Mike Jolley 54e025939b Use get_post_status to avoid out of date order data.
Partly related to #7208
2015-01-26 13:07:29 +00:00
Brent Shepherd 95d87e28d6 Do not set property when calling __get()
SHA: 100b95a tweaked the `__get()` magic method in `WC_Product` to:
 * only call `get_post_meta()` once; and
 * set `$this->$key` to save the overhead of calling `__get()` every
   time that property needs to be accessed.

However, in the process, it also set an empty value (`''`) - the default
return value of `get_post_meta()` for every single value accessed on
the product object, meaning that any calls to `isset()` after attempting
to get that value would return `true`, even if `metadata_exists()` for
that property would return false (and no value is set in memory).
2015-01-23 15:01:10 -08:00
Claudio Sanches 04c584ccf6 Added properties docs for abstract product class 2015-01-23 15:51:33 -02:00
Scrutinizer Auto-Fixer 19f660171e Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2015-01-23 14:37:20 +00:00
Mike Jolley 7f2a943075 Docblocks 2015-01-23 14:35:17 +00:00
Mike Jolley 2584041700 wc_price enhancements
- Renamed some 2.3 methods for consistency
- Allow more args to be passed to wc_price to control output
- Filter wc_price args which Closes #7188
- wc_get_price_decimal_separator function
- wc_get_price_thousand_separator function
- wc_get_price_decimals function
2015-01-23 11:50:32 +00:00
Mike Jolley 91de767442 Product constructor setting post incorrectly 2015-01-20 14:00:30 +00:00
Mike Jolley 5404006b29 MAP Url method 2015-01-20 13:31:02 +00:00