2008-03-12 06:50:07 +01:00
< ? php
2008-08-14 08:30:38 +02:00
/**
* Media management action handler .
*
* @ package WordPress
* @ subpackage Administration
*/
/** Load WordPress Administration Bootstrap */
2010-04-18 08:14:45 +02:00
require_once ( './admin.php' );
2008-03-12 06:50:07 +01:00
2008-11-27 21:28:33 +01:00
$parent_file = 'upload.php' ;
2008-03-12 06:50:07 +01:00
$submenu_file = 'upload.php' ;
wp_reset_vars ( array ( 'action' ));
switch ( $action ) :
case 'editattachment' :
2008-03-27 02:48:22 +01:00
$attachment_id = ( int ) $_POST [ 'attachment_id' ];
2008-04-25 17:23:11 +02:00
check_admin_referer ( 'media-form' );
if ( ! current_user_can ( 'edit_post' , $attachment_id ) )
wp_die ( __ ( 'You are not allowed to edit this attachment.' ) );
$errors = media_upload_form_handler ();
2008-03-12 06:50:07 +01:00
if ( empty ( $errors ) ) {
2008-03-27 02:48:22 +01:00
$location = 'media.php' ;
if ( $referer = wp_get_original_referer () ) {
2008-03-27 23:05:51 +01:00
if ( false !== strpos ( $referer , 'upload.php' ) || ( url_to_postid ( $referer ) == $attachment_id ) )
2008-03-27 02:48:22 +01:00
$location = $referer ;
}
2008-03-27 23:05:51 +01:00
if ( false !== strpos ( $location , 'upload.php' ) ) {
2008-03-27 02:48:22 +01:00
$location = remove_query_arg ( 'message' , $location );
$location = add_query_arg ( 'posted' , $attachment_id , $location );
2008-03-27 23:05:51 +01:00
} elseif ( false !== strpos ( $location , 'media.php' ) ) {
2008-03-27 02:48:22 +01:00
$location = add_query_arg ( 'message' , 'updated' , $location );
}
wp_redirect ( $location );
2008-03-12 06:50:07 +01:00
exit ;
}
2008-03-27 02:48:22 +01:00
2008-03-12 06:50:07 +01:00
// no break
case 'edit' :
$title = __ ( 'Edit Media' );
if ( empty ( $errors ) )
$errors = null ;
if ( empty ( $_GET [ 'attachment_id' ] ) ) {
2010-10-27 12:43:43 +02:00
wp_redirect ( admin_url ( 'upload.php' ) );
2008-03-12 06:50:07 +01:00
exit ();
}
$att_id = ( int ) $_GET [ 'attachment_id' ];
2008-04-25 17:01:02 +02:00
if ( ! current_user_can ( 'edit_post' , $att_id ) )
wp_die ( __ ( 'You are not allowed to edit this attachment.' ) );
2008-03-12 06:50:07 +01:00
$att = get_post ( $att_id );
2009-07-30 15:39:34 +02:00
if ( empty ( $att -> ID ) ) wp_die ( __ ( 'You attempted to edit an attachment that doesn’t exist. Perhaps it was deleted?' ) );
if ( $att -> post_status == 'trash' ) wp_die ( __ ( 'You can’t edit this attachment because it is in the Trash. Please move it out of the Trash and try again.' ) );
2009-09-14 16:03:32 +02:00
2008-03-12 06:50:07 +01:00
add_filter ( 'attachment_fields_to_edit' , 'media_single_attachment_fields_to_edit' , 10 , 2 );
wp_enqueue_script ( 'wp-ajax-response' );
2009-09-11 00:07:33 +02:00
wp_enqueue_script ( 'image-edit' );
wp_enqueue_style ( 'imgareaselect' );
2008-05-22 02:06:41 +02:00
2010-04-18 08:14:45 +02:00
require ( './admin-header.php' );
2008-03-12 06:50:07 +01:00
2008-11-27 21:36:01 +01:00
$parent_file = 'upload.php' ;
2008-03-12 06:50:07 +01:00
$message = '' ;
$class = '' ;
if ( isset ( $_GET [ 'message' ]) ) {
switch ( $_GET [ 'message' ] ) :
case 'updated' :
$message = __ ( 'Media attachment updated.' );
2009-12-26 10:00:58 +01:00
$class = 'updated' ;
2008-03-12 06:50:07 +01:00
break ;
endswitch ;
}
if ( $message )
echo " <div id='message' class=' $class '><p> $message </p></div> \n " ;
?>
< div class = " wrap " >
2008-11-27 00:35:23 +01:00
< ? php screen_icon (); ?>
2008-03-12 06:50:07 +01:00
< h2 >< ? php _e ( 'Edit Media' ); ?> </h2>
2010-03-01 02:09:29 +01:00
< form method = " post " action = " " class = " media-upload-form " id = " media-single-form " >
2009-12-26 00:04:48 +01:00
< p class = " submit " style = " padding-bottom: 0; " >
2010-10-28 23:56:43 +02:00
< ? php submit_button ( __ ( 'Update Media' ), 'primary' , 'save' , false ); ?>
2009-12-25 23:22:21 +01:00
</ p >
2008-09-27 10:17:55 +02:00
< div class = " media-single " >
2008-03-12 06:50:07 +01:00
< div id = 'media-item-<?php echo $att_id; ?>' class = 'media-item' >
2008-09-27 10:17:55 +02:00
< ? php echo get_media_item ( $att_id , array ( 'toggle' => false , 'send' => false , 'delete' => false , 'show_title' => false , 'errors' => $errors ) ); ?>
2008-03-12 06:50:07 +01:00
</ div >
</ div >
2010-10-28 23:56:43 +02:00
< ? php submit_button ( __ ( 'Update Media' ), 'primary' , 'save' ); ?>
2009-05-05 21:43:53 +02:00
< input type = " hidden " name = " post_id " id = " post_id " value = " <?php echo isset( $post_id ) ? esc_attr( $post_id ) : ''; ?> " />
< input type = " hidden " name = " attachment_id " id = " attachment_id " value = " <?php echo esc_attr( $att_id ); ?> " />
2008-03-12 06:50:07 +01:00
< input type = " hidden " name = " action " value = " editattachment " />
2008-03-27 02:48:22 +01:00
< ? php wp_original_referer_field ( true , 'previous' ); ?>
2008-03-12 06:50:07 +01:00
< ? php wp_nonce_field ( 'media-form' ); ?>
2010-10-17 20:24:34 +02:00
2008-05-04 23:31:29 +02:00
</ form >
2008-03-12 06:50:07 +01:00
</ div >
< ? php
2010-04-18 08:14:45 +02:00
require ( './admin-footer.php' );
2008-03-12 06:50:07 +01:00
2008-03-17 19:28:43 +01:00
exit ;
default :
2010-10-27 12:43:43 +02:00
wp_redirect ( admin_url ( 'upload.php' ) );
2008-03-17 19:28:43 +01:00
exit ;
2008-03-12 06:50:07 +01:00
endswitch ;
?>