source: trunk/www.guidonia.net/wp/wp-admin/media.php@ 44

Last change on this file since 44 was 44, checked in by luciano, 15 years ago
File size: 3.0 KB
Line 
1<?php
2/**
3 * Media management action handler.
4 *
5 * @package WordPress
6 * @subpackage Administration
7 */
8
9/** Load WordPress Administration Bootstrap */
10require_once('admin.php');
11
12$parent_file = 'upload.php';
13$submenu_file = 'upload.php';
14
15wp_reset_vars(array('action'));
16
17switch( $action ) :
18case '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
44case '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
65 require( 'admin-header.php' );
66
67 $parent_file = 'upload.php';
68 $message = '';
69 $class = '';
70 if ( isset($_GET['message']) ) {
71 switch ( $_GET['message'] ) :
72 case 'updated' :
73 $message = __('Media attachment updated.');
74 $class = 'updated fade';
75 break;
76 endswitch;
77 }
78 if ( $message )
79 echo "<div id='message' class='$class'><p>$message</p></div>\n";
80
81?>
82
83<div class="wrap">
84<?php screen_icon(); ?>
85<h2><?php _e( 'Edit Media' ); ?></h2>
86
87<form method="post" action="<?php echo esc_url( remove_query_arg( 'message' ) ); ?>" class="media-upload-form" id="media-single-form">
88<div class="media-single">
89<div id='media-item-<?php echo $att_id; ?>' class='media-item'>
90<?php echo get_media_item( $att_id, array( 'toggle' => false, 'send' => false, 'delete' => false, 'show_title' => false, 'errors' => $errors ) ); ?>
91</div>
92</div>
93
94<p class="submit">
95<input type="submit" class="button-primary" name="save" value="<?php esc_attr_e('Update Media'); ?>" />
96<input type="hidden" name="post_id" id="post_id" value="<?php echo isset($post_id) ? esc_attr($post_id) : ''; ?>" />
97<input type="hidden" name="attachment_id" id="attachment_id" value="<?php echo esc_attr($att_id); ?>" />
98<input type="hidden" name="action" value="editattachment" />
99<?php wp_original_referer_field(true, 'previous'); ?>
100<?php wp_nonce_field('media-form'); ?>
101</p>
102</form>
103
104</div>
105
106<?php
107
108 require( 'admin-footer.php' );
109
110 exit;
111
112default:
113 wp_redirect( 'upload.php' );
114 exit;
115
116endswitch;
117
118
119?>
Note: See TracBrowser for help on using the repository browser.