Commit Graph

421 Commits

Author SHA1 Message Date
Drew Jaynes 05fa6879ce Add an `@see` mention for `Plugin_Upgrader`, plus spacing to the `wp_ajax_update_plugin()` delcaration.
See #31888.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31985 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-04-04 14:19:27 +00:00
Sergey Biryukov 36643388ef Decouple strings where the singular and plural form are not just the same string with different numbers, but essentially two different strings.
This allows for using proper plural forms in languages with more than two forms, and also resolves string conflicts when the same string is present in both singular and plural form.

fixes #28502.
Built from https://develop.svn.wordpress.org/trunk@31941


git-svn-id: http://core.svn.wordpress.org/trunk@31920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-31 18:45:28 +00:00
Aaron Jorbin 9b23faef07 Remove Shiny Plugin Installs
See #31773, #29820


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


git-svn-id: http://core.svn.wordpress.org/trunk@31876 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-26 02:30:28 +00:00
Scott Taylor bce851dcf2 Replace `array_shift()` with `reset()` where appropriate for performance.
Props SergeyBiryukov.
Fixes #31259.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31811 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-19 03:56:27 +00:00
Aaron Jorbin 2d64637ff8 Request FTP and SSH credentials when needed during shiny updates
This is a restoration of [31749] which was reverted in [31755].

It includes a number of enhancements from the original version.  Namely:
 * Not doing a credential check in src/wp-includes/script-loader.php
 * Add new function `wp_print_request_filesystem_credentials_modal`
 * update the version number in the list table when a plugin is updated

UI still needs further work, but this basic version should enable more testing

Props ericlewis, jorbin
See #31528


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


git-svn-id: http://core.svn.wordpress.org/trunk@31793 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-18 03:18:27 +00:00
Dominik Schilling 474f001c42 Revert [31749], see #31528.
Built from https://develop.svn.wordpress.org/trunk@31755


git-svn-id: http://core.svn.wordpress.org/trunk@31736 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-12 17:51:26 +00:00
Sergey Biryukov e8a600ac94 Shiny Updates: Don't translate an error code string.
props ericlewis.
fixes #31606.
Built from https://develop.svn.wordpress.org/trunk@31751


git-svn-id: http://core.svn.wordpress.org/trunk@31732 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-12 13:09:27 +00:00
Aaron Jorbin 5b658df402 Request FTP and SSH credentials when needed during shiny updates
This is a first pass at requesting FTP and SSH credentials when needed during shiny updates. Styling and some UX improvements are still needed, but we do show the prompt and use the passed data when doing plugin installs and updates for shiny updates.  There are also a couple of areas that we could improve code wise such how we create the requestFilesystemCredentials part of the localized _wpUpdatesSettings. Over the past half century, we've split the atom, we've spliced the gene and we've roamed Tranquility Base. We've reached for the stars and never have we been closer to having them in our grasp. That has nothing to do with shiny updates. 

Props ericlewis, jorbin, and drewapicture for testing
Fixes #31528


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


git-svn-id: http://core.svn.wordpress.org/trunk@31730 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-12 08:53:26 +00:00
Scott Taylor 8f0b626d13 Introduce a function, `wp_attachment_is( $type, $post = 0 )`, to collapse the logic for determining whether an attachment is an `image`, `audio`, or `video`.
This is admittedly a first pass. There needs to be a generic handler for when any other type is passed, but for now it accepts the whitelist.

See #25275.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31626 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-06 20:26:26 +00:00
Scott Taylor da7359b060 After [31620], when checking for HTTP URLs, make sure we are checking the shortcode body instead of an indexed attribute.
See #31139.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31607 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 16:26:25 +00:00
Scott Taylor cc953717b7 Allow inline editing of `width` and `height` parameters while previewing an embed in the media modal:
* Use `wp.shortcode()` instead of manually constructing a shortcode in `views/embed/link`
* Allow a URL to transition to a shortcode (and vice versa) when returning an embed to TinyMCE
* In `WP_Embed`, store the last URL and last set of attributes requested in class properties
* `wp_ajax_parse_embed()`, allow `[embed]`s to have attributes. Return `attr` in the response.

This is a first pass to allow broad testing with recent MCE view changes. 

See #31139.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31601 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 06:00:26 +00:00
Scott Taylor d3471e9850 Allow attachments to be Detached from their parent in media grid and list modes.
See #6820.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31600 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-03-05 05:35:28 +00:00
Andrew Ozz 1857055bb8 PressThis v2, first run. Props michael-arestad, stephdau, marcelomazza, DrewAPicture, iseulde, afercia, kraftbj, rachelbaker, AramZS, dd32. See #31373.
Built from https://develop.svn.wordpress.org/trunk@31534


git-svn-id: http://core.svn.wordpress.org/trunk@31515 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-25 01:50:26 +00:00
Jeremy Felt 678982ee7e Do not activate plugins on initial installation in multisite.
Check `is_multisite()` before activating a plugin that has been installed via AJAX. Without this check, the plugin would be automatically activated on the main site of the network.

Props ianmjones.

Fixes #31327.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31492 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-22 21:30:25 +00:00
Dion Hulse 3cec3655e9 Prevent IE9 and lower displaying the download file dialogue when attempting to upload using the `html4` Plupload handler.
The HTML4 Plupload handler uses a hidden iframe to POST the upload form,
Unfortunately Internet Explorer 9 doesn't support the `application/json` 
content-type which `wp_send_json_success()` and requires `text/html` instead.

This partially reverts [30354], keeping the better error messages.

Fixes #31037 for trunk.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31410 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-12 01:15:29 +00:00
Sergey Biryukov f166a51809 Update body class when switching between admin color schemes.
props valendesigns.
fixes #30488.
Built from https://develop.svn.wordpress.org/trunk@31400


git-svn-id: http://core.svn.wordpress.org/trunk@31381 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-10 02:23:28 +00:00
Gary Pendergast 5e4d135411 Shiny Updates: Fix a PHP warning when installing new plugins.
Props lgladdy for the initial patch.

See #29820


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


git-svn-id: http://core.svn.wordpress.org/trunk@31326 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-06 00:34:21 +00:00
Gary Pendergast 27aa3e92d7 Shiny Updates: If the current user is not allowed to install/update plugins, we should return a JSON error, so it can be used by the JS handlers.
See #29820


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


git-svn-id: http://core.svn.wordpress.org/trunk@31316 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-05 06:16:23 +00:00
Gary Pendergast b7926a518a Shiny Updates: Add capability checks to the ajax callbacks, to ensure the current user is allowed to install/update plugins.
See #29820


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


git-svn-id: http://core.svn.wordpress.org/trunk@31315 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-05 06:05:22 +00:00
Gary Pendergast 9c69213f2b Shiny Updates: Add ajax-y updates to the plugin list page, and ajax-y updates and installs to the plugin card page.
This also includes JS architecture that can be expanded to support theme, core and language pack updates.

Props pento, ericlewis, lgladdy, adamsilverstein, DrewAPicture

See #29820


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


git-svn-id: http://core.svn.wordpress.org/trunk@31314 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-02-05 04:19:23 +00:00
Boone Gorges f345a72c58 Prevent terms in a show_in_quick_edit=false taxonomy from being updated by a faked AJAX request.
The UI for these taxonomies was hidden in [31308], but it remained possible to
send a direct POST request to the `inline-edit` endpoint to bypass the
restriction. The current changeset fixes this.

Props meloniq.
Fixes #26948.
Built from https://develop.svn.wordpress.org/trunk@31313


git-svn-id: http://core.svn.wordpress.org/trunk@31294 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-31 19:38:24 +00:00
Scott Taylor 60c285aa22 In `wp_ajax_parse_media_shortcode()`, don't require a global `$post` for all passed shortcodes.
`embed` is the only shortcode that requires a post ID. This will allow MCE views to work for `playlist`, `audio`, and `video` outside of the Edit Post screen.

See #30835.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31182 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-16 05:19:22 +00:00
Scott Taylor afd09f1f04 In `wp_ajax_upload_attachment()`, `wp_check_filetype_and_ext()` doesn't need a 3rd param - it already defaults to `null`. Passing `false` would fail a strict check
See #30799.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31100 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-10 04:55:25 +00:00
Scott Taylor 60b0cd7943 The keyword `elseif` should be used instead of `else if` so that all control keywords look like single words.
This was a mess, is now standardized across the codebase, except for a few 3rd-party libs. 

See #30799.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-08 07:05:25 +00:00
Scott Taylor c5f9a7c26a Respect query vars for taxonomies passed as URL parameters when in grid mode of Media Library.
Fixes #30584.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31018 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-03 08:24:22 +00:00
Scott Taylor 618c5b4333 When outputting JS with a `Content-Type` header:
`text/javascript` is obsolete, `application/x-javascript` was experimental. `application/javascript` is the recommended type per RFC 4329.

Props sergej.mueller.
Fixes #29196.

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


git-svn-id: http://core.svn.wordpress.org/trunk@31010 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2015-01-03 02:57:21 +00:00
Scott Taylor 952a5c9971 Support chromeless Vimeo via MEjs:
* Bump MediaElement script loader versions to 2.16.2 - missed in [30634], oops!
* Add `Froogaloop` to `js/mediaelement` scripts for Vimeo
* Check for Vimeo in the same locations that YouTube is checked
* Dynamically load Froogaloop script in admin when editing a TinyMCE view
* Edit MediaElement to call `mejs.$.extend` instead of `$.extend` in `mejs.HtmlMediaElementShim.createPlugin()`, since `$` is not available via WP's jQuery (I will report this upstream):
6f9a78e008/src/js/me-shim.js (L631)

