Commit Graph

463 Commits

Author SHA1 Message Date
Scott Taylor 82f5d2e9b5 Cleanup doc blocks in `general-template.php`.
See #32444.

Built from https://develop.svn.wordpress.org/trunk@32598


git-svn-id: http://core.svn.wordpress.org/trunk@32568 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-25 17:18:26 +00:00
Scott Taylor af7a017f46 When calling `unset()`, it is unnecessary to immediately precede it with a call to `isset()`.
See #32444.

Built from https://develop.svn.wordpress.org/trunk@32545


git-svn-id: http://core.svn.wordpress.org/trunk@32515 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-22 05:47:25 +00:00
Boone Gorges 29216371bd In `paginate_links()`, improve handling of custom pagination query vars.
Custom pagination query vars, as provided in the 'base' parameter, must be
detected in the current page URL and removed before generating fresh pagination
links. The logic introduced in this changeset ensures that these custom
query vars are properly detected in cases where the 'format' param contains
a `#`.

This is a follow-up to [31203] #30831.

Fixes #31939.
Built from https://develop.svn.wordpress.org/trunk@32359


git-svn-id: http://core.svn.wordpress.org/trunk@32330 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-05-05 21:59:26 +00:00
Helen Hou-Sandí bfda508c18 Update more instances of default admin blues and grays.
props hugobaeta.
fixes #31234.

Built from https://develop.svn.wordpress.org/trunk@32051


git-svn-id: http://core.svn.wordpress.org/trunk@32030 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-05 21:20:27 +00:00
Dominik Schilling 502c70ec99 Remove `<code>` tags from translatable strings.
Uncomment deprecation notice for `get_bloginfo( 'text_direction' )`, see [14360].

props ramiy, DrewAPicture.
fixes #30614.
Built from https://develop.svn.wordpress.org/trunk@31899


git-svn-id: http://core.svn.wordpress.org/trunk@31878 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-26 15:17:28 +00:00
Drew Jaynes 88c109e919 Document default arguments for `paginate_links()` as a hash notation.
Props atimmer.
Fixes #31433.

Built from https://develop.svn.wordpress.org/trunk@31854


git-svn-id: http://core.svn.wordpress.org/trunk@31833 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-20 20:04:27 +00:00
Boone Gorges 48a5bbf8a7 Provide a secondary sort order for `wp_get_archives()` when `type=postbypost`.
Sorting by post_date alone can cause indeterminacy problems on different
versions of MySQL when post_date ties need to be broken. Using `ID` as a
secondary sort ensures that the order is always determinate.

Props herbmillerjr for an initial patch.
Fixes #30480.
Built from https://develop.svn.wordpress.org/trunk@31452


git-svn-id: http://core.svn.wordpress.org/trunk@31433 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-13 17:00:27 +00:00
Dion Hulse 3745cdc740 Avoid a PHP Warning when `add_args` is passed as `false` to `paginate_links()`.
Props boonebgorges for the unit test.
See #30831 [31203].

Built from https://develop.svn.wordpress.org/trunk@31432


git-svn-id: http://core.svn.wordpress.org/trunk@31413 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-12 01:39:27 +00:00
Sergey Biryukov 34d06ee6b7 Add a changelog entry for the new parameter added in [31228].
props DrewAPicture.
fixes #31015.
Built from https://develop.svn.wordpress.org/trunk@31229


git-svn-id: http://core.svn.wordpress.org/trunk@31210 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-17 17:31:23 +00:00
Sergey Biryukov 4e90a18c7c Pass $force_reauth value to the 'login_url' filter.
props jfarthing84, MikeHansenMe.
fixes #31015.
Built from https://develop.svn.wordpress.org/trunk@31228


git-svn-id: http://core.svn.wordpress.org/trunk@31209 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-17 17:20:23 +00:00
Boone Gorges fb691a449b In `paginate_links()`, don't override custom format arguments when setting up default 'add_args'.
Since 4.1 [29780], the default value of the 'add_args' argument in
`paginate_links()` has been determined by parsing the current URL. This change
had the side effect of overriding custom values of 'format' that changed the
pagination query var, with the result that plugins using `paginate_links()`
with a custom format generated the incorrect links unless explicitly
declaring 'add_args=false' to prevent the default values from overriding. We
fix this behavior by parsing URL query vars into the 'add_args' array only
after the explicit function params have been parsed, and by skipping the
current page's pagination query var when doing this parsing (to avoid the
override).

