<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[22364] trunk/wp-admin: Attachment editor improvements.</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg > ul, #logmsg > ol { margin-left: 0; margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://core.trac.wordpress.org/changeset/22364">22364</a></dd>
<dt>Author</dt> <dd>ryan</dd>
<dt>Date</dt> <dd>2012-11-05 14:04:22 +0000 (Mon, 05 Nov 2012)</dd>
</dl>

<h3>Log Message</h3>
<pre>Attachment editor improvements. Put the non-editable metadata into the submit/publish box.

Props helenyhou
see <a href="http://core.trac.wordpress.org/ticket/21391">#21391</a></pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkwpadmincsswpadmincss">trunk/wp-admin/css/wp-admin.css</a></li>
<li><a href="#trunkwpadmineditformadvancedphp">trunk/wp-admin/edit-form-advanced.php</a></li>
<li><a href="#trunkwpadminincludesmediaphp">trunk/wp-admin/includes/media.php</a></li>
<li><a href="#trunkwpadminincludesmetaboxesphp">trunk/wp-admin/includes/meta-boxes.php</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkwpadmincsswpadmincss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/wp-admin.css (22363 => 22364)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/wp-admin.css        2012-11-05 02:43:47 UTC (rev 22363)
+++ trunk/wp-admin/css/wp-admin.css        2012-11-05 14:04:22 UTC (rev 22364)
</span><span class="lines">@@ -5826,7 +5826,7 @@
</span><span class="cx">         padding: 0;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#poststuff .postarea {
</del><ins>+#post-body-content {
</ins><span class="cx">         margin-bottom: 20px;
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpadmineditformadvancedphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/edit-form-advanced.php (22363 => 22364)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/edit-form-advanced.php        2012-11-05 02:43:47 UTC (rev 22363)
+++ trunk/wp-admin/edit-form-advanced.php        2012-11-05 14:04:22 UTC (rev 22364)
</span><span class="lines">@@ -111,7 +111,7 @@
</span><span class="cx">         wp_enqueue_script( 'image-edit' );
</span><span class="cx">         wp_enqueue_style( 'imgareaselect' );
</span><span class="cx">         add_meta_box( 'submitdiv', __('Save'), 'attachment_submit_meta_box', null, 'side', 'core' );
</span><del>-        add_meta_box( 'attachmentdata', __('Attachment Page Content'), 'attachment_data_meta_box', null, 'normal', 'core' );
</del><ins>+        add_meta_box( 'attachmentdata', __('Attachment Page Content'), 'attachment_content_meta_box', null, 'normal', 'core' );
</ins><span class="cx">         add_action( 'edit_form_after_title', 'edit_form_image_editor' );
</span><span class="cx"> } else {
</span><span class="cx">         add_meta_box( 'submitdiv', __( 'Publish' ), 'post_submit_meta_box', null, 'side', 'core' );
</span></span></pre></div>
<a id="trunkwpadminincludesmediaphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/media.php (22363 => 22364)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/media.php        2012-11-05 02:43:47 UTC (rev 22363)
+++ trunk/wp-admin/includes/media.php        2012-11-05 14:04:22 UTC (rev 22364)
</span><span class="lines">@@ -2122,6 +2122,7 @@
</span><span class="cx"> 
</span><span class="cx">         $filename = esc_html( basename( $post-&gt;guid ) );
</span><span class="cx">         $title = esc_attr( $post-&gt;post_title );
</span><ins>+        $alt_text = get_post_meta( $post-&gt;ID, '_wp_attachment_image_alt', true );
</ins><span class="cx"> 
</span><span class="cx">         $post_mime_types = get_post_mime_types();
</span><span class="cx">         $keys = array_keys( wp_match_mime_types( array_keys( $post_mime_types ), $post-&gt;post_mime_type ) );
</span><span class="lines">@@ -2151,24 +2152,59 @@
</span><span class="cx">                         &lt;p&gt;&lt;?php echo $image_edit_button; ?&gt;&lt;/p&gt;
</span><span class="cx">                 &lt;/div&gt;
</span><span class="cx">                 &lt;div style=&quot;display:none&quot; class=&quot;image-editor&quot; id=&quot;image-editor-&lt;?php echo $attachment_id; ?&gt;&quot;&gt;&lt;/div&gt;
</span><ins>+        &lt;/div&gt;
</ins><span class="cx"> 
</span><del>-                &lt;div class=&quot;wp_attachment_details&quot;&gt;
-                        &lt;p&gt;
-                                &lt;label for=&quot;attachment_url&quot;&gt;&lt;strong&gt;&lt;?php _e( 'File URL' ); ?&gt;&lt;/strong&gt;&lt;/label&gt;&lt;br /&gt;
-                                &lt;input type=&quot;text&quot; class=&quot;widefat urlfield&quot; readonly=&quot;readonly&quot; name=&quot;attachment_url&quot; value=&quot;&lt;?php echo esc_attr($att_url); ?&gt;&quot; /&gt;&lt;br /&gt;
-                        &lt;/p&gt;
-                        &lt;p&gt;&lt;strong&gt;&lt;?php _e( 'File name:' ); ?&gt;&lt;/strong&gt; &lt;?php echo $filename; ?&gt;&lt;br /&gt;
-                        &lt;strong&gt;&lt;?php _e( 'File type:' ); ?&gt;&lt;/strong&gt; &lt;?php echo $post-&gt;post_mime_type; ?&gt;
-                        &lt;?php
-                                if ( $media_dims )
-                                        echo '&lt;br /&gt;&lt;strong&gt;' . __( 'Dimensions:' ) . '&lt;/strong&gt; ' . $media_dims;
-                        ?&gt;
-                        &lt;/p&gt;
-                &lt;/div&gt;
</del><ins>+        &lt;div class=&quot;wp_attachment_details&quot;&gt;
+                &lt;p&gt;
+                        &lt;label for=&quot;attachment_caption&quot;&gt;&lt;strong&gt;&lt;?php _e( 'Caption' ); ?&gt;&lt;/strong&gt;&lt;/label&gt;&lt;br /&gt;
+                        &lt;textarea class=&quot;widefat&quot; name=&quot;excerpt&quot; id=&quot;attachment_caption&quot;&gt;&lt;?php echo $post-&gt;post_excerpt; ?&gt;&lt;/textarea&gt;
+                &lt;/p&gt;
+                &lt;p&gt;
+                        &lt;label for=&quot;attachment_alt&quot;&gt;&lt;strong&gt;&lt;?php _e( 'Alternative Text' ); ?&gt;&lt;/strong&gt;&lt;/label&gt;&lt;br /&gt;
+                        &lt;input type=&quot;text&quot; class=&quot;widefat&quot; name=&quot;_wp_attachment_image_alt&quot; id=&quot;attachment_alt&quot; value=&quot;&lt;?php echo esc_attr( $alt_text ); ?&gt;&quot; /&gt;
+                &lt;/p&gt;
</ins><span class="cx">         &lt;/div&gt;
</span><span class="cx">         &lt;?php
</span><ins>+        // need a filter on this content
</ins><span class="cx"> }
</span><span class="cx"> 
</span><ins>+/**
+ * Displays non-editable attachment metadata in the publish metabox
+ *
+ * @since 3.5.0
+ */
+function attachment_submitbox_metadata() {
+        $post = get_post();
+
+        $filename = esc_html( basename( $post-&gt;guid ) );
+
+        $media_dims = '';
+        $meta = wp_get_attachment_metadata( $post-&gt;ID );
+        if ( is_array( $meta ) &amp;&amp; array_key_exists( 'width', $meta ) &amp;&amp; array_key_exists( 'height', $meta ) )
+                $media_dims .= &quot;&lt;span id='media-dims-$post-&gt;ID'&gt;{$meta['width']}&amp;nbsp;&amp;times;&amp;nbsp;{$meta['height']}&lt;/span&gt; &quot;;
+        $media_dims = apply_filters( 'media_meta', $media_dims, $post );
+
+        $att_url = wp_get_attachment_url( $post-&gt;ID );
+?&gt;
+        &lt;div class=&quot;misc-pub-section&quot;&gt;
+                        &lt;label for=&quot;attachment_url&quot;&gt;&lt;?php _e( 'File URL:' ); ?&gt;&lt;/label&gt;
+                        &lt;input type=&quot;text&quot; class=&quot;widefat urlfield&quot; readonly=&quot;readonly&quot; name=&quot;attachment_url&quot; value=&quot;&lt;?php echo esc_attr($att_url); ?&gt;&quot; /&gt;
+        &lt;/div&gt;
+        &lt;div class=&quot;misc-pub-section&quot;&gt;
+                &lt;?php _e( 'File name:' ); ?&gt; &lt;strong&gt;&lt;?php echo $filename; ?&gt;&lt;/strong&gt;
+        &lt;/div&gt;
+        &lt;div class=&quot;misc-pub-section&quot;&gt;
+                &lt;?php _e( 'File type:' ); ?&gt; &lt;strong&gt;&lt;?php echo $post-&gt;post_mime_type; ?&gt;&lt;/strong&gt;
+        &lt;/div&gt;
+
+&lt;?php if ( $media_dims ) : ?&gt;
+        &lt;div class=&quot;misc-pub-section&quot;&gt;
+                &lt;?php _e( 'Dimensions:' ); ?&gt; &lt;strong&gt;&lt;?php echo $media_dims; ?&gt;&lt;/strong&gt;
+        &lt;/div&gt;
+&lt;?php
+        endif;
+}
+
</ins><span class="cx"> add_filter( 'async_upload_image', 'get_media_item', 10, 2 );
</span><span class="cx"> add_filter( 'async_upload_audio', 'get_media_item', 10, 2 );
</span><span class="cx"> add_filter( 'async_upload_video', 'get_media_item', 10, 2 );
</span><span class="lines">@@ -2181,3 +2217,5 @@
</span><span class="cx"> 
</span><span class="cx"> add_filter( 'media_upload_gallery', 'media_upload_gallery' );
</span><span class="cx"> add_filter( 'media_upload_library', 'media_upload_library' );
</span><ins>+
+add_action( 'attachment_submitbox_misc_actions', 'attachment_submitbox_metadata' );
</ins></span></pre></div>
<a id="trunkwpadminincludesmetaboxesphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/meta-boxes.php (22363 => 22364)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/meta-boxes.php        2012-11-05 02:43:47 UTC (rev 22363)
+++ trunk/wp-admin/includes/meta-boxes.php        2012-11-05 14:04:22 UTC (rev 22364)
</span><span class="lines">@@ -302,8 +302,7 @@
</span><span class="cx">  *
</span><span class="cx">  * @param object $post
</span><span class="cx">  */
</span><del>-function attachment_data_meta_box( $post ) {
-        $alt_text = get_post_meta( $post-&gt;ID, '_wp_attachment_image_alt', true );
</del><ins>+function attachment_content_meta_box( $post ) {
</ins><span class="cx">         $quicktags_settings = array( 'buttons' =&gt; 'strong,em,link,block,del,ins,img,ul,ol,li,code,spell,close' );
</span><span class="cx">         $editor_args = array(
</span><span class="cx">                 'textarea_name' =&gt; 'content',
</span><span class="lines">@@ -317,15 +316,6 @@
</span><span class="cx">         &lt;label class=&quot;screen-reader-text&quot; for=&quot;content&quot;&gt;&lt;strong&gt;&lt;?php _e( 'Attachment Page Content' ); ?&gt;&lt;/strong&gt;&lt;/label&gt;
</span><span class="cx">         &lt;?php wp_editor( $post-&gt;post_content, 'attachment_content', $editor_args ); ?&gt;
</span><span class="cx"> &lt;/p&gt;
</span><del>-
-&lt;p&gt;
-        &lt;label for=&quot;attachment_caption&quot;&gt;&lt;strong&gt;&lt;?php _e( 'Caption' ); ?&gt;&lt;/strong&gt;&lt;/label&gt;&lt;br /&gt;
-        &lt;textarea class=&quot;widefat&quot; name=&quot;excerpt&quot; id=&quot;attachment_caption&quot;&gt;&lt;?php echo $post-&gt;post_excerpt; ?&gt;&lt;/textarea&gt;
-&lt;/p&gt;
-&lt;p&gt;
-        &lt;label for=&quot;attachment_alt&quot;&gt;&lt;strong&gt;&lt;?php _e( 'Alternative Text' ); ?&gt;&lt;/strong&gt;&lt;/label&gt;&lt;br /&gt;
-        &lt;input type=&quot;text&quot; class=&quot;widefat&quot; name=&quot;_wp_attachment_image_alt&quot; id=&quot;attachment_alt&quot; value=&quot;&lt;?php echo esc_attr( $alt_text ); ?&gt;&quot; /&gt;
-&lt;/p&gt;
</del><span class="cx"> &lt;?php
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>