Commit Graph
15 Commits
Author SHA1 Message Date
Dominik Schilling (ocean90) 9e3f6d338b I18N: Introduce a locale-switching function.
With the introduction of user-specific languages in [38705] it's necessary to be able to switch translations on the fly. For example emails should be sent in the language of the recipient and not the one of the current user.

This introduces a new `WP_Locale_Switcher` class which is used for switching locales and translations. It holds the stack of locales whenever `switch_to_locale( $locale )` is called. With `restore_previous_locale()` you can restore the previous locale. `restore_current_locale()` empties the stack and sets the locale back to the initial value.

`switch_to_locale()` is added to most of core's email functions, either with the value of `get_locale()` (site language) or `get_user_locale()` (user language with fallback to site language).

Props yoavf, tfrommen, swissspidy, pbearne, ocean90.
See #29783.
Fixes #26511.

git-svn-id: https://develop.svn.wordpress.org/trunk@38961 602fd350-edb4-49c9-b593-d223f7449a82
2016-10-26 15:35:58 +00:00
Dion Hulse e4f5801383 Merge the changes to GlotPress's POMO from upstream to WordPress's copy.
Fixes #34748


git-svn-id: https://develop.svn.wordpress.org/trunk@35714 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-20 04:33:12 +00:00
Sergey Biryukov 28a1b19ed1 I18N: After [35620], move the code for standardizing on \n line endings to Translation_Entry::key().
Props dd32.
Fixes #22172.

git-svn-id: https://develop.svn.wordpress.org/trunk@35686 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-18 20:36:50 +00:00
Sergey Biryukov 69106a5971 I18N: In Translations::translate_entry(), account for multi-line strings in files with Windows line endings.
Fixes #22172.

git-svn-id: https://develop.svn.wordpress.org/trunk@35620 602fd350-edb4-49c9-b593-d223f7449a82
2015-11-11 22:48:22 +00:00
Scott Taylor ed7d34cb13 Pass false as the 2nd argument to class_exists() to disable autoloading and to not cause problems for those who define __autoload().
Fixes #20523.


git-svn-id: https://develop.svn.wordpress.org/trunk@34348 602fd350-edb4-49c9-b593-d223f7449a82
2015-09-20 03:51:55 +00:00
Aaron Jorbin 4a60647ab7 Deprecate php4 style constructors
PHP7 is deprecating PHP4 style constructors, so we need to modify our code to have _construct methods that fire before the named PHP4 style constructors.  The PHP4 style constructors will call the PHP5 style constructor in case it is being called directly (usually via parent::METHOD).

This modifies external libraries to add PHP5 style constructors, but doesn't add a notice for when they are used.  In WordPress core code, PHP4 style constructors are being given a call to _deprecated_constructor. To the PHP4 style constructor I say "I know that I can't take no more | It ain't no lie | I wanna see you out that door | Baby, bye, bye, bye..."

Upstream: https://wiki.php.net/rfc/remove_php4_constructors

Props jdgrimes, netweb, jorbin
See #31982



git-svn-id: https://develop.svn.wordpress.org/trunk@32990 602fd350-edb4-49c9-b593-d223f7449a82
2015-06-28 15:26:41 +00:00
Scott Taylor 986990163f Add doc blocks to functions that are missing them.
If the function has no need for `@param` or `@return`, do an archeaological dig to find `@since`.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32672 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-31 03:17:50 +00:00
Scott Taylor c8a44d437a Add @static* annotations where they are missing.
Initialize all static vars that are not, most to `null`.

See #32444.


git-svn-id: https://develop.svn.wordpress.org/trunk@32650 602fd350-edb4-49c9-b593-d223f7449a82
2015-05-29 15:42:40 +00:00
Scott Taylor 2f20da29b5 Replace array_shift() with reset() where appropriate for performance.
Props SergeyBiryukov.
Fixes #31259.


git-svn-id: https://develop.svn.wordpress.org/trunk@31829 602fd350-edb4-49c9-b593-d223f7449a82
2015-03-19 03:55:39 +00:00
Scott Taylor 2bf092065a Add missing @params to src/wp-includes/pomo files.
See #30224.



git-svn-id: https://develop.svn.wordpress.org/trunk@30663 602fd350-edb4-49c9-b593-d223f7449a82
2014-11-30 21:40:53 +00:00
Drew Jaynes (DrewAPicture) ab6063cc88 Fix some documentation typos in various core files.
Props vlajos.
Fixes #29199.


git-svn-id: https://develop.svn.wordpress.org/trunk@29479 602fd350-edb4-49c9-b593-d223f7449a82
2014-08-13 03:55:10 +00:00
Sergey Biryukov 4fd715c937 Introduce a binary-safe wrapper for strlen() and use it in seems_utf8(), utf8_uri_encode(), and wp_read_image_metadata().
Use binary-safe POMO_Reader::strlen() in MO::export_to_file_handle().

fixes #28162.

git-svn-id: https://develop.svn.wordpress.org/trunk@28806 602fd350-edb4-49c9-b593-d223f7449a82
2014-06-23 14:47:08 +00:00
Scott Taylor 5eecd2e62b Eliminate the use of extract() in MO::import_from_reader().
See #22400.


git-svn-id: https://develop.svn.wordpress.org/trunk@28472 602fd350-edb4-49c9-b593-d223f7449a82
2014-05-17 17:20:26 +00:00
Sergey Biryukov 042370471c Fix strict notices in Tests_POMO_PO.
props markoheijnen for initial patch.
fixes #25631.

git-svn-id: https://develop.svn.wordpress.org/trunk@26500 602fd350-edb4-49c9-b593-d223f7449a82
2013-12-01 12:47:35 +00:00
Andrew Nacin b43712e0f7 New develop.svn.wordpress.org repository based on the old core.svn repository.
* All WordPress files move to a src/ directory.
 * New task runner (Grunt), configured to copy a built WordPress to build/.
 * svn:ignore and .gitignore for Gruntfile.js, wp-config.php, and node.js.
 * Remove Akismet external from develop.svn. Still exists in core.svn.
 * Drop minified files from src/. The build process will now generate these.

props koop.
see #24976.

and see http://wp.me/p2AvED-1AI.



git-svn-id: https://develop.svn.wordpress.org/trunk@25001 602fd350-edb4-49c9-b593-d223f7449a82
2013-08-07 05:25:25 +00:00