Projects : mp-wp : mp-wp_genesis
1 | <?php |
2 | /** |
3 | * Media management action handler. |
4 | * |
5 | * @package WordPress |
6 | * @subpackage Administration |
7 | */ |
8 | |
9 | /** Load WordPress Administration Bootstrap */ |
10 | require_once('admin.php'); |
11 | |
12 | $parent_file = 'upload.php'; |
13 | $submenu_file = 'upload.php'; |
14 | |
15 | wp_reset_vars(array('action')); |
16 | |
17 | switch( $action ) : |
18 | case 'editattachment' : |
19 | $attachment_id = (int) $_POST['attachment_id']; |
20 | check_admin_referer('media-form'); |
21 | |
22 | if ( !current_user_can('edit_post', $attachment_id) ) |
23 | wp_die ( __('You are not allowed to edit this attachment.') ); |
24 | |
25 | $errors = media_upload_form_handler(); |
26 | |
27 | if ( empty($errors) ) { |
28 | $location = 'media.php'; |
29 | if ( $referer = wp_get_original_referer() ) { |
30 | if ( false !== strpos($referer, 'upload.php') || ( url_to_postid($referer) == $attachment_id ) ) |
31 | $location = $referer; |
32 | } |
33 | if ( false !== strpos($location, 'upload.php') ) { |
34 | $location = remove_query_arg('message', $location); |
35 | $location = add_query_arg('posted', $attachment_id, $location); |
36 | } elseif ( false !== strpos($location, 'media.php') ) { |
37 | $location = add_query_arg('message', 'updated', $location); |
38 | } |
39 | wp_redirect($location); |
40 | exit; |
41 | } |
42 | |
43 | // no break |
44 | case 'edit' : |
45 | $title = __('Edit Media'); |
46 | |
47 | if ( empty($errors) ) |
48 | $errors = null; |
49 | |
50 | if ( empty( $_GET['attachment_id'] ) ) { |
51 | wp_redirect('upload.php'); |
52 | exit(); |
53 | } |
54 | $att_id = (int) $_GET['attachment_id']; |
55 | |
56 | if ( !current_user_can('edit_post', $att_id) ) |
57 | wp_die ( __('You are not allowed to edit this attachment.') ); |
58 | |
59 | $att = get_post($att_id); |
60 | |
61 | add_filter('attachment_fields_to_edit', 'media_single_attachment_fields_to_edit', 10, 2); |
62 | |
63 | wp_enqueue_script( 'wp-ajax-response' ); |
64 | // wp_admin_css( 'media' ); |
65 | |
66 | require( 'admin-header.php' ); |
67 | |
68 | $parent_file = 'upload.php'; |
69 | $message = ''; |
70 | $class = ''; |
71 | if ( isset($_GET['message']) ) { |
72 | switch ( $_GET['message'] ) : |
73 | case 'updated' : |
74 | $message = __('Media attachment updated.'); |
75 | $class = 'updated fade'; |
76 | break; |
77 | endswitch; |
78 | } |
79 | if ( $message ) |
80 | echo "<div id='message' class='$class'><p>$message</p></div>\n"; |
81 | |
82 | ?> |
83 | |
84 | <div class="wrap"> |
85 | <?php screen_icon(); ?> |
86 | <h2><?php _e( 'Edit Media' ); ?></h2> |
87 | |
88 | <form method="post" action="<?php echo clean_url( remove_query_arg( 'message' ) ); ?>" class="media-upload-form" id="media-single-form"> |
89 | <div class="media-single"> |
90 | <div id='media-item-<?php echo $att_id; ?>' class='media-item'> |
91 | <?php echo get_media_item( $att_id, array( 'toggle' => false, 'send' => false, 'delete' => false, 'show_title' => false, 'errors' => $errors ) ); ?> |
92 | </div> |
93 | </div> |
94 | |
95 | <p class="submit"> |
96 | <input type="submit" class="button-primary" name="save" value="<?php _e('Update Media'); ?>" /> |
97 | <input type="hidden" name="post_id" id="post_id" value="<?php echo $post_id; ?>" /> |
98 | <input type="hidden" name="attachment_id" id="attachment_id" value="<?php echo $att_id; ?>" /> |
99 | <input type="hidden" name="action" value="editattachment" /> |
100 | <?php wp_original_referer_field(true, 'previous'); ?> |
101 | <?php wp_nonce_field('media-form'); ?> |
102 | </p> |
103 | </form> |
104 | |
105 | </div> |
106 | |
107 | <?php |
108 | |
109 | require( 'admin-footer.php' ); |
110 | |
111 | exit; |
112 | |
113 | default: |
114 | wp_redirect( 'upload.php' ); |
115 | exit; |
116 | |
117 | endswitch; |
118 | |
119 | |
120 | ?> |