Commit Graph

321 Commits

Author SHA1 Message Date
Nestor Soriano 281ec18158 Undo the registration of old singletons in the DI container.
The container will in principle be used only to register classes
in the `src` directory.

Also, CustomerProvider class removed.
2020-07-24 09:20:24 +02:00
Nestor Soriano 312383ae47 First steps towards introducing a dependency injection framework.
- Add PHP League's Container package via Composer.
- Add an ObjectContainer class that encapsulates all the configuration
  and insulates the codebase from the concrete DI engine used.
- Add an improved ReflectionContainer class that will allow to
  register individual classes as singletons while autowiring.
- Use ObjectContainer to resolve the WooCommerce class, everything
  instantiated with "new" inside it, and all singletons that are
  usually obtained via WC() function.
- Introduce the CustomerProvider class.
- Introduce a service provider to resolve WC_Queue_Interface,
  this replaces the WC_Queue class.
- Mark as obsolete all the replaced "instance()" methods,
  and the entire WC_Queue class.
2020-07-24 09:20:21 +02:00
vedanshujain b8a1a69b2b Updated annotations to 4.3 2020-06-15 18:55:00 +05:30
Vedanshu Jain b45373fe0c Revert "Revert "Introduce a `reserved stock` class and database table to prevent race conditions during checkout"" 2020-06-05 15:18:01 +05:30
Claudio Sanches f3dc64679d Set an error ID for each WP_Error entry 2020-05-05 15:56:16 -03:00
Vedanshu Jain ee119e0a7e
Revert "Introduce a `reserved stock` class and database table to prevent race conditions during checkout" 2020-04-21 15:37:21 +05:30
Vedanshu Jain 3bf473517d
Merge pull request #25708 from woocommerce/update/reserve-stock-for-checkout
Introduce a `reserved stock` class and database table to prevent race conditions during checkout
2020-04-07 02:16:22 +05:30
Vedanshu Jain 237463c39b
Merge pull request #25800 from woocommerce/fix/25748
Fixes tax rounding issues
2020-04-07 00:24:34 +05:30
Mike Jolley f248902454 Update versions 2020-04-03 15:56:43 +01:00
Mike Jolley 910a13f544 Fire action hooks rather than call stock holding functions directly 2020-04-03 15:55:14 +01:00
Claudio Sanches 2ebd86f2dc Revert "Revert "Add support for '_held_for_checkout` records to prevent race conditions."" 2020-04-03 15:55:13 +01:00
Daniel Morell 7b7934e237
Fixed screen-reader-text label class set as string
The field 'label_class' should be an array not a string. This fix makes it an array.
2020-03-03 14:06:52 -06:00
vedanshujain f5e5eda946 Refactor `create_order` to make it more testable 2020-03-02 15:19:00 +05:30
Reüel van der Steege 97456e7d78 Add order meta `is_vat_exempt` with unique meta key. 2020-01-20 12:06:32 +01:00
vedanshujain 72545c44b7 Add support for `_held_for_checkout` records to improve performance.
This will also improve transactional stability and avoid race conditions by providing a way to lock usage counts.
2019-12-17 19:13:19 +05:30
Claudio Sanches af4ef7ea0d Pass input ID to wc_add_notice() 2019-11-07 20:25:06 -03:00
Ewout Fernhout 40a1f268f1 fix setting rate percent in checkout 2019-07-11 15:56:02 +02:00
parmarhardip 6b92769626 Fixes #23521 - Billing Email and Country now autofill for newly registered customers 2019-04-26 17:21:40 +05:30
Gerhard 134f9c9c8e Fix PHPCS 2019-04-15 12:13:02 +02:00
Ralf 66540f1b5d Moved accessibility labels for checkout after woocommerce_checkout_fields filter 2019-04-15 12:09:33 +02:00
Mike Jolley cc8e516f7a
Merge pull request #22786 from woocommerce/improve/user-registration
Improve user's display_name generation during checkout
2019-02-27 12:55:56 +00:00
Claudio Sanches 5302434057 Fill user first and last name during checkout 2019-02-20 16:29:34 -03:00
Claudio Sanches efaa723a5b Only set user first and last names when those fields are empty 2019-02-20 13:55:51 -03:00
Mike Jolley 4672a47d67 Update from master 2019-02-18 11:41:05 +00:00
Mike Jolley eed91070b1 Allow notice to persist after customer ID change 2019-02-04 15:48:59 +00:00
Mike Jolley fe2e70d7dc
Merge pull request #22392 from woocommerce/fix/checkout-shipping-address-20975
For logged in customers, pull default address fields from customer object, not session object
2019-02-04 11:23:03 +00:00
Mike Jolley 40694118fc Merge branch 'pr/21050' 2019-01-31 15:47:52 +00:00
Mike Jolley a68ed39e63 use cart hash method on checkout 2019-01-31 15:46:41 +00:00
Gerhard 8a685c3303 is_vat_exempt check on orders expect a yes/no and not a bool, save values as string. 2019-01-17 07:46:45 +02:00
Gerhard 26f9aad65c add_meta_data not add_meta 2019-01-16 09:18:54 +02:00
Gerhard f11613c5e9 Set order vat exempt status to that of customer on checkout. 2019-01-15 13:20:07 +02:00
Mike Jolley 2dbdc9d356 Load address from stored customer data for first time, not session. 2019-01-09 11:14:57 +00:00
Mike Jolley ce2473e09f Whenn loading address fields, enforce valid address 2019-01-07 16:03:23 +00:00
JeroenSormani f4775ccd90 Use shipping method instead of property through magic + doc return statements 2019-01-04 12:41:38 +00:00
Gerhard c356f3d053 Sort checkout fields using PHP and not JS on initial page load as it causes issues as per #20640
Co-authored-by pierrebuet
2018-10-31 08:14:50 +02:00
Peter Fabian 897af8d20e Updated phone validation and formatting rules. 2018-08-24 15:43:46 +02:00
Claudiu Lodromanean fe69a875e2
Merge pull request #20993 from woocommerce/fix/20959
Changed wc_clean to checking for valid utf8 for line items and password.
2018-08-22 10:12:48 -07:00
Peter Fabian 1a2f0d4a0b Removed check for invalid utf8 in passwords. 2018-08-17 11:01:30 +02:00
Peter Fabian d4fab78b05 PHPCS update. 2018-08-09 11:30:40 +02:00
Gerhard Potgieter 70e9b747e8
Merge pull request #20832 from rnaby/180718-010448-class-wc-checkout
HashTable Implemented
2018-08-07 12:26:08 +02:00
Peter Fabian 925002bc37 Changed wc_clean sanitization to checking for valid utf8 and the input is later sanitized by WordPress db layer.
It caused issues in 2 places: Order item name (product name) and user's password.
2018-08-06 20:49:27 +02:00
Shohei Tanaka d77990edde
Update it again
Thank you for the concrete method.
2018-07-29 09:17:39 +09:00
Shohei Tanaka f4db4ecad7
Update it
Do you mean it?
2018-07-27 19:12:17 +09:00
Shohei Tanaka fdc9d42dc4
If email @local include non alphabet
If I input infoおおお@test.com as billing email address, automatically change to info@test.com by sanitize_email function.

So at first check the email address by is_email function, after that we must use sanitize_email function.
2018-07-27 00:18:09 +09:00
Khan M Rashedun-Naby 416f4b64ee HashTable Implemented 2018-07-18 01:37:08 +06:00
Mike Jolley fe25006fa1 Store name and other data to customer session during checkout 2018-06-29 12:42:10 +01:00
Mike Jolley 4df54b4e53 Merge branch 'master' 2018-06-07 11:24:12 +01:00
Mike Jolley db9ab9cb8f
Merge pull request #20330 from woocommerce/update/19745
Eircode validation and formatting tweaks
2018-06-07 10:41:35 +01:00
claudiulodro 5fbb997949 Format shipping info when copied from billing 2018-06-01 08:28:18 -07:00
claudiulodro cd303d3540 Fix typo in error message 2018-05-31 12:40:58 -07:00