Fixes #29267.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-31 20:41:24 +00:00
Andrew Nacin 23f4b0f62f Updates to the 'Log out everywhere' implementation.
* Include a message and a disabled button when you're only logged in at one location.
 * Avoid leaking the session token in HTML.
 * Simplify, simplify, simplify.

see #30264.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30878 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-12-16 09:15:23 +00:00
Sergey Biryukov 0a8b72866e Add missing periods to strings introduced in [30333].
props DrewAPicture.
see #30264.
Built from https://develop.svn.wordpress.org/trunk@30596


git-svn-id: http://core.svn.wordpress.org/trunk@30586 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-28 06:26:22 +00:00
Drew Jaynes a899bbaee7 Improve inline documentation in `wp_ajax_destroy_sessions()`.
If the token is set (`$keep` is a string), this means the user is viewing their own profile-editing screen and destroying their own sessions (except the current one). If it isn't set (`$keep` is null), the user is editing another user's profile and destroying all of their sessions with no exceptions.

See #30264, #30469

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


git-svn-id: http://core.svn.wordpress.org/trunk@30585 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-28 03:48:22 +00:00
Andrew Ozz 9597159393 Better error message when the admin is ssl and non-ssl oEmbed previews are not available in the editor. Props Japh, fixes #30533.
Built from https://develop.svn.wordpress.org/trunk@30591


git-svn-id: http://core.svn.wordpress.org/trunk@30581 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-27 22:37:24 +00:00
John Blackbourn fd15794b5c Add some specific JSON responses when there are user permission errors for AJAX file uploads. Replace some usage of `wp_json_encode()` with `wp_send_json_*()`.
See #25849
Props gcorne

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


git-svn-id: http://core.svn.wordpress.org/trunk@30353 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-16 05:47:21 +00:00
John Blackbourn c02845330e Introduce a button on the user profile screen which clears all other sessions, and on the user editing screen which clears all sessions. Only appears when there are applicable sessions which can be cleared.
See #30264.
Props jorbin, ocean90, johnbillion


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


git-svn-id: http://core.svn.wordpress.org/trunk@30332 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-13 15:21:21 +00:00
Drew Jaynes 92c153aa8c Fix the syntax for some status-related documentation introduced in [30155].
* Variables in DocBlocks should be backtick-escaped
* Parameter and return types should be as specific as possible
* `@param` types and variables should align with each other, but not intentionally with the `@return` description

See #30230.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30284 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-08 20:56:22 +00:00
Scott Taylor 6a109700d0 In `wp_ajax_get_tagcloud()`, bail immediately if `$_POST['tax']` isn't set so that all of the variable setting can happen in the same nest scope as the rest of the function - `wp_die()` confuses Scrutinizer.
See #30224.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30168 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-01 22:54:22 +00:00
Scott Taylor a786fb779c In `wp_ajax_ajax_tag_search()`, bail immediately if `$_GET['tax']` isn't set so that all of the variable setting can happen in the same nest scope as the rest of the function - `wp_die()` confuses Scrutinizer.
See #30224.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30167 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-01 22:48:22 +00:00
Scott Taylor be08f576df Improve some `post_status`-related documentation.
Props ericlewis.
See #30230.

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


git-svn-id: http://core.svn.wordpress.org/trunk@30155 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-01 20:20:23 +00:00
Boone Gorges 96b42c2fdc Allow resource_type to be specified in `get_ancestors()`.
Being explicit about resource type (taxonomy vs post_type) allows for the
proper resolution of conflicts when a taxonomy and post_type share a slug.

Props filosofo.
Fixes #15029.
Built from https://develop.svn.wordpress.org/trunk@30141


git-svn-id: http://core.svn.wordpress.org/trunk@30141 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-11-01 02:58:23 +00:00
Gary Pendergast 007ec52958 Add `wp_json_encode()`, a wrapper for `json_encode()` that ensures everything is converted to UTF-8.
Change all core calls from `json_encode()` to `wp_json_encode()`.

Fixes #28786.


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


git-svn-id: http://core.svn.wordpress.org/trunk@30055 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-10-28 18:35:19 +00:00
Scott Taylor 2f328cc4c1 In `wp_ajax_replyto_comment()`, if `$_POST['comment_type']` is set, use it for the value of `$comment_type`, which the `compact()` call has assumed is set since [8720]. It never was.
`wp_comment_reply()`'s output can be complete overridden by the `wp_comment_reply` filter, so this check is justified and makes the AJAX callback more flexible.

Props nerrad.
Fixes #29704.

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


git-svn-id: http://core.svn.wordpress.org/trunk@29530 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-23 03:29:16 +00:00
Andrew Nacin 4080e96339 Ensure oEmbed previews listen to [embed] width/height attributes.
props azaozz.
fixes #29474.

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


git-svn-id: http://core.svn.wordpress.org/trunk@29456 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-09-03 00:40:16 +00:00
Scott Taylor 149346ff6e MCE View sandboxes:
* Use a `MutationObserver` to listen to the `body` class of the parent editor frame.
* In `wpview_media_sandbox_styles()`, only return the MEjs stylesheets.
* In `wp_ajax_parse_media_shortcode()` and `wp_ajax_parse_embed()`, return an object instead of an HTML blob to allow passing `body` and `head` separately	

Props avryl, azaozz.
Fixes #29048.

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


git-svn-id: http://core.svn.wordpress.org/trunk@29389 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-26 04:46:15 +00:00
Andrew Ozz 42258a6d89 TinyMCE wpView: fix showing errors for non-embeddable URLs, no-ssl or no items. Props avryl, fixes #29114, see #29268.
Built from https://develop.svn.wordpress.org/trunk@29577


git-svn-id: http://core.svn.wordpress.org/trunk@29351 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-22 18:55:15 +00:00
Andrew Ozz 53c047263b TinyMCE wpView: add a filter for the stylesheet URLs loaded in the sandbox iframes. See #29048.
Built from https://develop.svn.wordpress.org/trunk@29559


git-svn-id: http://core.svn.wordpress.org/trunk@29334 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-20 21:34:15 +00:00
Andrew Ozz bb862e8221 TinyMCE wpView: show an error when no items are found while parsing a audio/video/playlist shortcode. Props avryl, fixes #29114.
Built from https://develop.svn.wordpress.org/trunk@29546


git-svn-id: http://core.svn.wordpress.org/trunk@29322 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-19 23:23:16 +00:00
Scott Taylor 571111022e Media Grid, support `MEDIA_TRASH`:
* Add a setting to `_wpMediaViewsL10n.settings`: `mediaTrash`
* In the attachment edit modal, properly toggle between Trash/Untrash
* In `media.view.Attachment`, add a method for `untrashAttachment`
* When creating the grid toolbar, switch the setting order of subviews so that `media.view.DeleteSelectedButton` can listen to the instance of `media.view.AttachmentFilters.All` to update the text in its UI.
* Add a new filter to `media.view.AttachmentFilters.All`, `trash`, when `settings.mediaTrash` is true
* Allow the cached queries in `Query.get()` to be flushed when race conditions exist and collections need to be refreshed. This is currently only being used when `MEDIA_TRASH` is set, to refresh the filtered/mirrored collections related to `all`, `trash`, and any already queried filter.
* Cleanup the bootstrapping of `media.view.MediaFrame.Manage`
* Allow `wp_ajax_query_attachments()` to return items from the trash when `MEDIA_TRASH` is `true`
* Allow `wp_ajax_save_attachment()` to set `post_status` when `MEDIA_TRASH` is `true`. It allows `wp_delete_post()` to be called, which will trash the attachment instead of deleting when the flag is set.

Props koop for the knowledge sharing and thought partnership.
See #29145.

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


git-svn-id: http://core.svn.wordpress.org/trunk@29268 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-14 18:31:19 +00:00
Drew Jaynes a8583d5f19 Fix some words that aren't words.
See #28885.

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


git-svn-id: http://core.svn.wordpress.org/trunk@29232 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-09 19:30:17 +00:00
Dominik Schilling 608d505b24 Attach Media: Display the correct error message when search result is empty.
fixes #29093.
Built from https://develop.svn.wordpress.org/trunk@29356


git-svn-id: http://core.svn.wordpress.org/trunk@29132 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-02 14:24:15 +00:00
Dominik Schilling 203c44581b To improve troubleshooting use `esc_html()` for a failed embed.
see #28195.
Built from https://develop.svn.wordpress.org/trunk@29354


git-svn-id: http://core.svn.wordpress.org/trunk@29130 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-08-01 22:34:15 +00:00
Dominik Schilling 270a57075c Media Grid: Add a date filter.
props ericlewis.
fixes #28895.
Built from https://develop.svn.wordpress.org/trunk@29271


git-svn-id: http://core.svn.wordpress.org/trunk@29053 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-22 20:47:15 +00:00
Drew Jaynes 097dc8ee15 Fix syntax for single- and multi-line comments in wp-admin-directory files.
See #28931.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28990 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-17 09:14:16 +00:00
Scott Taylor 043715e8a4 Add a new AJAX action: `parse-media-shortcode`. This async call will replace JS rendering of audio/video/playlist shortcodes.
See #28905.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28962 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-15 22:08:14 +00:00
Scott Taylor 89d9bbd7f6 Make audio and video URLs/embed handlers work in `<iframe>`-sandbox'd MCE views.
Introduce:
`get_editor_stylesheets()`
`wp_media_mce_styles()`.

