PHP 7.4.33
Preview: async-upload.php Size: 4.56 KB
/var/www/fresco.wpress.dk/httpdocs/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'] ) && (int) $_REQUEST['attachment_id'] && $_REQUEST['fetch'] ) {
	$id   = (int) $_REQUEST['attachment_id'];
	$post = get_post( $id );
	if ( 'attachment' !== $post->post_type ) {
		wp_die( __( 'Invalid post type.' ) );
	}

	switch ( $_REQUEST['fetch'] ) {
		case 3:
			?>
			<div class="media-item-wrapper">
				<div class="attachment-details">
					<?php
					$thumb_url = wp_get_attachment_image_src( $id, 'thumbnail', true );
					if ( $thumb_url ) {
						echo '<img class="pinkynail" src="' . esc_url( $thumb_url[0] ) . '" alt="" />';
					}

					// Title shouldn't ever be empty, but use filename just in case.
					$file     = get_attached_file( $post->ID );
					$file_url = wp_get_attachment_url( $post->ID );
					$title    = $post->post_title ? $post->post_title : wp_basename( $file );
					?>
					<div class="filename new">
						<span class="media-list-title"><strong><?php echo esc_html( wp_html_excerpt( $title, 60, '&hellip;' ) ); ?></strong></span>
						<span class="media-list-subtitle"><?php echo wp_basename( $file ); ?></span>
					</div>
				</div>
				<div class="attachment-tools">
					<span class="media-item-copy-container copy-to-clipboard-container edit-attachment">
						<button type="button" class="button button-small copy-attachment-url" data-clipboard-text="<?php echo $file_url; ?>"><?php _e( 'Copy URL to clipboard' ); ?></button>
						<span class="success hidden" aria-hidden="true"><?php _e( 'Copied!' ); ?></span>
					</span>
					<?php
					if ( current_user_can( 'edit_post', $id ) ) {
						echo '<a class="edit-attachment" href="' . esc_url( get_edit_post_link( $id ) ) . '">' . _x( 'Edit', 'media item' ) . '</a>';
					} else {
						echo '<span class="edit-attachment">' . _x( 'Success', 'media item' ) . '</span>';
					}
					?>
				</div>
			</div>
			<?php
			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.
	 *
	 * Possible hook names include:
	 *
	 *  - `async_upload_audio`
	 *  - `async_upload_file`
	 *  - `async_upload_image`
	 *  - `async_upload_video`
	 *
	 * @since 2.5.0
	 *
	 * @param int $id Uploaded attachment ID.
	 */
	echo apply_filters( "async_upload_{$type}", $id );
}

Directory Contents