Props obenland.
Fixes #30831 for trunk.
Built from https://develop.svn.wordpress.org/trunk@31203


git-svn-id: http://core.svn.wordpress.org/trunk@31184 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-16 15:49:25 +00:00
Scott Taylor fe6b5983df In PHP 5.0.0, `is_a()` became deprecated in favour of the `instanceof` operator. Calling `is_a()` would result in an `E_STRICT` warning.
In PHP 5.3.0, `is_a()` is no longer deprecated, and will therefore no longer throw `E_STRICT` warnings.

To avoid warnings in PHP < 5.3.0, convert all `is_a()` calls to `$var instanceof WP_Class` calls.

`instanceof` does not throw any error if the variable being tested is not an object, it simply returns `false`.

Props markoheijnen, wonderboymusic.
Fixes #25672.

Built from https://develop.svn.wordpress.org/trunk@31188


git-svn-id: http://core.svn.wordpress.org/trunk@31169 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-16 01:06:24 +00:00
Drew Jaynes f2bc30c03f Ensure we're using the correct `@ignore` phpDocumentor tag to mark elements that should be skipped when parsing.
Up to this point, various core elements' DocBlocks incorrectly included an `@internal` tag as a means for skipping the parsing process. When paired with a description (inline or otherwise), `@internal` is a valid tag meant to provide internal-only context, but not necessarily to skip parsing the entire element.

See #30987.

Built from https://develop.svn.wordpress.org/trunk@31170


git-svn-id: http://core.svn.wordpress.org/trunk@31151 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-13 00:51:21 +00:00
Scott Taylor fc843ce4d0 There are some random `add_action()` and `add_filter()` calls littered around some files in `wp-includes/`. These should be moved to `wp-includes/default-filters.php` with the rest of the registered hooks. It seems like this was the best practice for awhile and then we randomly stopped. This file loads way before any of the includes, so the hooks will be registered for any request that loads WordPress, even `SHORTINIT` - a lot of the hooks registered won't run anyways (that's already the case).
See #30947.

Built from https://develop.svn.wordpress.org/trunk@31168


git-svn-id: http://core.svn.wordpress.org/trunk@31149 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-12 16:40:23 +00:00
Scott Taylor 786caa4d55 Correct the `@param` docs for arguments that are truthy/falsey.
See #30799.

Built from https://develop.svn.wordpress.org/trunk@30983


git-svn-id: http://core.svn.wordpress.org/trunk@30969 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-20 23:04:23 +00:00
Scott Taylor 5eb5afac34 For clarity, initialize some arrays that previously were only assigned via short circuit in loops.
See #30799.

Built from https://develop.svn.wordpress.org/trunk@30982


git-svn-id: http://core.svn.wordpress.org/trunk@30968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-20 22:47:22 +00:00
Andrew Nacin 498be1cae9 Avoid repeatedly calling is_tax( 'post_format', '...' ) in get_the_archive_title().
see #21995.

Built from https://develop.svn.wordpress.org/trunk@30854


git-svn-id: http://core.svn.wordpress.org/trunk@30844 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-15 07:32:26 +00:00
Scott Taylor 37a23b2c73 Improve various `@param` docs.
See #30224.

Built from https://develop.svn.wordpress.org/trunk@30682


git-svn-id: http://core.svn.wordpress.org/trunk@30672 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-01 02:17:21 +00:00
Scott Taylor a0df295f5c Improve various `@param` docs.
See #30224.

Built from https://develop.svn.wordpress.org/trunk@30674