See #28905.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28960 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-15 21:51:15 +00:00
Drew Jaynes b8d47f48c5 Inline documentation cleanup for 4.0 audit.
* Alignment for the 'term_search_min_chars' hook docs, added in [28892]
* Globals added for `wp_ajax_parse_embed()`, added [28580]

See #28885.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28935 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-14 00:06:15 +00:00
Scott Taylor 59ffcf668b Media Grid, for audio files:
* Show `artist` and `album` fields in the Edit Attachment modal
* Sync their values on `change`

See #28839.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28890 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-11 20:55:15 +00:00
Drew Jaynes b10e168751 Add `@see` reference for `set_post_thumbnail()` in the phpDoc for `wp_ajax_set_attachment_thumbnail()`.
See #27891.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-08 20:36:13 +00:00
Scott Taylor 57dbc55e6e When setting the poster image for a video shortcode, set that image as the featured image for that attachment (if found) in the background. This AJAX functionality could be used for audio as well.
Introduces `attachment_url_to_postid()` to attempt to turn URLs into post IDs.

Fixes #27891.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28817 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-08 17:48:17 +00:00
John Blackbourn 38749f273c Use the admin scheme for theme preview URLs when installing new themes. See #21919.
Built from https://develop.svn.wordpress.org/trunk@28974


git-svn-id: http://core.svn.wordpress.org/trunk@28763 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-03 18:48:16 +00:00
Helen Hou-Sandí 5f6b531f70 Improve oEmbed caching. Introduces the concept of a TTL for oEmbed caches and a filter for `oembed_ttl`.
We will no longer replace previously valid oEmbed responses with an `{{unknown}}` cache value. When this happens due to reaching a rate limit or a service going down, it is data loss, and is not acceptable. This means that oEmbed caches for a post are no longer deleted indiscriminately every time that post is saved.

oEmbed continues to be cached in post meta, with the addition of a separate meta key containing the timestamp of the last retrieval, which is used to avoid re-requesting a recently cached oEmbed response. By default, we consider a valued cached in the past day to be fresh. This can greatly reduce the number of outbound requests, especially in cases where a post containing multiple embeds is saved frequently.

The TTL used to determine whether or not to request a response can be filtered using `oembed_ttl`, thus allowing for the possibility of respecting the optional oEmbed response parameter `cache_age` or altering the period of time a cached value is considered to be fresh.

Now that oEmbeds are previewed in the visual editor as well as the media modal, oEmbed caches are often populated before a post is saved or published. By pre-populating and avoiding having to re-request that response, we also greatly reduce the chances of a stampede happening when a published post is visible before oEmbed caching is complete.

As it previously stood, a stampede was extremely likely to happen, as the AJAX caching was only triggered when `$_GET['message']` was 1. The published message is 6. We now trigger the caching every time `$_GET['message']` is present on the edit screen, as we are able to avoid triggering so many HTTP requests overall.

props markjaquith. fixes #14759. see #17210.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28761 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-07-03 16:45:14 +00:00
Andrew Ozz 5168f9c7c6 Secure embeds in the editor (first run):
- When the user pastes an embeddable http URL, try to get the https embed.
- If an embed provider doesn't support ssl embeds, show a placeholder/error message.
- Revise the way we return error messages.
See #28195, #28507.
Built from https://develop.svn.wordpress.org/trunk@28919


git-svn-id: http://core.svn.wordpress.org/trunk@28718 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-30 05:49:16 +00:00
John Blackbourn 306dc7e646 Introduce a filter to control the minimum characters required for an AJAX term search. Fixes #13580. Props iamfriendly, brianlayman
Built from https://develop.svn.wordpress.org/trunk@28892


git-svn-id: http://core.svn.wordpress.org/trunk@28691 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-29 10:05:16 +00:00
Scott Taylor f09663f784 Remove remaining Heartbeat API experimental notices
Props DH-Shredder.
Fixes #28626.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28672 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-28 02:06:14 +00:00
Andrew Ozz 84f3e30f7b wpView: improve handling of embed errors/error messages, see #28195
Built from https://develop.svn.wordpress.org/trunk@28754


git-svn-id: http://core.svn.wordpress.org/trunk@28568 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-06-15 22:53:16 +00:00
Sergey Biryukov db9057f308 Remove redundant get_shortcode_regex() check.
props kovshenin.
see #28195.
Built from https://develop.svn.wordpress.org/trunk@28587


git-svn-id: http://core.svn.wordpress.org/trunk@28412 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-27 11:30:16 +00:00
Scott Taylor 3c1723afd7 When adding a URL in the `Insert from URL` state in the media modal, attempt to show a preview of the content. Drop the unused width and height fields.
This will probably be iterated upon.

Props helen, jtsternberg, wonderboymusic.
See #15490.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28406 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-26 23:57:14 +00:00
Scott Taylor 89864b4a5a Don't pass embeds through `the_content()` when trying to render MCE previews, leverage `WP_Embed` and `do_shortcode()` instead.
Props kovshenin.
See #28195.


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


git-svn-id: http://core.svn.wordpress.org/trunk@28405 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-26 23:43:15 +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
Scott Taylor f22beb987c First pass at `wpview` logic for the `[embed]` shortcode. URLs on a their own line are parsed as well. The toolbar will appear with the "remove" button when the view is clicked. Edit has not been implemented yet.
Props avryl, wonderboymusic.
See #28195.


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


git-svn-id: http://core.svn.wordpress.org/trunk@28186 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-10 23:36:18 +00:00
Drew Jaynes 81cfb9427a Fix mid-file section header style in wp-admin/includes/ajax-actions.php.
See #28200.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28184 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-10 05:02:13 +00:00
Drew Jaynes 0ef7244ce7 Add baseline doc blocks for all ajax handlers in ajax-actions.php.
Fixes #28200.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28183 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-10 05:00:19 +00:00
Scott Taylor 28d98a89f3 In `ajax-actions.php`, remove dead code:
* In `wp_ajax_add_tag()`, `$post_type` is set and never used.
* In `wp_ajax_hidden_columns()`, `$hidden` is set twice, but only checks for the existence of `$_POST['hidden']` the first time. The two lines can be combined and work together.
* In `wp_ajax_inline_save()`, `$mode` is set and never used.
* In `wp_ajax_find_posts()`, `$searchand = $search = '';` is leftover cruft, neither variable is used. `$wpdb` does not need to be imported, it is never used.
* In `wp_ajax_wp_fullscreen_save_post()`, `$post_type` is set and never used.
* In `wp_ajax_save_attachment_order()`, `$post` is set and never used.
* In `wp_ajax_send_attachment_to_editor()`, `$title` is set and never used. 

See #27882.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28120 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-05-06 15:19:14 +00:00
Drew Jaynes 029dd247be Ensure the `wp_edit_nav_menu_walker` filter is only documented once.
See #26869.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28043 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-25 06:50:15 +00:00
Drew Jaynes a9b74e2088 Ensure the `nav_menu_meta_box_object` filter hook is only documented once.
See #26869.

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


git-svn-id: http://core.svn.wordpress.org/trunk@28037 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-25 06:14:15 +00:00
Andrew Nacin b89775445e Theme Installer: Proper redirection and action links post-install in multisite.
fixes #27869.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-19 18:18:16 +00:00
Andrew Nacin 9f81d0526e Theme Installer: Revert to proxying through PHP for WordPress.org API requests.
This is to ensure we have valid installation nonces, though we've run into this as a problem previously (see #27639, #27581, #27055).

A tad slower, but we gained speed in 3.9 by simplifying the request made to the API.

props ocean90.
fixes #27798.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27957 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-04-15 01:16:14 +00:00
Drew Jaynes 5613b40981 The `sidebar_admin_setup` hook should only be documented once in wp-admin/widgets.php. All others are duplicates.
See #25374, #25501, #27531.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27657 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 19:47:15 +00:00
Dominik Schilling c707faa639 Widget Customizer: Convert static WP_Customize_Widgets class into instantiated class and merge Options_Transaction into WP_Customize_Widgets.
see #27504.
props westonruter.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27650 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-28 14:07:14 +00:00
Andrew Nacin b0188044a2 Heartbeat: Hooks should always receive unslashed data.
This affects the privileged hooks; the unprivileged hooks already received unslashed data.

props johnbillion, TobiasBg.
fixes #27260.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27419 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-18 00:15:15 +00:00
Dominik Schilling f46a085f7c Widget Customizer: Use ?wp_customize=on.
Let _wp_customize_include() handle customizer initialisation.
Sets also the priority for the Add Widget and Reorder buttons and removes debug cruft.

props westonruter.
fixes #27291.
Built from https://develop.svn.wordpress.org/trunk@27524


git-svn-id: http://core.svn.wordpress.org/trunk@27367 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-13 18:38:14 +00:00
Andrew Nacin e853a9cc57 Add widget management to the customizer.
This brings in the Widget Customizer plugin: https://wordpress.org/plugins/widget-customizer/.

