X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/38ca813a0e312e2768e5b9519f0415cd0aa84781..refs/tags/wordpress-3.4:/wp-admin/press-this.php diff --git a/wp-admin/press-this.php b/wp-admin/press-this.php index 70f1808a..facae8a8 100644 --- a/wp-admin/press-this.php +++ b/wp-admin/press-this.php @@ -26,19 +26,17 @@ if ( ! current_user_can('edit_posts') ) * @return int Post ID */ function press_it() { - // define some basic variables - $quick = array(); - $quick['post_status'] = 'draft'; // set as draft first - $quick['post_category'] = isset($_POST['post_category']) ? $_POST['post_category'] : null; - $quick['tax_input'] = isset($_POST['tax_input']) ? $_POST['tax_input'] : null; - $quick['post_title'] = ( trim($_POST['title']) != '' ) ? $_POST['title'] : ' '; - $quick['post_content'] = isset($_POST['post_content']) ? $_POST['post_content'] : ''; - - // insert the post with nothing in it, to get an ID - $post_ID = wp_insert_post($quick, true); - if ( is_wp_error($post_ID) ) - wp_die($post_ID); + $post = get_default_post_to_edit(); + $post = get_object_vars($post); + $post_ID = $post['ID'] = (int) $_POST['post_id']; + + if ( !current_user_can('edit_post', $post_ID) ) + wp_die(__('You are not allowed to edit this post.')); + + $post['post_category'] = isset($_POST['post_category']) ? $_POST['post_category'] : ''; + $post['tax_input'] = isset($_POST['tax_input']) ? $_POST['tax_input'] : ''; + $post['post_title'] = isset($_POST['title']) ? $_POST['title'] : ''; $content = isset($_POST['content']) ? $_POST['content'] : ''; $upload = false; @@ -56,43 +54,40 @@ function press_it() { } } // set the post_content and status + $post['post_content'] = $content; if ( isset( $_POST['publish'] ) && current_user_can( 'publish_posts' ) ) - $quick['post_status'] = 'publish'; + $post['post_status'] = 'publish'; elseif ( isset( $_POST['review'] ) ) - $quick['post_status'] = 'pending'; + $post['post_status'] = 'pending'; else - $quick['post_status'] = 'draft'; - $quick['post_content'] = $content; + $post['post_status'] = 'draft'; + // error handling for media_sideload if ( is_wp_error($upload) ) { wp_delete_post($post_ID); wp_die($upload); } else { // Post formats - if ( current_theme_supports( 'post-formats' ) && isset( $_POST['post_format'] ) ) { - $post_formats = get_theme_support( 'post-formats' ); - if ( is_array( $post_formats ) ) { - $post_formats = $post_formats[0]; - if ( in_array( $_POST['post_format'], $post_formats ) ) - set_post_format( $post_ID, $_POST['post_format'] ); - elseif ( '0' == $_POST['post_format'] ) - set_post_format( $post_ID, false ); - } + if ( isset( $_POST['post_format'] ) ) { + if ( current_theme_supports( 'post-formats', $_POST['post_format'] ) ) + set_post_format( $post_ID, $_POST['post_format'] ); + elseif ( '0' == $_POST['post_format'] ) + set_post_format( $post_ID, false ); } - $quick['ID'] = $post_ID; - wp_update_post($quick); + $post_ID = wp_update_post($post); } + return $post_ID; } // For submitted posts. if ( isset($_REQUEST['action']) && 'post' == $_REQUEST['action'] ) { check_admin_referer('press-this'); - $post_ID = press_it(); - $posted = $post_ID; + $posted = $post_ID = press_it(); } else { - $post_ID = 0; + $post = get_default_post_to_edit('post', true); + $post_ID = $post->ID; } // Set Variables @@ -144,19 +139,19 @@ if ( !empty($_REQUEST['ajax']) ) { tb_remove(); }); jQuery('.select').click(function() { - image_selector(); + image_selector(this); }); /* ]]> */ -

+

- +

- + <?php echo esc_attr(__('Click to insert.')); ?> @@ -164,34 +159,6 @@ if ( !empty($_REQUEST['ajax']) ) {

- -

-
-
- -
-
-

-
-
- -
-
- -

|

-

()

'); - jQuery('#img_container').html(strtoappend); + + jQuery('#extra-fields').html('

()

'); + jQuery('#img_container').html(strtoappend); - - > - - - <?php _e('Press This') ?> - - +<?php _e('Press This') ?> @@ -348,13 +315,18 @@ var photostorage = false; do_action('admin_head'); ?> - '370' ) ); -} +$admin_body_class = ( is_rtl() ) ? 'rtl' : ''; +$admin_body_class .= ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_locale() ) ) ); ?> +
-
+
+
-

+

@@ -502,7 +477,7 @@ if ( user_can_richedit() ) {

@@ -564,20 +539,18 @@ if ( user_can_richedit() ) {
-
-
-
-

+

+

-

- +

+
-

+
@@ -596,8 +569,15 @@ if ( user_can_richedit() ) {
- -

| |

+ +
+

+ + | + |

+
@@ -606,47 +586,69 @@ if ( user_can_richedit() ) {
+ +
-
- - - -
- - -
- - -<?php _e('Insert an Image'); ?><?php _e('Embed a Video'); ?> -
-
-
-
- -
+ $editor_settings = array( + 'teeny' => true, + 'textarea_rows' => '15' + ); + + $content = ''; + if ( $selection ) + $content .= $selection; + + if ( $url ) { + $content .= '

'; + + if ( $selection ) + $content .= __('via '); + + $content .= sprintf( "%s.

", esc_url( $url ), esc_html( $title ) ); + } + + remove_action( 'media_buttons', 'media_buttons' ); + add_action( 'media_buttons', 'press_this_media_buttons' ); + function press_this_media_buttons() { + _e( 'Add:' ); + + if ( current_user_can('upload_files') ) { + ?> + + <?php esc_attr_e('Insert an Image'); ?> + + <?php esc_attr_e('Embed a Video'); ?> +
- + +