X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/76aea3697c6043c1613370f172395b4f65ee71f0..67f24b02807a1ff7e9d1a97453ed84c404c0af0f:/wp-admin/post.php?action=edit;post=%3C%3Fphp%20echo%20%24_GET%5B%27posted%27%5D diff --git a/wp-admin/post.php b/wp-admin/post.php index 0dfb8212..cc8e06c7 100644 --- a/wp-admin/post.php +++ b/wp-admin/post.php @@ -1,4 +1,14 @@ ID) ) wp_die( __("You attempted to edit a post that doesn't exist. Perhaps it was deleted?") ); + if ( empty($post->ID) ) wp_die( __('You attempted to edit a post that doesn’t exist. Perhaps it was deleted?') ); if ( 'post' != $post->post_type ) { wp_redirect( get_edit_post_link( $post->ID, 'url' ) ); @@ -89,21 +128,19 @@ case 'edit': add_thickbox(); wp_enqueue_script('media-upload'); wp_enqueue_script('word-count'); + wp_enqueue_script( 'admin-comments' ); + enqueue_comment_hotkeys_js(); if ( current_user_can('edit_post', $post_ID) ) { if ( $last = wp_check_post_lock( $post->ID ) ) { - $last_user = get_userdata( $last ); - $last_user_name = $last_user ? $last_user->display_name : __('Somebody'); - $message = sprintf( __( 'Warning: %s is currently editing this post' ), wp_specialchars( $last_user_name ) ); - $message = str_replace( "'", "\'", "

$message

" ); - add_action('admin_notices', create_function( '', "echo '$message';" ) ); + add_action('admin_notices', '_admin_notice_post_locked' ); } else { wp_set_post_lock( $post->ID ); wp_enqueue_script('autosave'); } } - require_once('admin-header.php'); + $title = __('Edit Post'); if ( !current_user_can('edit_post', $post_ID) ) die ( __('You are not allowed to edit this post.') ); @@ -158,13 +195,22 @@ case 'delete': } $sendback = wp_get_referer(); - if (strpos($sendback, 'post.php') !== false) $sendback = admin_url('post-new.php'); + if (strpos($sendback, 'post.php') !== false) $sendback = admin_url('edit.php?deleted=1'); elseif (strpos($sendback, 'attachments.php') !== false) $sendback = admin_url('attachments.php'); - $sendback = preg_replace('|[^a-z0-9-~+_.?#=&;,/:]|i', '', $sendback); + else $sendback = add_query_arg('deleted', 1, $sendback); wp_redirect($sendback); exit(); break; +case 'preview': + check_admin_referer( 'autosave', 'autosavenonce' ); + + $url = post_preview(); + + wp_redirect($url); + exit(); + break; + default: wp_redirect('edit.php'); exit();