props westonruter, shaunandrews, michael-arestad, johnregan3, akeda, topher1kenobe, topquarky, bobbravo2, ricardocorreia. And for good measure, props westonruter.
see #27112.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27266 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 20:41:14 +00:00
Andrew Ozz 7121bb490d Restyles the modal for attaching media to posts, take II (also some autoprefixer and imagemin). Props avryl, see #26952.
Built from https://develop.svn.wordpress.org/trunk@27403


git-svn-id: http://core.svn.wordpress.org/trunk@27250 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-05 03:54:15 +00:00
Andrew Ozz 19efb78b48 Restyles the modal for attaching media to posts, props avryl, see #26952
Built from https://develop.svn.wordpress.org/trunk@27401


git-svn-id: http://core.svn.wordpress.org/trunk@27248 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-03-04 23:11:13 +00:00
Andrew Nacin bee73edb62 Unslash in the time-format and date-format ajax endpoints.
props GregLone.
fixes #27216.

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


git-svn-id: http://core.svn.wordpress.org/trunk@27158 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-02-27 00:05:14 +00:00
Helen Hou-Sandí 291ed370b4 Autocomplete for the new site admin email. Better than trying to remember which email address you used.
fixes #25348.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26920 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-27 23:10:12 +00:00
Andrew Ozz 87589dd445 Remove table cellspacing attribute from the admin, part-props MattyRob, fixes #22086.
Built from https://develop.svn.wordpress.org/trunk@27036


git-svn-id: http://core.svn.wordpress.org/trunk@26912 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-26 20:28:12 +00:00
Andrew Ozz 335add2573 Autosave: refactor autosave.js, use heartbeat for transport and move all "Add/Edit Post" related functionality to post.js. See #25272.
Built from https://develop.svn.wordpress.org/trunk@26995


git-svn-id: http://core.svn.wordpress.org/trunk@26872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-22 04:56:16 +00:00
Drew Jaynes 5ee0b5641e Hook docs spacing and standards fixes for wp-admin/includes/ajax-actions.php.
See #25374.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26858 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2014-01-18 17:06:12 +00:00
Andrew Ozz 855889f7aa TinyMCE 4.0.12, first run.
- Removes wp-tinymce-schema.js and mark-loaded.js, no longer needed.
- Removes the inlinepopups and most of the wpdialogs plugins; wpdialog.js is moved to wp-includes/js.
- Adds charmap, compat3x, image, link and textcolor plugins, previously contained in /themes/advanced.
- Updates the wordpress, wpeditimage, wpfullscreen, wpgallery and wplink plugins.
- Updates DFW, wp-admin/js/wp-fullscreen.js.
See #24067.
Built from https://develop.svn.wordpress.org/trunk@26876


git-svn-id: http://core.svn.wordpress.org/trunk@26759 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-28 23:53:15 +00:00
Drew Jaynes cd8cedc40d First there were two, and now there are three -- in the @since versions that came before and that shall be. And so it will be, says nacin.
Props JustinSainton, SergeyBiryukov, DrewAPicture.
Fixes #26713.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26754 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-24 18:57:12 +00:00
Andrew Nacin 7dbfca1778 Nonces are already per-user. see #22862.
Built from https://develop.svn.wordpress.org/trunk@26793


git-svn-id: http://core.svn.wordpress.org/trunk@26680 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-08 07:05:10 +00:00
Andrew Nacin c09252b950 Core updates for the new color schemes.
* Update about page, there's now 8.
 * Display them four wide, not three, and ensure adequate spacing.
 * Use a dedicated nonce.
 * Push Light to the front in addition to Default.
 * Use user-profile.js on about.php. A few extra things are initialized but they are harmless.

see #26468, #26387.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26663 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-07 07:46:21 +00:00
Andrew Nacin 710803793b Simplify the color scheme profile saving JS. see #25858.
Built from https://develop.svn.wordpress.org/trunk@26535


git-svn-id: http://core.svn.wordpress.org/trunk@26427 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-12-02 19:45:10 +00:00
Andrew Nacin 2cc8ed1594 Dash cleanup.
* Use wp_add_dashboard_widget() rather than add_meta_box().
 * Use original functions like wp_dashboard_primary(), wp_dashboard_right_now(), wp_dashboard_quick_press() (where possible).
 * Only include plugins section of the news widget when appropriate, which necessitates the set_current_screen() via the ajax action.
 * Remove some debug cruft that was preventing caching and invalidation.
 * Simplify lots of things where possible.
see #25824.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26128 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-15 20:15:10 +00:00
Andrew Nacin 809b335f7a Merge the new dashboard design into core.
Merges https://github.com/growthdesigner/wp-dash.

props lessbloat, joen, helen, dbernar1, kraftbj, ryelle, tillkruess, grapplerulrich, markjaquith.
see #25824.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26055 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-13 22:09:10 +00:00
Helen Hou-Sandí 603c1aff6d Merge the color schemes component from MP6. Introduces Light, Blue, and Midnight.
Color scheme selection on your own profile page gives you a preview and autosaves the selection.

Also introduces the usage of a preprocessor for core files, namely Sass. For 3.8, we will not expand its implementation past the color schemes. This does require Ruby as well as Sass 3.3.0+ due to the usage of the sourcemap option.

Note that only the default color scheme is available when running out of src. Use build to test the rest as well as the color picker.

props ryelle, melchoyce, tillkruess, drw158, littlethingsstudio, helen. see #25858, #22862.

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


git-svn-id: http://core.svn.wordpress.org/trunk@26048 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-11-13 19:38:38 +00:00
Andrew Nacin 5361a8abca Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25868 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:59:20 +00:00
Andrew Nacin 8ae8e01b67 Remove the old wp_auto_updates_maybe_update cron event. Schedule the new wp_maybe_auto_update event at 7 a.m. and 7 p.m. in the site's timezone.
see #27704.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25825 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-24 22:53:14 +00:00
Andrew Nacin 74488bdcb0 Spell out duplicate hook locations.
props DrewAPicture.
fixes #25658.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25780 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-22 17:22:11 +00:00
Dominik Schilling e4c8d56b76 Replace use of global `$user_ID` in favor of `get_current_user_id()`. fixes #25372.
Built from https://develop.svn.wordpress.org/trunk@25669


git-svn-id: http://core.svn.wordpress.org/trunk@25585 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-10-02 21:10:09 +00:00
Drew Jaynes e6e033aa08 Inline documentation for hooks in wp-admin/includes/ajax-actions.php.
Fixes #25374.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25477 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-21 20:47:09 +00:00
Andrew Nacin 188f763120 Use get_terms() in the ajax tag search.
props Chouby.
fixes #25231.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25373 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-16 17:51:08 +00:00
Scott Taylor daa4b531e8 Fix several esoteric errors related to AJAX unit tests for comments:
* `wp_ajax_get_comments()` relies on the `$post_id` global - even though `$_POST['p']` is passed to every action in the test methods. If `$post_id` is still lingering in between tests and doesn't match `p` in the request, the cap check might pass while the queries for comments will blow up. I added `unset( $GLOBALS['post_id'] )` to `Tests_Ajax_GetComments::setUp()`.
* If the global `$post_id` is empty, but `$_REQUEST['p']` is not, `$post_id` is now set to `absint( $_REQUEST['p'] )` and sanity-checked in `wp_ajax_get_comments()`.
* `map_meta_cap()` always assumes that `get_comment()` succeeds when checking for the `edit_comment` cap. It doesn't. I added sanity checks in a few places where it will break early if `get_post()` or `get_comment()` are empty.
* `wp_update_comment()` always assumes `get_comment()` succeeds. It doesn't. I added a check for empty.

All AJAX unit tests run and pass in debug mode. All general unit tests pass against these changes.

Fixes #25282.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25360 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-14 18:36:09 +00:00
Scott Taylor 5df8338e0a Fix some undefined index notices related to Comment unit tests:
* There are several places where a `$_POST` index was unchecked before setting a variable
* In `wp_notify_postauthor()`, `$comment` was being returned null, but its properties were being accessed.
* In `check_ajax_referer()`, 3 different values can be checked for nonce on `$_REQUEST`, but only 1 had an `isset()`

See #25282.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-13 22:18:08 +00:00
Scott Taylor e8c656a045 * Avoid notices in `tests/ajax/Autosave` by bailing early when `get_post()` returns nothing.
* Check for the existence of `$_POST['catslist']` before using it in `wp_ajax_autosave()`.

See #25282.


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


git-svn-id: http://core.svn.wordpress.org/trunk@25354 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-13 21:22:11 +00:00
Andrew Nacin 5e0040a6ca Add new ajax_query_attachments_args filter.
props alex-ye.
fixes #24285.

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


git-svn-id: http://core.svn.wordpress.org/trunk@25243 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-09-06 15:18:09 +00:00
Sergey Biryukov aadd546d48 Avoid PHP notices in get_sample_permalink() and get_sample_permalink_html(). Remove unused global reference. props ocean90. fixes #25005.
Built from https://develop.svn.wordpress.org/trunk@25028


git-svn-id: http://core.svn.wordpress.org/trunk@25015 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-08-15 16:25:12 +00:00
Andrew Ozz 19fb0f1153 Add "experimental" to heartbeat phpdoc, fixes #24855 for trunk.
git-svn-id: http://core.svn.wordpress.org/trunk@24818 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-28 20:54:48 +00:00
Andrew Nacin c8fe64a602 Revisions changes.
* Eliminates the bloated Revisions meta box in favor of 'Revisions: #' in the publish box.
 * Adds ability to compare autosave to current post, when revisions are disabled.
 * Makes autosaves stand out visually, including "Restore This Autosave".

