PHP 8.1.33
Preview: async-upload.php Size: 3.74 KB
/home/jambtst2015/public_html/wp-admin/async-upload.php

<?php
/**
 * Server-side file upload handler from wp-plupload or other asynchronous upload methods.
 *
 * @package WordPress
 * @subpackage Administration
 */

if ( isset( $_REQUEST['action'] ) && 'upload-attachment' === $_REQUEST['action'] ) {
	define( 'DOING_AJAX', true );
}

if ( ! defined( 'WP_ADMIN' ) ) {
	define( 'WP_ADMIN', true );
}

if ( defined( 'ABSPATH' ) ) {
	require_once ABSPATH . 'wp-load.php';
} else {
	require_once dirname( __DIR__ ) . '/wp-load.php';
}

require_once ABSPATH . 'wp-admin/admin.php';

header( 'Content-Type: text/plain; charset=' . get_option( 'blog_charset' ) );

if ( isset( $_REQUEST['action'] ) && 'upload-attachment' === $_REQUEST['action'] ) {
	require ABSPATH . 'wp-admin/includes/ajax-actions.php';

	send_nosniff_header();
	nocache_headers();

	wp_ajax_upload_attachment();
	die( '0' );
}

if ( ! current_user_can( 'upload_files' ) ) {
	wp_die( __( 'Sorry, you are not allowed to upload files.' ) );
}

// Just fetch the detail form for that attachment.
if ( isset( $_REQUEST['attachment_id'] ) && intval( $_REQUEST['attachment_id'] ) && $_REQUEST['fetch'] ) {
	$id   = intval( $_REQUEST['attachment_id'] );
	$post = get_post( $id );
	if ( 'attachment' !== $post->post_type ) {
		wp_die( __( 'Invalid post type.' ) );
	}

	switch ( $_REQUEST['fetch'] ) {
		case 3:
			$thumb_url = wp_get_attachment_image_src( $id, 'thumbnail', true );
			if ( $thumb_url ) {
				echo '<img class="pinkynail" src="' . esc_url( $thumb_url[0] ) . '" alt="" />';
			}
			if ( current_user_can( 'edit_post', $id ) ) {
				echo '<a class="edit-attachment" href="' . esc_url( get_edit_post_link( $id ) ) . '" target="_blank">' . _x( 'Edit', 'media item' ) . '</a>';
			} else {
				echo '<span class="edit-attachment">' . _x( 'Success', 'media item' ) . '</span>';
			}

			// Title shouldn't ever be empty, but use filename just in case.
			$file  = get_attached_file( $post->ID );
			$title = $post->post_title ? $post->post_title : wp_basename( $file );
			echo '<div class="filename new"><span class="title">' . esc_html( wp_html_excerpt( $title, 60, '&hellip;' ) ) . '</span></div>';
			break;
		case 2:
			add_filter( 'attachment_fields_to_edit', 'media_single_attachment_fields_to_edit', 10, 2 );
			echo get_media_item(
				$id,
				array(
					'send'   => false,
					'delete' => true,
				)
			);
			break;
		default:
			add_filter( 'attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2 );
			echo get_media_item( $id );
			break;
	}
	exit;
}

check_admin_referer( 'media-form' );

$post_id = 0;
if ( isset( $_REQUEST['post_id'] ) ) {
	$post_id = absint( $_REQUEST['post_id'] );
	if ( ! get_post( $post_id ) || ! current_user_can( 'edit_post', $post_id ) ) {
		$post_id = 0;
	}
}

$id = media_handle_upload( 'async-upload', $post_id );
if ( is_wp_error( $id ) ) {
	printf(
		'<div class="error-div error">%s <strong>%s</strong><br />%s</div>',
		sprintf(
			'<button type="button" class="dismiss button-link" onclick="jQuery(this).parents(\'div.media-item\').slideUp(200, function(){jQuery(this).remove();});">%s</button>',
			__( 'Dismiss' )
		),
		sprintf(
			/* translators: %s: Name of the file that failed to upload. */
			__( '&#8220;%s&#8221; has failed to upload.' ),
			esc_html( $_FILES['async-upload']['name'] )
		),
		esc_html( $id->get_error_message() )
	);
	exit;
}

if ( $_REQUEST['short'] ) {
	// Short form response - attachment ID only.
	echo $id;
} else {
	// Long form response - big chunk of HTML.
	$type = $_REQUEST['type'];

	/**
	 * Filters the returned ID of an uploaded attachment.
	 *
	 * The dynamic portion of the hook name, `$type`, refers to the attachment type,
	 * such as 'image', 'audio', 'video', 'file', etc.
	 *
	 * @since 2.5.0
	 *
	 * @param int $id Uploaded attachment ID.
	 */
	echo apply_filters( "async_upload_{$type}", $id );
}

Directory Contents

Dirs: 7 × Files: 91

Name Size Perms Modified Actions
css DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
images DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
includes DIR
- drwxr-xr-x 2024-12-08 14:52:17
Edit Download
js DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
maint DIR
- drwxr-xr-x 2024-11-22 17:53:11
Edit Download
network DIR
- drwxr-xr-x 2025-10-19 00:06:17
Edit Download
user DIR
- drwxr-xr-x 2025-10-19 00:06:17
Edit Download
81 B lr--r--r-- 2024-12-09 06:09:12
Edit Download
25.13 KB lrw-r--r-- 2025-10-08 16:39:40
Edit Download
4.58 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.77 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
406 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
8.42 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.63 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
11.85 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.74 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
65.71 KB lr--r--r-- 2023-10-23 06:09:12
Edit Download
11.11 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.77 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
416 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
426 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.07 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
13.42 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
28.22 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.48 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
7.91 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
6.09 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
9.87 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
21.40 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
18.07 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.16 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
140.80 KB lrw-r--r-- 2025-11-04 02:36:00
Edit Download
3.13 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
10.71 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.46 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
7.35 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
6.75 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.89 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
16.51 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
711 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.09 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.59 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.67 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
1.65 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.25 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.12 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.41 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.47 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
9.60 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.19 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
307 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
196 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.18 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
216 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
223 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
215 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
217 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
219 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
215 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
4.54 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
43.72 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.25 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
15.08 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.61 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
492 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
6.15 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
18.76 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
7.88 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
9.48 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
8.42 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
12.48 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
13.01 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
6.21 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
28.45 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.64 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
9.76 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.33 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
833 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.25 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
283 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.41 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
15.44 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.65 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.21 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
2.20 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
14.68 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
21.48 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
43.78 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
3.37 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
37.39 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
12.59 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
341 B lrw-r--r-- 2024-11-22 17:53:11
Edit Download
5.47 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
13.64 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
28.52 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
22.64 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
19.43 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download
19.28 KB lrw-r--r-- 2024-11-22 17:53:11
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).