Dirs: 7 × Files: 93
Name Size Perms Modified Actions
css DIR
- drwxr-xr-x 2023-08-29 14:14:51
Edit Download
images DIR
- drwxr-xr-x 2023-08-29 14:14:51
Edit Download
includes DIR
- drwxr-xr-x 2023-08-29 14:14:51
Edit Download
js DIR
- drwxr-xr-x 2023-08-29 14:14:51
Edit Download
maint DIR
- drwxr-xr-x 2023-08-29 14:14:51
Edit Download
network DIR
- drwxr-xr-x 2023-08-29 14:14:51
Edit Download
user DIR
- drwxr-xr-x 2023-08-29 14:14:51
Edit Download
23.77 KB lrw-r--r-- 2023-08-29 09:40:29
Edit Download
4.83 KB lrw-r--r-- 2022-05-07 16:21:18
Edit Download
2.76 KB lrw-r--r-- 2021-06-01 11:30:57
Edit Download
406 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
8.82 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
2.00 KB lrw-r--r-- 2022-03-02 15:00:11
Edit Download
12.26 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
4.56 KB lrw-r--r-- 2022-01-27 22:17:00
Edit Download
10.02 KB lrw-r--r-- 2022-08-04 14:52:11
Edit Download
11.25 KB lrw-r--r-- 2023-06-22 14:36:26
Edit Download
5.51 KB lrw-r--r-- 2023-08-01 13:00:29
Edit Download
3.85 KB lrw-r--r-- 2023-08-01 13:00:29
Edit Download
416 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
426 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
10.61 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
14.25 KB lrw-r--r-- 2023-06-19 18:27:27
Edit Download
28.36 KB lrw-r--r-- 2023-02-23 11:06:19
Edit Download
10.82 KB lrw-r--r-- 2023-07-10 21:22:21
Edit Download
8.34 KB lrw-r--r-- 2023-02-07 17:10:21
Edit Download
6.15 KB lrw-r--r-- 2023-05-11 15:05:22
Edit Download
10.41 KB lrw-r--r-- 2022-09-20 02:51:09
Edit Download
21.87 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
19.03 KB lrw-r--r-- 2023-06-22 14:36:26
Edit Download
7.36 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
7.76 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
10.99 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
4.50 KB lrw-r--r-- 2023-07-25 00:12:21
Edit Download
7.40 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
7.67 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
6.80 KB lrw-r--r-- 2022-11-20 14:10:15
Edit Download
17.09 KB lrw-r--r-- 2023-06-25 18:44:23
Edit Download
742 B lrw-r--r-- 2021-07-22 13:53:00
Edit Download
4.16 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
2.63 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
2.70 KB lrw-r--r-- 2021-07-27 19:01:59
Edit Download
1.66 KB lrw-r--r-- 2021-12-12 14:52:02
Edit Download
2.56 KB lrw-r--r-- 2023-06-23 12:17:24
Edit Download
3.18 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
3.49 KB lrw-r--r-- 2021-03-07 12:32:09
Edit Download
763 B lrw-r--r-- 2023-06-19 23:20:21
Edit Download
9.84 KB lrw-r--r-- 2023-07-09 19:56:23
Edit Download
16.86 KB lrw-r--r-- 2023-07-25 14:35:23
Edit Download
307 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
196 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
4.19 KB lrw-r--r-- 2022-11-14 21:57:10
Edit Download
216 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
223 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
215 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
217 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
219 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
215 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
4.68 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
46.67 KB lrw-r--r-- 2023-03-15 09:05:22
Edit Download
5.35 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
15.58 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
16.69 KB lrw-r--r-- 2023-07-11 05:55:20
Edit Download
492 B lrw-r--r-- 2019-08-16 00:39:55
Edit Download
6.35 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
21.12 KB lrw-r--r-- 2023-05-02 15:45:22
Edit Download
9.92 KB lrw-r--r-- 2023-04-27 13:14:23
Edit Download
9.92 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
9.06 KB lrw-r--r-- 2023-06-22 00:32:21
Edit Download
12.67 KB lrw-r--r-- 2023-06-22 14:36:26
Edit Download
13.11 KB lrw-r--r-- 2023-06-24 09:52:19
Edit Download
6.78 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
28.60 KB lrw-r--r-- 2023-02-23 11:06:19
Edit Download
2.64 KB lrw-r--r-- 2020-05-16 18:42:12
Edit Download
9.85 KB lrw-r--r-- 2023-06-22 14:36:26
Edit Download
2.33 KB lrw-r--r-- 2020-02-06 06:33:11
Edit Download
3.61 KB lrw-r--r-- 2023-04-09 11:57:22
Edit Download
2.50 KB lrw-r--r-- 2023-07-25 00:12:21
Edit Download
283 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
5.45 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
17.33 KB lrw-r--r-- 2023-06-23 23:09:29
Edit Download
5.90 KB lrw-r--r-- 2023-07-25 14:35:23
Edit Download
3.93 KB lrw-r--r-- 2021-11-01 22:36:59
Edit Download
10.02 KB lrw-r--r-- 2023-06-14 14:08:18
Edit Download
2.20 KB lrw-r--r-- 2022-06-01 18:14:10
Edit Download
14.90 KB lrw-r--r-- 2023-06-24 09:52:19
Edit Download
23.23 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
45.64 KB lrw-r--r-- 2023-06-27 09:36:21
Edit Download
3.43 KB lrw-r--r-- 2023-02-23 10:38:21
Edit Download
45.27 KB lrw-r--r-- 2023-07-14 22:11:22
Edit Download
12.43 KB lrw-r--r-- 2023-04-09 11:57:22
Edit Download
341 B lrw-r--r-- 2020-02-06 06:33:11
Edit Download
5.54 KB lrw-r--r-- 2023-04-04 22:38:22
Edit Download
14.64 KB lrw-r--r-- 2023-06-22 14:36:26
Edit Download
38.81 KB lrw-r--r-- 2023-07-09 19:56:23
Edit Download
23.68 KB lrw-r--r-- 2023-06-23 23:09:29
Edit Download
21.95 KB lrw-r--r-- 2023-06-04 02:35:19
Edit Download
2.48 KB lrw-r--r-- 2022-04-07 13:40:04
Edit Download
19.05 KB lrw-r--r-- 2023-06-22 14:57:24
Edit Download
1.09 KB lrw-r--r-- 2022-03-22 19:59:04
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).