Also:
 * Adds missing capability check for restoring a revision.
 * When no revision matches the post's current modified time, avoid marking an autosave as 'current'.
 * Fixes wp_get_post_autosave() to return an autosave even when revisions are disabled.
 * Add 'check_enabled' arg to wp_get_post_revisions(); false avoids the wp_revisions_enabled() check.
 * Adds a responsive slider that is narrower for fewer versions. props markjaquith.

see #24804.



git-svn-id: http://core.svn.wordpress.org/trunk@24790 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-24 06:08:14 +00:00
Andrew Nacin 8d65dc2469 Use wp_slash() in places where we improperly used the DB API instead. see #21767.
git-svn-id: http://core.svn.wordpress.org/trunk@24713 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-16 14:19:03 +00:00
Mark Jaquith 4e934c9e02 No PHP time limit when generating diffs.
Fixes #24757. Props nacin.

git-svn-id: http://core.svn.wordpress.org/trunk@24707 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-15 22:53:48 +00:00
Mark Jaquith 13a7d2a743 Revisions: Loading indicator, cleanup, bug fixes.
* Loading indicator when the user is waiting for a trip to the server.
* Bug fixes for diff priming.
* Fix the date display.
* Forget about local comparator, instead order by `modified` on the server.
* Initialize the frame model before the view (this was the source of a LOT of heartache).

git-svn-id: http://core.svn.wordpress.org/trunk@24667 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-12 05:11:56 +00:00
Andrew Nacin 031d959efd Modify todo in wp_ajax_autosave(). fixes #23665.
git-svn-id: http://core.svn.wordpress.org/trunk@24651 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-11 00:06:52 +00:00
Andrew Ozz 5d1439e247 Heartbeat: fix comment spelling
git-svn-id: http://core.svn.wordpress.org/trunk@24544 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-07-03 01:59:46 +00:00
Andrew Ozz b8b66e2cc1 Nonce refresh:
- Update the heartbeat nonce when refreshing nonces on the Edit Post screen.
- After a user logs in from the auth-check dialog, speed up heatrbeat to check/refresh nonces on the Edit Post screen.
- Speeding up heartbeat: bring back the setting how long it should last (how many ticks).
- Add 'heartbeat-nonces-expired' jQuery event when nonces have expired and the user is logged in.
See #23295, see #23216.

git-svn-id: http://core.svn.wordpress.org/trunk@24528 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-29 01:31:44 +00:00
Mark Jaquith 77abb9ff01 Cleanup of the revisions screen, both on the PHP API side, and the JS.
* Much simpler PHP API
* Cleaner and more Backbone-y JS API
* Consequently, does batch queries; this now scales up to hundreds of revisions

Currently missing, but much easier considering the cleaned up base:

* Compare two mode
* RTL

props koopersmith, nacin, adamsilverstein, ocean90. see #24425

git-svn-id: http://core.svn.wordpress.org/trunk@24520 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-26 21:06:50 +00:00
Andrew Ozz 0fff739949 Heartbeat: rename some vars/args to make them more intuitive, don't set user_id on every request, see #23216
git-svn-id: http://core.svn.wordpress.org/trunk@24406 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-06-05 00:13:40 +00:00
Mark Jaquith 89fd06e44b First pass at removing Post Format UI.
see #24452. fixes #24455.

git-svn-id: http://core.svn.wordpress.org/trunk@24388 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-30 21:33:46 +00:00
Dominik Schilling cf47737813 Revisions: Correct check for ensuring comparison always from newer to older revision. props adamsilverstein. fixes #24340.
git-svn-id: http://core.svn.wordpress.org/trunk@24263 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-15 19:09:39 +00:00
Sergey Biryukov 013d0d06c6 Remove debug cruft. props kovshenin. see #23930.
git-svn-id: http://core.svn.wordpress.org/trunk@24231 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-10 12:26:46 +00:00
Andrew Ozz d0c5c59c94 Post locks and autosave:
- Move nonces refreshing from autosave to lock checking.
- Do autosave only when there is something to save.
See #23295

git-svn-id: http://core.svn.wordpress.org/trunk@24209 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-08 22:52:55 +00:00
Mark Jaquith 5ee1a961a4 Ensure that draft posts cannot be given a non-unique post slug when using Quick Edit.
fixes #22902. props SergeyBiryukov.

git-svn-id: http://core.svn.wordpress.org/trunk@24206 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-08 21:26:17 +00:00
Dominik Schilling cbec9880a7 Revisions UI: RTL support. (And inline docs.)
props DrewAPicture, adamsilverstein. fixes #23897.

git-svn-id: http://core.svn.wordpress.org/trunk@24205 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-08 21:22:01 +00:00
Mark Jaquith 57b1dd212b Go back to plain text diffs between revisions instead of attempting partial rendering.
fixes #24254

git-svn-id: http://core.svn.wordpress.org/trunk@24192 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-07 20:34:58 +00:00
Andrew Nacin 3b4a087007 remove_filter() only accepts three arguments: filter, callback, and priority. An accepted args parameter is only used for adds.
props rlerdorf.
see #24210.



git-svn-id: http://core.svn.wordpress.org/trunk@24188 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-07 15:55:31 +00:00
Dominik Schilling ea1cecebee Revisions UI: Add translation contexts and remove unneeded lines.
props nao. fixes #23917.

git-svn-id: http://core.svn.wordpress.org/trunk@24157 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-05-02 10:12:19 +00:00
Sergey Biryukov dace3f0b6d Remove redundant echo calls from list tables. Don't mix string concatenation with direct output. see #24210.
git-svn-id: http://core.svn.wordpress.org/trunk@24123 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-29 01:10:50 +00:00
Mark Jaquith 082e067a2d Screen option for Post Format UI.
props nacin. see #23930.

git-svn-id: http://core.svn.wordpress.org/trunk@24092 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-25 07:28:33 +00:00
Dominik Schilling 45a9b723ee Revisions: Clean up JavaScript variable names, see #23901.
git-svn-id: http://core.svn.wordpress.org/trunk@24019 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-17 19:34:21 +00:00
Dominik Schilling 731f040664 Revisions UI: Remove the "To:" prefix from the header when viewing a single revision. Also prefix a revision field with a label.
props SergeyBiryukov, adamsilverstein, faishal. fixes #23903.

git-svn-id: http://core.svn.wordpress.org/trunk@23994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-15 18:40:17 +00:00
Andrew Ozz e315287283 Fix accidental revert of revisions comparison in [23981]
git-svn-id: http://core.svn.wordpress.org/trunk@23982 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-13 00:45:47 +00:00
Andrew Ozz 76302d7d3c Post locks: make sure we never overwrite a draft when it's locked, clean up wp_ajax_autosave() and make wp-refresh-post-lock a bit more robust, see #23697
git-svn-id: http://core.svn.wordpress.org/trunk@23981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-13 00:41:15 +00:00
Andrew Ozz 44752d0dad Revisions: compare revisions by date in wp_ajax_revisions_data(), deprecate the $parent arg in wp_list_post_revisions() as now revisions always include a copy of the current post, props adamsilverstein, see #23901
git-svn-id: http://core.svn.wordpress.org/trunk@23975 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-12 19:29:21 +00:00
Andrew Nacin 3015605cae Use get_post() in lieu of direct query in wp_ajax_replyto_comment(). fixes #23940.
git-svn-id: http://core.svn.wordpress.org/trunk@23907 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-04 18:44:38 +00:00
Mark Jaquith 90c2110475 A little more revisions js/php cleanup. see #23901. props kovshenin, ocean90.
git-svn-id: http://core.svn.wordpress.org/trunk@23904 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-04 16:03:21 +00:00
Mark Jaquith 2a38966a97 Further cleanup of revisions code. Probably not the last.
see #23901. props adamsilverstein, azaozz, ocean90.

git-svn-id: http://core.svn.wordpress.org/trunk@23898 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-04 07:53:49 +00:00
Andrew Nacin b62d398742 Replace $user_id removed in [23889] with a direct function call. see #23665.
git-svn-id: http://core.svn.wordpress.org/trunk@23890 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-03 04:37:50 +00:00
Andrew Nacin b77e90c5bf No need to check for the presence of a current user in a privileged ajax action. see #23665.
git-svn-id: http://core.svn.wordpress.org/trunk@23889 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-04-03 04:34:14 +00:00
Mark Jaquith 925e7f5bd6 Make sure the first revision is seen as coming from emptiness, so it can be restored.
props adamsilverstein. fixes #23898.

git-svn-id: http://core.svn.wordpress.org/trunk@23872 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-29 20:50:09 +00:00
Mark Jaquith ab9b0206c8 Make sure that the ID of the right revision is not less than the ID of the left revision
see #23497

git-svn-id: http://core.svn.wordpress.org/trunk@23832 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-28 02:49:55 +00:00
Mark Jaquith 6b79783e63 correct a revision/tooltip mismatch.
props adamsilverstein. see #23497

git-svn-id: http://core.svn.wordpress.org/trunk@23831 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-28 01:51:12 +00:00
Peter Westwood 9d6988a221 Revisions: UI Update.
* Refines the UI to make it clearer and easier to use
* Introduces weighted tickmarks
* Fixes comparison bugs.