git-svn-id: http://core.svn.wordpress.org/trunk@30664 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 23:24:25 +00:00
Drew Jaynes bffe95d34c Docs Formatting: Backtick-escape inline code for all remaining dynamic hook docs in wp-includes/*.
Affects DocBlocks for the following hooks:
* `auth_post_meta_{$meta_key}`
* `term_links-$taxonomy`
* `customize_render_control_ . $this->id`
* `customize_render_panel_{$this->id}`
* `customize_render_section_{$this->id}`
* `customize_preview_{$this->id}`
* `customize_save_ . $this->id_data[ 'base' ]`
* `customize_update_ . $this->type`
* `customize_value_ . $this->id_data[ 'base' ]`
* `customize_sanitize_js_{$this->id}`
* `comment_form_field_{$name}`
* `comment_{$old_status}_to_{$new_status}`
* `comment_{$new_status}_{$comment->comment_type}`
* `extra_{$context}_headers`
* `get_template_part_{$slug}`
* `get_the_generator_{$type}`
* `get_{$adjacent}_post_join`
* `get_{$adjacent}_post_where`
* `get_{$adjacent}_post_sort`
* `{$adjacent}_post_rel_link`
* `{$adjacent}_post_link`
* `{$adjacent}_image_link`
* `blog_option_{$option}`
* `$permastructname . _rewrite_rules`
* `{$type}_template`
* `theme_mod_{$name}`
* `pre_set_theme_mod_$name`
* `current_theme_supports-{$feature}`
* `get_user_option_{$option}`
* `edit_user_{$field}`
* `pre_user_{$field}`
* `user_{$field}`

See #30552.

Built from https://develop.svn.wordpress.org/trunk@30656


git-svn-id: http://core.svn.wordpress.org/trunk@30646 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-30 12:10:23 +00:00
Drew Jaynes a4be4f520f Ensure the private function `_wp_render_title_tag()` is marked for internal usage only.
See #30469.

Built from https://develop.svn.wordpress.org/trunk@30615


git-svn-id: http://core.svn.wordpress.org/trunk@30605 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-28 11:50:22 +00:00
Drew Jaynes 07c58f5cca Ensure inline code is markdown-escaped as such, HTML tags are removed from summaries, and that code snippets in descriptions are properly indented.
Affects DocBlocks for the following core elements:
* Markdown-indent a code snippet in the description for `_deprecated_argument()`
* Markdown-indent a code snippet in the description for `wp_localize_script()`
* Backtick-escape HTML tags in two parameter descriptions for `wp_register()`
* Various DocBlock formatting in the description for `get_bloginfo()`
* Remove HTML tag from the summary for `_wp_render_title_tag()`
* Backtick-escape a HTML tag in the description for `get_archives_link()`
* Markdown-indent a code snippet in the description for `wp_admin_css_color()`
* Markdown-indent a code snippet in the description for the `welcome_panel` hook

Props rarst.
See #30473.

Built from https://develop.svn.wordpress.org/trunk@30541


git-svn-id: http://core.svn.wordpress.org/trunk@30530 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-24 05:39:22 +00:00
Drew Jaynes 784e162177 Cross reference `get_the_archive_title()` and `get_the_archive_description()` in the inline documentation for their corresponding template tags.
Also define the default values for `$before` and `$after` in the template tag documentation.

See [30223]. See #21995.

Built from https://develop.svn.wordpress.org/trunk@30224


git-svn-id: http://core.svn.wordpress.org/trunk@30224 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-04 06:52:23 +00:00
John Blackbourn 6a45f46937 Introduce some new template functions for archive titles and descriptions:
* `get_the_archive_title()` and `the_archive_title()` for returning/displaying the title of the current term, date, post type, post format, or author archive.
 * `get_the_archive_description()` and `the_archive_description()` for returning/displaying the description associated with the current term archive.

Fixes #21995
Props obenland, DrewAPicture

Built from https://develop.svn.wordpress.org/trunk@30223


git-svn-id: http://core.svn.wordpress.org/trunk@30223 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-04 00:35:22 +00:00
Scott Taylor 8d0e8942eb [28785] introduced a bug, where encoded query arguments were decoded by `parse_str()` inside of `wp_parse_str()` but never re-encoded later on.
This encodes them, adds unit test.

Props obenland.
Fixes #29636.

Built from https://develop.svn.wordpress.org/trunk@30133


git-svn-id: http://core.svn.wordpress.org/trunk@30133 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-01 00:54:23 +00:00
Drew Jaynes f8657d5890 Remove redundant and erroneous `@uses` tag from most core inline documentation.
Per our inline documentation standards, no further use of the `@uses` tag is recommended as used and used-by relationships can be derived through other means. This removes most uses of the tag in core documentation, with remaining tags to be converted to `@global` or `@see` as they apply.

Fixes #30191.

Built from https://develop.svn.wordpress.org/trunk@30105


git-svn-id: http://core.svn.wordpress.org/trunk@30105 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-30 01:05:24 +00:00
John Blackbourn 0f64edb657 Introduce a new means of outputting a `<title>` tag in the theme head. Requires a theme to add support by calling `add_theme_support( 'title-tag' )`. This is the first step in adding a more robust means of generating and outputting the title tag.
See #18548.
Props obenland, chrisbliss18, joostdevalk.


Built from https://develop.svn.wordpress.org/trunk@30074


git-svn-id: http://core.svn.wordpress.org/trunk@30074 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-28 21:12:22 +00:00
Mark Jaquith e1f2b3b9e2 Use HTTPS URLs for trac.wordpress.org (and use core.trac.wordpress.org)
see #27115
Built from https://develop.svn.wordpress.org/trunk@29789


git-svn-id: http://core.svn.wordpress.org/trunk@29561 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-29 13:37:16 +00:00
Mark Jaquith 0d3b83551f Use HTTPS URLs for core.trac.wordpress.org
see #27115
Built from https://develop.svn.wordpress.org/trunk@29788


git-svn-id: http://core.svn.wordpress.org/trunk@29560 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-29 13:28:16 +00:00
Scott Taylor 1967dfe898 In `paginate_links()`, ensure that query string args are propagated to the resulting paginated links.
Adds unit tests that use `DOMDocument` since `assertTag` is being deprecated - see #29545, [29746].

Props obenland, wonderboymusic.
Fixes #29636.

Built from https://develop.svn.wordpress.org/trunk@29780


git-svn-id: http://core.svn.wordpress.org/trunk@29552 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-29 04:03:16 +00:00
Scott Taylor 69dbf4f5df Clarify that `get_the_date()`, `get_the_time()`, `get_post_time()` and `get_post_modified_time()` should return `false` when `get_post()` is `null`.
Adds unit tests.

Props GaryJ, SergeyBiryukov, tollmanz.
Fixes #28310.

Built from https://develop.svn.wordpress.org/trunk@29344


git-svn-id: http://core.svn.wordpress.org/trunk@29122 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-01 18:40:16 +00:00
Sergey Biryukov 6628d7dd33 Remove redundant title attributes from get_calendar().
props joedolson.
fixes #26561.
Built from https://develop.svn.wordpress.org/trunk@29244


git-svn-id: http://core.svn.wordpress.org/trunk@29028 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-19 04:41:15 +00:00
Scott Taylor 9e2eb6aa62 Use `includes_url()` in `wlwmanifest_link()`.
Props nacin.
See #14157.

Built from https://develop.svn.wordpress.org/trunk@28908


git-svn-id: http://core.svn.wordpress.org/trunk@28707 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-29 22:27:15 +00:00
Scott Taylor 8dd3c0e909 `wlwmanifest_link()` should use the `WPINC` constant
Props wojtek.szkutnik
See #14157.

Built from https://develop.svn.wordpress.org/trunk@28905


git-svn-id: http://core.svn.wordpress.org/trunk@28704 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-29 22:17:14 +00:00
Scott Taylor 378b4cd896 Cleanup after [28671]:
* Set better defaults in `paginate_links()`, so that themes don't have to calculate them on their own, like Twenty Fourteen does now.
* Don't set page 1 to `?page=1` or `/page/1/` - that will force a canonical redirect.
* Add and cleanup unit tests

Props obenland, SergeyBiryukov, wonderboymusic.
Fixes #24606.

Built from https://develop.svn.wordpress.org/trunk@28785


git-svn-id: http://core.svn.wordpress.org/trunk@28598 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-20 17:12:15 +00:00
Sergey Biryukov dbff41578e Avoid an empty href attribute in paginate_links(). Add unit tests.
props obenland, Nessworthy.
fixes #24606.
Built from https://develop.svn.wordpress.org/trunk@28671


git-svn-id: http://core.svn.wordpress.org/trunk@28489 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-05 02:10:15 +00:00
Sergey Biryukov fcd8152496 Add 'wp_title_parts' filter to wp_title().
props aaroncampbell, obenland.
fixes #17877.
Built from https://develop.svn.wordpress.org/trunk@28669


git-svn-id: http://core.svn.wordpress.org/trunk@28487 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-05 00:28:15 +00:00
Scott Taylor f50d5233f3 Truly check for `! empty()` instead of falsey `''` when determining whether to add `LIMIT` clause to SQL in `wp_get_archives()`.
Props jjeaton for the initial patch.
Fixes #27834.

Built from https://develop.svn.wordpress.org/trunk@28560


git-svn-id: http://core.svn.wordpress.org/trunk@28386 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-23 18:28:14 +00:00
Sergey Biryukov 9b9b8ec413 Use correct variable. see [28534], [28538].
see #22400.
Built from https://develop.svn.wordpress.org/trunk@28540


git-svn-id: http://core.svn.wordpress.org/trunk@28366 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 17:40:14 +00:00
Scott Taylor b8d469600b These functions import `$wpdb` but do not use it.
See #27882.

Built from https://develop.svn.wordpress.org/trunk@28539


git-svn-id: http://core.svn.wordpress.org/trunk@28365 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 17:37:14 +00:00
Sergey Biryukov f4646b47e7 Remove redundant assignment. see [28379], [28534].
see #22400.
Built from https://develop.svn.wordpress.org/trunk@28538


git-svn-id: http://core.svn.wordpress.org/trunk@28364 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-22 17:35:13 +00:00
Scott Taylor 62f9e7636d Fix some bad UI recursion in `wp_get_archives()` caused by [28379]. It appears that `$afterafter` was appropriately named.
See #22400.


Built from https://develop.svn.wordpress.org/trunk@28534


git-svn-id: http://core.svn.wordpress.org/trunk@28360 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-20 23:09:16 +00:00
Drew Jaynes 11dd3443a2 Improve inline documentation for default arguments in `wp_get_archives()`.
See #28298.

Built from https://develop.svn.wordpress.org/trunk@28476


git-svn-id: http://core.svn.wordpress.org/trunk@28303 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-18 17:20:15 +00:00
Scott Taylor d5acdd82c8 Eliminate use of `extract()` in `paginate_links()`. Adds unit tests. Moves `tests/general/template.php` (which only had one method) to `tests/general/paginateLinks.php`.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28397


git-svn-id: http://core.svn.wordpress.org/trunk@28225 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-14 22:29:14 +00:00
Scott Taylor b110c7f887 Eliminate use of `extract()` in `wp_get_archives()`.
Adds unit tests: `tests/functions/getArchives.php`. 
All other unit tests pass.

Props MikeHansenMe, wonderboymusic.
See #22400.

Built from https://develop.svn.wordpress.org/trunk@28379


git-svn-id: http://core.svn.wordpress.org/trunk@28207 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-13 04:29:26 +00:00
Scott Taylor 3d0eed82f8 In `paginate_links()`, `break` is unreachable after `return`.
See #27882.

Built from https://develop.svn.wordpress.org/trunk@28326


git-svn-id: http://core.svn.wordpress.org/trunk@28154 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-06 21:25:15 +00:00
Scott Taylor 9bdbd50ac0 In `general-template.php` - remove dead code:
* In `get_calendar()`, `$cache` is set twice. The first is useless. 
* In `wp_default_editor()`, `$user` is (accidentally) assigned in a condition. Since it is never used, this is unnecessary.
* In `language_attributes()`, `$output` is set twice before it is ever used. The first is unnecessary. 
* In `paginate_links()`, `$n` is set twice before it is ever used. The first is unnecessary.

See #27882.


Built from https://develop.svn.wordpress.org/trunk@28274


git-svn-id: http://core.svn.wordpress.org/trunk@28102 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-06 04:58:16 +00:00
Scott Taylor a2067a7324 Set the proper value for `wp_title()` when `is_author()` and `is_post_type_archive()` are both true. `post_type` should always win due to the precedence indicated in `get_queried_object()`.
Props mordauk.
Fixes #25398.


Built from https://develop.svn.wordpress.org/trunk@28251


git-svn-id: http://core.svn.wordpress.org/trunk@28079 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-04 22:21:22 +00:00
Drew Jaynes 05537ab967 Ensure the `register` filter hook is only documented once.
See #26869.

Built from https://develop.svn.wordpress.org/trunk@28208


git-svn-id: http://core.svn.wordpress.org/trunk@28038 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-25 06:24:15 +00:00
Drew Jaynes e8be2a7e1e Inline documentation for three remaining hooks in wp-includes/general-template.php.
Documents the `login_form_top`, `login_form_middle`, and `login_form_bottom` and filters.

That's 184/184 hook docs files complete. Boom!

Props kpdesign, DrewAPicture.
Fixes #27719.

Built from https://develop.svn.wordpress.org/trunk@28131


git-svn-id: http://core.svn.wordpress.org/trunk@27962 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-15 04:42:16 +00:00