Commit Graph

58 Commits

Author SHA1 Message Date
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