Commit Graph

356 Commits

Author SHA1 Message Date
Claudio Sanches 787bb7f0c0 Fixed permalink default values (#17385)
* Fixed permalink default values

`woocommerce_permalinks` may return a list with empty results like:

wp> get_option( 'woocommerce_permalinks', array() )
=> array(5) {
  ["product_base"]=>
    string(8) "/product"
  ["category_base"]=>
    string(16) ""
  ["tag_base"]=>
    string(11) ""
  ["attribute_base"]=>
    string(0) ""
  ["use_verbose_page_rules"]=>
    bool(false)
}

This override all placeholders declared with `wp_parse_args()`.

`wp_parse_args()` can apply default values only when missing, and not empty.

This PR removes all empty values in order to use the placeholders.

Fixes a bug introduced in #17352

* Moved array_filter() before wp_parse_args()
2017-10-26 13:57:40 +01:00
Mike Jolley e68f087659 When no permalinks are set, set the defaults and avoid switching locales 2017-10-24 16:29:04 +01:00
Mike Jolley 88ea1eaf7b Remove rounding in wc_remove_number_precision
Remove the rounding when removing precision so the cart can handle it.

For taxes, this means it can round down.

Fixes #17158

Tests are passing.
2017-10-12 15:16:48 +01:00
Mike Jolley d09d7d1358 wc_get_relative_url/wc_is_external_resource helpers 2017-09-08 12:20:03 +01:00
claudiulodro ccade24ce5 Only set some fields on new orders 2017-09-07 13:50:47 -07:00
Mike Jolley a8a33c8f0d Merge pull request #16717 from woocommerce/refactore/wc_maybe_define_constant
Use wc_maybe_define_constant() in all places
2017-09-07 12:16:13 +01:00
Claudio Sanches 4e9cf1c598 Restored WooCommerce->define access to private 2017-09-06 14:47:35 -03:00
Claudio Sanches f98aeb5b91 Use WC()->define() into wc_maybe_define_constant() 2017-09-05 16:51:09 -03:00
Mike Jolley 5c5a8f4e8e Helper functions 2017-09-05 11:54:04 +01:00
Anton Timmermans f73c198404
Cache currencies for performance 2017-09-01 18:30:08 +02:00
Mike Jolley d68291b3ac Merge pull request #16086 from woocommerce/improvement/versions
Extensions version check.
2017-08-21 18:18:04 +01:00
rspublishing 9ed2f7544f Updated XAF and XOF denominators 2017-08-20 21:48:18 +02:00
Claudio Sanches b93a95423f Use wc_strtolower() to format coupon code
Improves #16519
2017-08-18 14:11:33 -03:00
Mike Jolley f957546cc4 Format coupon code with mb_strtolower
Fixes #16497
2017-08-18 15:43:34 +01:00
Rami Yushuvaev 7ad61068e1 i18n: Simpler translation string with placeholders
Replace:

`The class <code>%s</code> provided by woocommerce_logging_class filter must implement <code>WC_Logger_Interface</code>.`

With:

`The class %1$s provided by %2$s filter must implement %3$s.`
2017-08-15 14:39:41 +03:00
Mike Jolley 7620473fa5 Support callback for index 2017-08-11 13:52:28 +01:00
Mike Jolley 140771e759 Merge branch 'master' into improvement/versions
# Conflicts:
#	assets/css/admin-rtl.css
#	assets/css/admin.css
#	assets/css/helper-rtl.css
#	assets/css/helper.css
#	assets/css/twenty-seventeen-rtl.css
#	assets/css/twenty-seventeen.css
#	assets/css/wc-setup-rtl.css
#	assets/css/wc-setup.css
2017-08-09 10:08:06 +01:00
Mike Jolley e9c3ebebdc Merge branch 'master' into feature/discounts-class
# Conflicts:
#	includes/abstracts/abstract-wc-data.php
#	woocommerce.php
2017-08-08 15:49:59 +01:00
Mike Jolley 862f67d98b wc_get_var helper method 2017-08-07 11:02:19 +01:00
claudiulodro c634ac6cf1 Prevent auto updates if dangerous. 2017-08-03 11:42:19 -07:00
Mike Jolley 306db69eaf Remove order subclass 2017-07-27 10:49:47 +01:00
Mike Angstadt 00e8c9a505 removed leading slashes
removed leading slashes
2017-07-11 08:45:06 -05:00
Mike Angstadt 2239ad6dcb updated based on reviewer feedback
Updated based on reviewer feedback.
2017-07-11 08:43:55 -05:00
Mike Angstadt fa4e4e40fd Explicitly set include path
If you override include_path and are including this file from outside this directory's context, performance will degrade as both those locations are incorrectly checked first getting an EOF before include() falls back to looking in this directory.

Explicitly setting the include path checks this directory first regardless of calling context location or include_path override so is ideal.
2017-07-10 21:33:42 -05:00
1do 344807bd15 changed misspelled filter name 2017-06-19 14:22:31 +03: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 0d7614d44b Fix locale notice
Closes #15502
2017-06-07 14:31:09 +01:00
Mike Jolley d62aefba74 Merge branch 'master' into fix/15414
# Conflicts:
#	includes/wc-core-functions.php
2017-06-06 12:55:50 +01:00
Mike Jolley 09d43670fc function exists 2017-06-06 12:54:49 +01:00
Claudio Sanches 6c42f3c16a Properly sanitization for wc_make_phone_clickable() and fixed coding standards
Closes #14659
2017-06-05 16:15:04 -03:00
Claudio Sanches f65005be41 Merge pull request #14719 from avinapatel/fix-14659
Made the buyer phone number clickable in the in the order backend.
2017-06-05 15:47:16 -03:00
Mike Jolley 67a0637417 Advanced locale switching 2017-06-05 14:18:39 +01:00
Mike Jolley b1ccb76d06 Update florin
Fixes #15412
2017-06-02 15:14:29 +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
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
Rasmus Bengtsson 6a7fc8650f Remove unused local variables 2017-05-15 12:06:52 +02:00
Mike Jolley d0ebf48da4 Merge branch 'fix-13625'
# Conflicts:
#	assets/css/woocommerce-layout-rtl.css
#	assets/css/woocommerce-layout.css
#	assets/css/woocommerce-layout.scss
#	includes/wc-core-functions.php
2017-04-27 18:05:34 +01:00
Claudio Sanches 1bf2902762 Check if get_current_screen() is true 2017-04-27 12:42:16 -03:00
Claudio Sanches dbddcaf95f Fixed how to flush rewrite rules after save the shop main page
Fixes #14452
2017-04-26 21:51:30 -03:00
avinapatel 824f13924e Made the buyer phone number clickable in the in the order backend. 2017-04-26 17:48:56 +05:30
Claudio Sanches 5eab267ec1 Fixed shortcodes formatted with <p> and improved wc_format_content()
This fix the shortcode issue, stop extra sanitization and allow use
smilies, attachments, embeds and Jetpack markdown.

Closes #14135
2017-04-10 19:21:22 -03:00
Claudiu Lodromanean 7c8c17d284 Enable oembeds in short descriptions 2017-03-17 11:39:17 -07:00
Claudio Sanches 59c2849736 Changed version 2.7 to 3.0 2017-03-15 13:36:53 -03:00
Eric Busch c7b623e36a Removed duplicate $symbols array key
'MAD' key was used twice in the get_woocommerce_currency_symbol() function. Removed the 'MAD' key containing this value: '&#x62f;. &#x645;.'
2017-02-23 12:59:09 -05:00
Mike Jolley 04955093d6 Use admin init hook
Closes #13248
2017-02-21 12:20:47 +00:00
Mike Jolley bbf8e750ce Tidy up includes 2017-02-16 11:46:01 +00:00
Mike Jolley 8242e5496d Switch locale only after init 2017-02-09 11:23:44 +00:00
Mike Jolley 09f2c6b89a Add locale independent wc_get_permalink_structure function 2017-02-07 16:16:45 +00:00
Mike Jolley 55c9554ace Use MDL
Closes #13016
2017-01-30 10:35:47 +01:00
Mike Jolley f0049367ae Use mb_ functions and add tests 2017-01-22 01:24:20 +00:00
Jon Surrell 7822c38a2c Accept object from woocommerce_logging_class filter
The filter `woocommerce_logging_class` allows replacement of the
built in `WC_Logger` as the shared logger. However, we statically
instantiate the classname as `$logger = new $class`. This prevents
use of any class which needs to be instantiated with arguments.

This change allows the `woocommerce_logging_class` filter to provide
an object which will be used as the shared logger.
2017-01-15 13:41:21 +01:00
Jon Surrell ef9624efff Ensure filter provided logging class implements WC_Logger_Interface 2017-01-14 18:39:40 +01:00
Claudio Sanches 9c27661dea Synchronized with master 2017-01-12 17:53:15 -02:00
Jon Surrell e8fd29520f Un-deprecate wc_get_log_file_path 2017-01-12 20:39:39 +01:00
Mike Jolley 76f8c3dddd Escaping for scruitinizer 2017-01-06 12:45:28 +00:00
Claudio Sanches c79b4f1fd5 Fixed case for #12645 2017-01-03 00:26:34 -02:00
Jon Surrell 4cf86ef346 Use constants over settings to configure logger
Settings have been removed.
WC_LOG_THRESHOLD and WC_LOG_HANDLER constants have been added.
2016-12-29 11:58:43 +01:00
Jon Surrell 5700043e6d Deprecate wc_get_log_file_path
wc_get_log_file_path moves into `WC_Log_Handler_File` class as a static
method.
Update deprecations and version info.
2016-12-29 11:58:43 +01:00
Jon Surrell d4e8bb82e6 Remove new handler arguments from `wc_register_default_log_handler` 2016-12-29 11:58:43 +01:00
Jon Surrell aee5917440 Change wc_safe_dump to wc_print_r
Match print_r arguments, this makes usage obvious.
2016-12-29 11:58:43 +01:00
Jon Surrell 9ba616b2c1 Return single instance from wc_get_logger
Remove class include from wc_get_logger (should be autoloaded).
Add tests for wc_get_logger.
2016-12-29 11:58:43 +01:00
Jon Surrell ae72ce24c4 Drop `var_dump` as safe dump alternative
var_dump does not support returning string representation.
2016-12-29 11:58:43 +01:00
Jon Surrell d88ea4ecea Spelling and doc fixes 2016-12-29 11:58:43 +01:00
Jon Surrell 0f13cca921 Use autoloader for log handlers 2016-12-29 11:58:43 +01:00
Jon Surrell c633db9d65 Add woocommerce_default_log_handler setting
Adds configuration to settings page
Show status-logs page based on settings (unify logs & database logs)
Register default log handler by default
2016-12-29 11:58:42 +01:00
Jon Surrell 915266f967 Add wc_safe_dump function
Some "safe" server configurations disable certain functions. `wc_safe_dump` attempts to
safely call a series of alternatives suitable for dumping an expression.
2016-12-29 11:58:42 +01:00
Jon Surrell fe02d44e31 Defauly log file level is DEBUG 2016-12-29 11:58:42 +01:00
Jon Surrell 9dc30a7203 Remove 2nd filter parameter that would never be called 2016-12-29 11:58:42 +01:00
Jon Surrell 0e0433195d Add logic for log level filtering to `WC_Log_Handler`. 2016-12-29 11:58:42 +01:00
Jon Surrell a2cce14711 Register file log handler by default
Add wc_register_file_log_handler function.
Calls add_filter with register function to include handler by default
2016-12-29 11:58:42 +01:00
Mike Jolley e5c18fd6e4 Fix currency check unit tests 2016-12-19 15:11:25 +00:00
Masoud Amini 7fac0156fe Update wc-core-functions.php 2016-12-19 16:10:11 +03:30
Masoud Amini 72856b1b60 Update wc-core-functions.php 2016-12-19 14:23:56 +03:30
James Koster 7f15372919 declare support and add wrappers. #12038 2016-11-25 11:57:42 +00:00
Mike Jolley 12a216595a CRUD ajax updates 2016-11-24 14:20:58 +00:00
Mike Jolley d7dfdd3d10 Wrap all deprecation calls. 2016-11-23 16:15:00 +00:00
Mike Jolley ac3be6ba50 Order stores complete 2016-11-18 14:07:21 +00:00
Mike Jolley ac6bda2f62 Product crud abstract todos (#12316)
* Get dimensions and weights, with soft deprecation

* Product attributes

* Ratings

* Fix read method

* Downloads

* Feedback

* Fix up store
2016-11-11 15:31:00 +00:00
Mike Jolley 4fc03c9930 Revert "[Product CRUD] Abstract todos (#12305)"
This reverts commit 9a6136fcf8.
2016-11-11 11:58:57 +00:00
Mike Jolley 9a6136fcf8 [Product CRUD] Abstract todos (#12305)
* Get dimensions and weights, with soft deprecation

* Product attributes

* Ratings

* Fix read method

* Downloads

* Feedback
2016-11-11 11:43:52 +00:00
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
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
Rami Yushuvaev d85075dcb0 a11y: replace `title` attributes with `aria-label`, for better accessibility 2016-11-04 17:41:51 +02:00
Rami Yushuvaev 0c1e531091 few more i18n updates (#12185)
* 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
2016-10-26 11:31:32 -02:00
Daniel Hüsken ab7f9dd674 Flush rewrite rules with cron for attribute terms (#12132) 2016-10-21 15:29:50 +01:00
Egill R. Erlendsson 7cbf06f93a Fix currency symbol for Icelandic Krona
The currency symbol for Icelandic Krona is kr, not Kr. This patch fixes
the woocommerce_currency_symbol for ISK.
2016-10-19 13:49:20 +00:00
Mike Jolley 705dc18991 Merge branch 'pr/12064' 2016-10-12 11:54:40 +01:00
Mike Jolley a7e531e26d Made wc_get_wildcard_postcodes return the orignal postcode plus * since wildcards should match empty strings too.
Fixes #12016
2016-10-12 11:52:39 +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
Claudio Sanches baceb4621b Fixed KGS currency symbol.
Fixes based in the http://www.nbkr.kg website
2016-09-21 15:15:51 -03:00
Mike Jolley 0e6bbc8210 User agent tracking 2016-09-12 22:11:05 +01:00
Aristeides Stathopoulos 734f284fa4 WordPress.PHP.YodaConditions.NotYoda 2016-09-08 01:32:24 +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 ec8a0b288b PHPCS: WordPress.Arrays.ArrayDeclaration.NoCommaAfterLast 2016-08-27 05:08:49 +03:00