See #23497 props adamsilverstein


git-svn-id: http://core.svn.wordpress.org/trunk@23769 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-21 15:54:11 +00:00
Ryan Boren dfd8479246 Fix i18n for revision diff strings displaying human time.
Props johnbillion
fixes #23723


git-svn-id: http://core.svn.wordpress.org/trunk@23743 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-18 17:58:30 +00:00
Andrew Ozz 30ad180d6a Create one autosave per user rather than a single autosave for all users. Remove unused code from autosave.js and wp_ajax_autosave(). See #23665.
git-svn-id: http://core.svn.wordpress.org/trunk@23735 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-16 21:15:43 +00:00
Mark Jaquith 53d12e91bc Introduce [audio] and [video] shortcodes, and use MediaElement.js to play them.
props wonderboymusic. see #23282.

git-svn-id: http://core.svn.wordpress.org/trunk@23729 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-16 05:25:44 +00:00
Andrew Ozz 21c2d8662c Logged out warnings: remove the logged out warning from autosave when in login_grace_period, see #23295
git-svn-id: http://core.svn.wordpress.org/trunk@23699 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-14 21:31:02 +00:00
Andrew Ozz d46102d258 Logged out warnings, heartbeat: remove nopriv_autosave as it doubles the functionality of the logged out warnings, move wp_ajax_nopriv_heartbeat() under No-privilege Ajax handlers in ajax-actions.php, see #23295, see #23216
git-svn-id: http://core.svn.wordpress.org/trunk@23692 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-13 23:54:12 +00:00
Andrew Ozz e9245269a7 Autosave to the browser's sessionStorage, compare this autosave to the post content on page load and let the user restore it when the data is not the same. First run, see #23220
git-svn-id: http://core.svn.wordpress.org/trunk@23683 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-13 10:08:16 +00:00
Sergey Biryukov f29bb91f05 Fix missing i18n in auto-draft titles. fixes #23565.
git-svn-id: http://core.svn.wordpress.org/trunk@23663 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-12 08:57:27 +00:00
Andrew Ozz edb9333d40 Check post locks with heartbeat and display modal notifications when a post is locked or a user takes over editing, props dh-shredder, see #23697
git-svn-id: http://core.svn.wordpress.org/trunk@23661 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-12 03:22:30 +00:00
Peter Westwood 51db623107 Revisions: Updates to the new Revisions UI.
Various Updates including:
 * i18n fixes
 * Added tracking of what revision ID was restored
 * async fetching of diffs so that slider works sooner even with many revisions

See #23497 props adamsilverstein, ethitter


git-svn-id: http://core.svn.wordpress.org/trunk@23639 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-07 15:32:26 +00:00
Andrew Nacin 237f810852 Unslash early, directly on the superglobal. see #21767.
git-svn-id: http://core.svn.wordpress.org/trunk@23576 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-01 17:57:08 +00:00
Ryan Boren 5f809d1d22 Use wp_unslash() instead of stripslashes() and stripslashes_deep(). Use wp_slash() instead of add_magic_quotes().
see #21767


git-svn-id: http://core.svn.wordpress.org/trunk@23563 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-01 17:00:25 +00:00
Ryan Boren 43a7e695e9 Revert 23416, 23419, 23445 except for wp_reset_vars() changes. We are going a different direction with the slashing cleanup, so resetting to a clean slate. see #21767
git-svn-id: http://core.svn.wordpress.org/trunk@23554 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-03-01 16:28:40 +00:00
Peter Westwood 5c533c9b27 Revisions: Fix up some half renamed variables that break the view and display a mismash of split and combined views. See #23497 props adamsilverstein.
git-svn-id: http://core.svn.wordpress.org/trunk@23509 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-28 16:48:33 +00:00
Peter Westwood 5133b4990b Revisions: Fix up some bugs I introduced while reviewing the mega revisions patch - when comparing two historical revisions only one half of the diff would load
See #23497 props adamsilverstein.


git-svn-id: http://core.svn.wordpress.org/trunk@23508 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-28 16:10:45 +00:00
Peter Westwood 9bd192fab3 Revisions: First pass an implementing a new UI/UX for reviewing the revisions of posts. See #23497 props adamsilverstein for the initial patch.
This implements a new revisions ui using Backbone and preserves all the old methods of "integration" so the change should be transparent to plugins using revisi
ons with CPTs.

This is the first pass and so there are a number of things still to be resolved, more details in the ticket. Feedback welcomed.


git-svn-id: http://core.svn.wordpress.org/trunk@23506 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-28 15:14:34 +00:00
Sergey Biryukov 5777e5a949 Rename 'no_tagcloud' taxonomy label to 'not_found', for consistency with the post type label of the same key. fixes #23597.
git-svn-id: http://core.svn.wordpress.org/trunk@23484 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-25 19:39:38 +00:00
Sergey Biryukov bf1ca6b9ca Move 'no_tagcloud' argument to the taxonomy labels object. props DrewAPicture for initial patch. fixes #23597.
git-svn-id: http://core.svn.wordpress.org/trunk@23483 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-25 18:35:05 +00:00
Andrew Ozz 9c2ebc4c60 Heartbeat API: add nopriv actions, add JS 'heartbeat-send' event, see #23216
git-svn-id: http://core.svn.wordpress.org/trunk@23481 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-25 02:32:22 +00:00
Ryan Boren cc5ed3a485 Change all core API to expect unslashed rather than slashed arguments.
The exceptions to this are update_post_meta() and add_post_meta() which are often used by plugins in POST handlers and will continue accepting slashed data for now.

Introduce wp_upate_post_meta() and wp_add_post_meta() as unslashed alternatives to update_post_meta() and add_post_meta(). These functions could become methods in WP_Post so don't use them too heavily yet.

Remove all escape() calls from wp_xmlrpc_server. Now that core expects unslashed data this is no longer needed.

Remove addslashes(), addslashes_gpc(), add_magic_quotes() calls on data being prepared for handoff to core functions that until now expected slashed data. Adding slashes in no longer necessary.

Introduce wp_unslash() and use to it remove slashes from GPCS data before using it in core API. Almost every instance of stripslashes() in core should now be wp_unslash(). In the future (a release or three) when GPCS is no longer slashed, wp_unslash() will stop stripping slashes and simply return what is passed. At this point wp_unslash() calls can be removed from core.

Introduce wp_slash() for slashing GPCS data. This will also turn into a noop once GPCS is no longer slashed. wp_slash() should almost never be used. It is mainly of use in unit tests.

Plugins should use wp_unslash() on data being passed to core API.

Plugins should no longer slash data being passed to core. So when you get_post() and then wp_insert_post() the post data from get_post() no longer needs addslashes(). Most plugins were not bothering with this. They will magically start doing the right thing. Unfortunately, those few souls who did it properly will now have to avoid calling addslashes() for 3.6 and newer.

Use wp_kses_post() and wp_kses_data(), which expect unslashed data, instead of wp_filter_post_kses() and wp_filter_kses(), which expect slashed data. Filters are no longer passed slashed data.

Remove many no longer necessary calls to $wpdb->escape() and esc_sql().

In wp_get_referer() and wp_get_original_referer(), return unslashed data.

Remove old stripslashes() calls from WP_Widget::update() handlers. These haven't been necessary since WP_Widget.

Switch several queries over to prepare().

Expect something to break.

Props alexkingorg
see #21767


git-svn-id: http://core.svn.wordpress.org/trunk@23416 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-14 22:51:06 +00:00
Andrew Ozz 6c41e93fec Heartbeat API: throttle down when the window looses focus or when the user is inactive, always send 'screen_id', change the interval settings to 'fast' (5sec), 'standard' (15sec) and 'slow' (60sec), the interval can be changed from PHP, see #23216
git-svn-id: http://core.svn.wordpress.org/trunk@23382 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-02-03 07:03:27 +00:00
Andrew Ozz 98bf511b56 Heartbeat API: first run, see #23216
git-svn-id: http://core.svn.wordpress.org/trunk@23355 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-29 06:15:25 +00:00
Andrew Nacin 1fa8476425 Ensure we wp_die() at the end of an ajax action. see #23055.
git-svn-id: http://core.svn.wordpress.org/trunk@23293 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2013-01-07 03:59:44 +00:00
Andrew Nacin 173806d7a1 Restore the Description field to the media UI in 3.5.
We tried in vain -- a noble but ultimately failed effort -- to reduce the number of fields for attachments from four (title, caption, alt, description) to one (caption for images, title otherwise). Alternative text needed to stay for accessibility reasons, of course.

Eventually title returned due to heavy plugin reliance. Description is too used by too many plugins (often times incorrectly -- the caption is more likely the proper field), hence its less-than-triumphant return today.

Version 3.5 has tried to streamline media in a number of ways. Removing fields may have been too much at once, as it forced not only a user interface change, but a paradigm change as well.

Finally, on upload we populate the description field with IPTC/EXIF captions, rather than the caption field. See #22768, this should be fixed. For now, Description stays.

