2008-01-09 08:14:29 +00:00
<? php
2008-08-14 06:30:38 +00:00
/**
* Manage media uploaded file.
*
* There are many filters in here for media. Plugins can extend functionality
* by hooking into the filters.
*
* @package WordPress
* @subpackage Administration
*/
2010-12-01 19:28:24 +00:00
if ( ! isset ( $_GET [ 'inline' ] ) )
define ( 'IFRAME_REQUEST' , true );
2010-10-18 17:58:36 +00:00
2008-08-14 06:30:38 +00:00
/** Load WordPress Administration Bootstrap */
2010-04-18 06:14:45 +00:00
require_once ( './admin.php' );
2008-09-27 08:17:55 +00:00
if ( ! current_user_can ( 'upload_files' ))
wp_die ( __ ( 'You do not have permission to upload files.' ));
2011-07-29 08:59:35 +00:00
wp_enqueue_script ( 'plupload-full' );
wp_enqueue_script ( 'plupload-handlers' );
2009-09-10 22:07:33 +00:00
wp_enqueue_script ( 'image-edit' );
2009-10-07 22:18:09 +00:00
wp_enqueue_script ( 'set-post-thumbnail' );
2009-09-10 22:07:33 +00:00
wp_enqueue_style ( 'imgareaselect' );
2008-01-09 08:14:29 +00:00
@ header ( 'Content-Type: ' . get_option ( 'html_type' ) . '; charset=' . get_option ( 'blog_charset' ));
// IDs should be integers
2008-08-14 06:30:38 +00:00
$ID = isset ( $ID ) ? ( int ) $ID : 0 ;
2008-02-22 17:43:56 +00:00
$post_id = isset ( $post_id ) ? ( int ) $post_id : 0 ;
2008-01-09 08:14:29 +00:00
// Require an ID for the edit screen
2008-02-22 17:43:56 +00:00
if ( isset ( $action ) && $action == 'edit' && ! $ID )
2008-01-09 08:14:29 +00:00
wp_die ( __ ( "You are not allowed to be here" ));
2008-09-27 08:17:55 +00:00
if ( isset ( $_GET [ 'inline' ]) ) {
2009-06-25 06:09:22 +00:00
$errors = array ();
2008-12-09 18:03:31 +00:00
2008-09-27 08:17:55 +00:00
if ( isset ( $_POST [ 'html-upload' ]) && ! empty ( $_FILES ) ) {
2011-03-28 21:30:59 +00:00
check_admin_referer ( 'media-form' );
2008-09-27 08:17:55 +00:00
// Upload File button was clicked
$id = media_handle_upload ( 'async-upload' , $_REQUEST [ 'post_id' ]);
unset ( $_FILES );
if ( is_wp_error ( $id ) ) {
$errors [ 'upload_error' ] = $id ;
$id = false ;
}
}
2008-02-28 21:29:51 +00:00
2009-06-25 06:09:22 +00:00
if ( isset ( $_GET [ 'upload-page-form' ]) ) {
$errors = array_merge ( $errors , ( array ) media_upload_form_handler ());
$location = 'upload.php' ;
if ( $errors )
$location .= '?message=3' ;
wp_redirect ( admin_url ( $location ) );
2010-12-09 18:02:54 +00:00
exit ;
2009-06-25 06:09:22 +00:00
}
2008-10-17 20:02:03 +00:00
$title = __ ( 'Upload New Media' );
2008-11-29 18:09:09 +00:00
$parent_file = 'upload.php' ;
2010-05-25 22:38:29 +00:00
add_contextual_help ( $current_screen ,
2010-06-02 05:54:14 +00:00
'<p>' . __ ( 'You can upload media files here without creating a post first. This allows you to upload files to use with posts and pages later and/or to get a web link for a particular file that you can share.' ) . '</p>' .
'<p>' . __ ( 'There are two options for uploading files: <em>Select Files</em> will open the Flash-based uploader (multiple file upload allowed), or you can use the <em>Browser Uploader</em>. Clicking <em>Select Files</em> opens a navigation window showing you files in your operating system. Selecting <em>Open</em> after clicking on the file you want activates a progress bar on the uploader screen. Basic image editing is available after upload is complete. Make sure you click <em>Save</em> before leaving this screen.' ) . '</p>' .
2010-05-27 11:52:15 +00:00
'<p><strong>' . __ ( 'For more information:' ) . '</strong></p>' .
2011-04-28 15:24:49 +00:00
'<p>' . __ ( '<a href="http://codex.wordpress.org/Media_Add_New_Screen" target="_blank">Documentation on Uploading Media Files</a>' ) . '</p>' .
2010-06-03 21:00:39 +00:00
'<p>' . __ ( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
2010-05-25 22:38:29 +00:00
);
2010-04-18 06:14:45 +00:00
require_once ( './admin-header.php' ); ?>
2008-09-27 08:17:55 +00:00
<div class="wrap">
2008-11-26 13:51:25 +00:00
<?php screen_icon(); ?>
2009-05-18 15:11:07 +00:00
<h2><?php echo esc_html( $title ); ?></h2>
2008-01-09 08:14:29 +00:00
2010-06-08 14:02:16 +00:00
<form enctype="multipart/form-data" method="post" action="<?php echo admin_url('media-upload.php?inline=&upload-page-form='); ?>" class="media-upload-form type-form validate" id="file-form">
2008-10-17 20:02:03 +00:00
2008-09-27 08:17:55 +00:00
<?php media_upload_form(); ?>
2008-10-17 20:02:03 +00:00
2008-09-27 08:17:55 +00:00
<script type="text/javascript">
jQuery(function($){
var preloaded = $(".media-item.preloaded");
if ( preloaded.length > 0 ) {
preloaded.each(function(){prepareMediaItem({id:this.id.replace(/[^0-9]/g, '')},'');});
}
updateMediaForm();
post_id = 0;
shortform = 1;
});
</script>
<input type="hidden" name="post_id" id="post_id" value="0" />
<?php wp_nonce_field('media-form'); ?>
2010-05-26 03:57:55 +00:00
<div id="media-items" class="hide-if-no-js"> </div>
2010-10-28 21:56:43 +00:00
<?php submit_button( __( 'Save all changes' ), 'button savebutton hide-if-no-js', 'save' ); ?>
2008-09-27 08:17:55 +00:00
</form>
</div>
<?php
2010-04-18 06:14:45 +00:00
include('./admin-footer.php');
2008-03-10 21:49:08 +00:00
2008-09-27 08:17:55 +00:00
} else {
2008-01-09 08:14:29 +00:00
2008-09-27 08:17:55 +00:00
// upload type: image, video, file, ..?
if ( isset($_GET['type']) )
$type = strval($_GET['type']);
else
$type = apply_filters('media_upload_default_type', 'file');
2008-12-09 18:03:31 +00:00
2008-09-27 08:17:55 +00:00
// tab: gallery, library, or type-specific
if ( isset($_GET['tab']) )
$tab = strval($_GET['tab']);
else
$tab = apply_filters('media_upload_default_tab', 'type');
2008-12-09 18:03:31 +00:00
2008-09-27 08:17:55 +00:00
$body_id = 'media-upload';
2008-12-09 18:03:31 +00:00
2008-09-27 08:17:55 +00:00
// let the action code decide how to handle the request
2008-11-26 02:27:37 +00:00
if ( $tab == 'type' || $tab == 'type_url' )
2008-09-27 08:17:55 +00:00
do_action("media_upload_$type");
else
do_action("media_upload_$tab");
}
2008-01-25 19:21:11 +00:00
?>