This commit also restores 'Title' attribute editing to the main tab of the Edit Image dialog. The "Title" field no longer populates title attributes for <img> tags by design (for accessibility and other purposes, see #18984). So, here is a more obvious 'workaround' for the tooltip community.

Finally, this:
 * Cleans up the post.php attachment editor, including by showing a prettier form of the mime type.
 * Enables plugins to specifically hide attachment_fields_to_edit from either post.php (where you can create meta boxes) or the modal (which you may not want to clutter), for compatibility reasons.
 * Hides the 'Describe this file...' placeholder when a field is read-only in the modal.

props nacin, helenyhou.
fixes #22759.



git-svn-id: http://core.svn.wordpress.org/trunk@23083 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-06 00:41:06 +00:00
Andrew Nacin 40ae89369f Admin ajax: Roll back new-style error sending in set-post-thumbnail. The JS handlers know to parse an unrecognized response (like -1 or 0) as a failure. see #21776. see #22750.
git-svn-id: http://core.svn.wordpress.org/trunk@23058 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-05 02:34:00 +00:00
Ryan Boren a200c702e0 Only show Delete in media modal if the user can delete.
Props nacin, koopersmith
fixes #22711


git-svn-id: http://core.svn.wordpress.org/trunk@23032 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-04 18:33:51 +00:00
Ryan Boren 63662a9b7b In the QuickPress media modal, use the new post id when a post is published.
Props nacin, koopersmith
fixes #22673


git-svn-id: http://core.svn.wordpress.org/trunk@22994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-03 07:17:10 +00:00
Andrew Nacin 5d0933d884 Bring Featured Images back into the main media dialog.
Most users don't realize that the Featured Image meta box exists; if they do, few use it.

Restores the old meta box UI, including the admin_post_thumbnail_html filter. If a plugin is using _wp_post_thumbnail_html() in conjunction with Thickbox elsewhere, it will also magically still work.

Specific underlying changes:
 * Converts the modal view to use the view manager, which means that a call to open() will automatically call render and attach if necessary.
 * Doesn't automatically set a state in wp.media, to allow code to customize the states to be added before activation.

props koopersmith.
fixes #21776.



git-svn-id: http://core.svn.wordpress.org/trunk@22979 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-03 02:38:10 +00:00
Andrew Nacin 27bf82201b Allow the 'Uploaded to this post' view to be sorted, saving the resulting order as menu_order.
This functionality is designed to be backwards compatible with manual querying for attachments by menu_order.

props koopersmith.
see #22607.



git-svn-id: http://core.svn.wordpress.org/trunk@22967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-12-02 16:06:31 +00:00
Ryan Boren 22bc8cc437 Properly pass WordPress uploading errors to wp.Uploader.
Props koopersmith
fixes #22655


git-svn-id: http://core.svn.wordpress.org/trunk@22954 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-30 15:40:09 +00:00
Ryan Boren 27d943786b Introduce API to add back the description field in the new media popup.
Props nacin
fixes #22642


git-svn-id: http://core.svn.wordpress.org/trunk@22929 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-29 23:52:30 +00:00
Ryan Boren 939a47ba48 Add a delete link to the media modal.
Props merty, nacin, koopersmith
fixes #22524


git-svn-id: http://core.svn.wordpress.org/trunk@22869 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-27 15:50:59 +00:00
Ryan Boren 7df6a903f5 In wp.media.editor:send, revert back to the old field names used by media_upload_form_handler() for easier back compat.
Fix notices in wp_ajax_send_attachment_to_editor().

Props nacin, azaozz, miqrogroove
fixes #22553


git-svn-id: http://core.svn.wordpress.org/trunk@22847 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-26 22:08:50 +00:00
Andrew Nacin c1e9ddd316 Don't use wp_send_json_* handlers in the upload-attachment XHR handler.
The difference is the content type: application/json (which jQuery deserializes automatically for us) and the default text/html.

jQuery correctly handles application/json requests for IE, so we can continue to use the wp_send_json_* handlers elsewhere. Plupload rolls its own requests and does not handle application/json correctly. So, keep the standard text/html content type on upload-attachment.

props koopersmith.
see #22446.



git-svn-id: http://core.svn.wordpress.org/trunk@22845 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-26 20:12:50 +00:00
Andrew Nacin ab5c08a120 Media: When inserting an attachment, if the item is unattached (no post_parent), attach it to the post. fixes #22085.
git-svn-id: http://core.svn.wordpress.org/trunk@22843 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-26 16:34:42 +00:00
Andrew Nacin 450b96a773 Use correct variable in wp_ajax_save_attachment(). see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22834 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-26 02:50:01 +00:00
Daryl Koopersmith bfc8690006 Media: Backwards compatibility for the many send_to_editor filters. props nacin. see #22186, #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@22768 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-21 16:02:20 +00:00
Andrew Nacin 3da5e3a7fc Fix up the 'Attach' dialog on upload.php.
We are de-emphasising attaching (see [22630]) but this is existing
core functionality and will remain for now. This commit just cleans
it up a bit so as to be less embarrassing.

props lessbloat, helenyhou.
fixes #20164.



git-svn-id: http://core.svn.wordpress.org/trunk@22723 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-20 18:50:15 +00:00
Andrew Nacin 97032e08aa Revert page on front changes. Reverts [22127] [22129] [22135] [22136]. see #16379.
git-svn-id: http://core.svn.wordpress.org/trunk@22653 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-19 01:28:32 +00:00
Daryl Koopersmith 82213846c3 Media: Add backwards compatibility for attachment_fields_to_edit and attachment_fields_to_save. see #22186.
git-svn-id: http://core.svn.wordpress.org/trunk@22541 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-11 01:26:42 +00:00
Daryl Koopersmith 30e0a600bf Media: Add title, caption, and alt text, and attachment info to sidebar.
* Improve sidebar styles.
* Separate the hybrid title/caption field.
* Improve the sidebar image thumbnail.
* Remove filenames from inside the non-image icon thumbnail.
* Properly sync title/caption/alt.

see #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22532 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-10 18:25:04 +00:00
Andrew Nacin e14ff50cfb Don't allow non-image uploads for custom headers and backgrounds. props kovshenin. fixes #22149.
git-svn-id: http://core.svn.wordpress.org/trunk@22521 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-10 05:36:37 +00:00
Andrew Nacin e79b028a08 When approving and then replying to a comment, approve the parent comment before inserting the reply. props trepmal, fixes #22000.
git-svn-id: http://core.svn.wordpress.org/trunk@22370 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-11-05 16:49:10 +00:00
Daryl Koopersmith 3ee553c6bc Add a nonce to wp_ajax_save_attachment. see #21390, #21807.
git-svn-id: http://core.svn.wordpress.org/trunk@22212 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-12 16:02:45 +00:00
Daryl Koopersmith b3655c12b7 Media Modal: Check for empty keys when saving attachment captions. see #21390, #21807.
git-svn-id: http://core.svn.wordpress.org/trunk@22200 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-11 21:37:44 +00:00
Daryl Koopersmith 1daa774b27 Caption editing in the media modal library.
* Adds a `describe` option to the workflow controller to support inline caption editing.
* For images, descriptions are mapped to the `caption` attribute.
* For other media items, descriptions are mapped to the `title` attribute.
* Descriptions are saved when the textarea's `change` event fires (i.e. when the textarea is blurred).

fixes #21807, see #21390.


git-svn-id: http://core.svn.wordpress.org/trunk@22173 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-10 23:32:48 +00:00
Andrew Nacin d8936dc1aa Pass the screen context directly to get_sample_permalink_html(). see #16379.
git-svn-id: http://core.svn.wordpress.org/trunk@22129 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-07 03:44:30 +00:00
Daryl Koopersmith 1deab58658 Use the new media modal to insert galleries into TinyMCE and the text editor.
'''Galleries'''

* Gallery insertion from the new media modal (into TinyMCE, the text editor, etc).
* Gallery previews in TinyMCE now use the `wp.mce.views` API.
* Disables the TinyMCE `wpgallery` plugin.
* Gallery previews consist of the first image of the gallery and the appearance of a stack. This will later be fleshed out to include more images/functionality (including editing the gallery, gallery properties, and showing the number of images in the gallery).
* Multiple galleries can be added to a single post.
* The gallery MCE view provides a bridge between the `wp.shortcode` and `Attachments` representation of a gallery, which allows the existing collection to persist when a gallery is initially created (preventing a request to the server for the query).


'''Shortcodes'''

* Renames `wp.shortcode.Match` to `wp.shortcode` to better expose the shortcode constructor.
* The `wp.shortcode` constructor now accepts an object of options instead of a `wp.shortcode.regexp()` match.
* A `wp.shortcode` instance can be created from a `wp.shortcode.regexp()` match by calling `wp.shortcode.fromMatch( match )`.
* Adds `wp.shortcode.string()`, which takes a set of shortcode parameters and converts them into a string.* Renames `wp.shortcode.prototype.text()` to `wp.shortcode.prototype.string()`.
* Adds an additional capture group to `wp.shortcode.regexp()` that records whether or not the shortcode has a closing tag. This allows us to improve the accuracy of the syntax used when transforming a shortcode object back into a string.

'''Media Models'''

* Prevents media `Query` models from observing the central `Attachments.all` object when query args without corresponding filters are set (otherwise, queries quickly amass false positives).
* Adds `post__in`, `post__not_in`, and `post_parent` as acceptable JS attachment `Query` args.
* `Attachments.more()` always returns a `$.promise` object.

see #21390, #21809, #21812, #21815, #21817.


git-svn-id: http://core.svn.wordpress.org/trunk@22120 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-05 04:23:59 +00:00
Ryan Boren 1f9d02abc6 Avoid 'Only variables should be assigned by reference' warning. Props wonderboymusic. see #21865
git-svn-id: http://core.svn.wordpress.org/trunk@22117 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-10-04 18:37:43 +00:00
Daryl Koopersmith 9e51aebdd7 Media JS: Add support for filtering Attachment collections by mime type. see #21390, #21776, #21809.
git-svn-id: http://core.svn.wordpress.org/trunk@22021 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-26 20:50:13 +00:00
Ryan Boren a3cfe28527 Reduce reliance on global variables in the list tables. Allow passing a screen ID to the list tables so that ajax handlers can set the needed screen.
Props nacin
fixes #21871


git-svn-id: http://core.svn.wordpress.org/trunk@21914 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-19 12:43:31 +00:00
Andrew Nacin 37537626e3 Don't use hard-coded indexes when dealing with an array of roles. props elyobo. fixes #19222.
git-svn-id: http://core.svn.wordpress.org/trunk@21866 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-16 16:24:33 +00:00
Daryl Koopersmith 7fb2c8b4f7 Use JS Attachment models in wp.Uploader. fixes #21868.
Moves the uploading Attachments queue from the media workspace view to the uploader itself. This ensures that all attachments are added to the central attachmnet store.

Updates wp.Uploader to pass Attachment models to callbacks instead of Plupload file objects. Attachments in the process of uploading have a reference to the file object (which can be fetched by calling `attachment.get('file');`).

Also updates the customizer to be compatible with the API changes.


git-svn-id: http://core.svn.wordpress.org/trunk@21814 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-09-11 16:55:58 +00:00
Daryl Koopersmith a54da100ce Fix a misnamed variable, which caused the query-attachments ajax handler to ignore all input. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@21682 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-31 04:32:25 +00:00
Andrew Nacin 75052955cc Add get-attachment and query-attachments Ajax handlers. props koopersmith. see #21390.
git-svn-id: http://core.svn.wordpress.org/trunk@21681 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-31 02:58:51 +00:00
Ryan Boren f56d8278bb Remove return ref from all calls to get_post()
Return WP_Post from get_default_post_to_edit()
Replace all calls to get_page() with get_post()
see #21309


git-svn-id: http://core.svn.wordpress.org/trunk@21597 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-23 20:01:10 +00:00
Ryan Boren 15dd7f70b0 Remove post type from post nonces. Fixes attachment deletion when EMPTY_TRASH_DAYS is 0. Props c3mdigital, kurtpayne, SergeyBiryukov. fixes #21194
git-svn-id: http://core.svn.wordpress.org/trunk@21504 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-14 18:39:15 +00:00
nacin 7127ed1197 Move most instances of new WP_User to get_userdata(). see #21120.
git-svn-id: http://core.svn.wordpress.org/trunk@21413 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-08-03 01:06:05 +00:00
nacin 4b82f5c42d require_once dashboard.php in wp_ajax_dashboard_widgets() so it is testable. props kurtpayne. fixes #UT41.
git-svn-id: http://core.svn.wordpress.org/trunk@21203 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-30 15:07:39 +00:00
markjaquith f010e00284 Prevent child pages from being visually promoted to the top level after Quick Edit. props ssamture. fixes #18615
git-svn-id: http://core.svn.wordpress.org/trunk@21192 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-30 09:28:15 +00:00
markjaquith ab1c5db441 Prevent child categories from being visually promoted to the top level after Quick Edit. props ssamture. fixes #19474
git-svn-id: http://core.svn.wordpress.org/trunk@21191 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-30 09:00:26 +00:00
ryan 2429659e9b Customize: If the preview is not logged in but the admin is, perform a front page request to setup any mapped domain cookies and then retry loading the preview.
Props nacin, koopersmith
fixes #20926


git-svn-id: http://core.svn.wordpress.org/trunk@21071 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-12 22:51:55 +00:00
nacin 3ebea2f218 Remove user/site suggestions (autocompletion) from search inputs, as the UX isn't proper.
* Removes all instances of site-search, so away it goes. Sidesteps a number of bugs with site-search.
 * Renames user-search to user-suggest, which means it better describes the current behavior (autocompletion) while allowing for future behavior (instant search).
 * Ties user suggestions to a single .wp-suggest-user class.

with help from markjaquith, helenyhou, wonderboymusic. 
fixes #20835.



git-svn-id: http://core.svn.wordpress.org/trunk@21003 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-06-05 18:51:33 +00:00
koopersmith beb401b533 Theme Customizer: Improve background image control, add correct meta key to custom headers and backgrounds uploaded using the customizer. see #19910.
git-svn-id: http://core.svn.wordpress.org/trunk@20913 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-25 20:26:25 +00:00
nacin d928ce089a _wp_ajax_add_hierarchical_term() no longer gets passed an action, so pull it from POST. see #20699.
git-svn-id: http://core.svn.wordpress.org/trunk@20888 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-24 21:38:01 +00:00
markjaquith 02ed477f1b Set $action for core ajax callbacks, as it will not be provided by the do_action() call until WordPress 3.5. props kurtpayne. fixes #20699
git-svn-id: http://core.svn.wordpress.org/trunk@20866 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-05-24 06:40:53 +00:00
ryan de41bc288b Introduce WP_User::exists(). see #20372
git-svn-id: http://svn.automattic.com/wordpress/trunk@20378 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-04-06 19:18:45 +00:00
nacin 81407efd05 Clean up cap checks for autocompletes for sites and users in a network. see #19810.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20332 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-30 21:04:48 +00:00
koopersmith 79f8b89fbc Theme Customizer: Move upload and image controls to subclasses. see #19910.
Instead of grouping together every control parameter into a single  array and passing them all to the JS, use subclasses with custom parameters to implement additional PHP functionality and the  parameter to send only the necessary variables to the JavaScript control.

Replaces WP_Customize_Control->control_params with WP_Customize_Control->json and WP_Customize_Control->to_json(). The to_json() method refreshes the json array passed to the JavaScript control (set to control.param by default).

Creates WP_Customize_Upload_Control and WP_Customize_Image_Control.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20319 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-29 06:35:54 +00:00
markjaquith 2a8c7bbc7a Autocomplete site names in Network Admin. More user completion areas. props Japh, DrewAPicture. see #19810.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20279 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-24 04:54:58 +00:00
nacin 1db1017721 Remove index-extra.php. Move dashboard widget XHR callbacks to ajax-actions.php. fixes #20242.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20190 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-15 13:20:00 +00:00
koopersmith c06576d410 Theme Customizer: First pass for upload controls, using background image as an example. Add a wrapper for Plupload that allows for custom upload UIs. see #19910.
wp.Uploader is a wrapper that provides a simple way to upload an attachment (using the wp_ajax_upload_attachment handler). It is intentionally decoupled from the UI. When an upload succeeds, it will receive the attachment information (id, url, meta, etc) as a JSON response. If the upload fails, the wrapper handles both WordPress and plupload errors through a single handler.

As todos, we should add drag classes for the uploader dropzone and account for the rough 100mb filesize limit in most browsers. The UI for the customizer upload controls could be improved as well.

git-svn-id: http://svn.automattic.com/wordpress/trunk@20179 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-15 04:14:05 +00:00
nacin a147fd1d0b Add the wp_edit_nav_menu_walker filter to the ajax request. props wonderslug, ocean90. fixes #14527.
git-svn-id: http://svn.automattic.com/wordpress/trunk@20072 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-03-02 17:50:01 +00:00
duck_ af2eb34f8a Correct faulty logic when dealing with autocomplete_users_for_site_admins, and break logic into multiple lines. See #19810.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19934 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-16 17:12:10 +00:00
ryan 86901353cf Add post ID argument to _wp_post_thumbnail_html() rather than relying on a global. Post the ID from wp_ajax_set_post_thumbnail(). Props batmoo. fixes #20003
git-svn-id: http://svn.automattic.com/wordpress/trunk@19902 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-10 17:41:37 +00:00
markjaquith 481959acec Autocomplete for add-user screens in multisite. props boonebgorges, Japh, DrewAPicture, PeteMall, nacin, koopersmith, markjaquith. see #19810.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19897 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-10 08:45:17 +00:00
nacin 72c995441a Allow localized commas to be used as tag separators. see #7897.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19853 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-07 18:06:12 +00:00
ryan a2618da365 Setup now that global is not used. see #15327
git-svn-id: http://svn.automattic.com/wordpress/trunk@19822 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-02-03 20:13:22 +00:00
nacin 568fbf24e0 Use wp_die() in ajax-actions. props kurtpayne. see [19801], fixes #15327.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19802 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-31 22:14:39 +00:00
ryan 5fce3217ad Check the return of wp_insert_term() for WP_Error or array. Prevents fatal erros and failure to add categories when adding terms via ajax. Props mdawaffe. fixes #17938 #17939
git-svn-id: http://svn.automattic.com/wordpress/trunk@19792 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-30 18:19:27 +00:00
nacin 61abfcd3c7 Add 'ep_mask' as an argument to the 'rewrite' array for register_post_type() and register_taxonomy(). Keeps 'permalink_epmask' compatible as an argument for post type registrations. Fixes endpoints for category and tag pages. fixes #19275.
git-svn-id: http://svn.automattic.com/wordpress/trunk@19738 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2012-01-23 19:12:04 +00:00