Changeset 16535
- Timestamp:
- 11/22/2010 05:17:26 PM (13 years ago)
- Location:
- trunk
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/includes/media.php
r16476 r16535 348 348 </html> 349 349 <?php 350 } 351 352 /** 353 * {@internal Missing Short Description}} 354 * 355 * @since unknown 356 */ 357 function media_buttons() { 358 $do_image = $do_audio = $do_video = true; 359 if ( is_multisite() ) { 360 $media_buttons = get_site_option( 'mu_media_buttons' ); 361 if ( empty($media_buttons['image']) ) 362 $do_image = false; 363 if ( empty($media_buttons['audio']) ) 364 $do_audio = false; 365 if ( empty($media_buttons['video']) ) 366 $do_video = false; 367 } 368 $out = ''; 369 370 if ( $do_image ) 371 $out .= _media_button(__('Add an Image'), 'images/media-button-image.gif?ver=20100531', 'image'); 372 if ( $do_video ) 373 $out .= _media_button(__('Add Video'), 'images/media-button-video.gif?ver=20100531', 'video'); 374 if ( $do_audio ) 375 $out .= _media_button(__('Add Audio'), 'images/media-button-music.gif?ver=20100531', 'audio'); 376 377 $out .= _media_button(__('Add Media'), 'images/media-button-other.gif?ver=20100531', 'media'); 378 379 $context = apply_filters('media_buttons_context', __('Upload/Insert %s')); 380 381 printf($context, $out); 382 } 383 add_action( 'media_buttons', 'media_buttons' ); 384 385 function _media_button($title, $icon, $type) { 386 return "<a href='" . esc_url( get_upload_iframe_src($type) ) . "' id='add_$type' class='thickbox' title='$title'><img src='" . esc_url( admin_url( $icon ) ) . "' alt='$title' /></a>"; 387 } 388 389 function get_upload_iframe_src($type) { 390 global $post_ID, $temp_ID; 391 $uploading_iframe_ID = (int) (0 == $post_ID ? $temp_ID : $post_ID); 392 $upload_iframe_src = add_query_arg('post_id', $uploading_iframe_ID, 'media-upload.php'); 393 394 if ( 'media' != $type ) 395 $upload_iframe_src = add_query_arg('type', $type, $upload_iframe_src); 396 $upload_iframe_src = apply_filters($type . '_upload_iframe_src', $upload_iframe_src); 397 398 return add_query_arg('TB_iframe', true, $upload_iframe_src); 350 399 } 351 400 -
trunk/wp-admin/includes/post.php
r16459 r16535 362 362 } 363 363 364 364 /** 365 * Default post information to use when populating the "Write Post" form. 366 * 367 * @since unknown 368 * 369 * @param string $post_type A post type string, defaults to 'post'. 370 * @return object stdClass object containing all the default post data as attributes 371 */ 372 function get_default_post_to_edit( $post_type = 'post', $create_in_db = false ) { 373 global $wpdb; 374 375 $post_title = ''; 376 if ( !empty( $_REQUEST['post_title'] ) ) 377 $post_title = esc_html( stripslashes( $_REQUEST['post_title'] )); 378 379 $post_content = ''; 380 if ( !empty( $_REQUEST['content'] ) ) 381 $post_content = esc_html( stripslashes( $_REQUEST['content'] )); 382 383 $post_excerpt = ''; 384 if ( !empty( $_REQUEST['excerpt'] ) ) 385 $post_excerpt = esc_html( stripslashes( $_REQUEST['excerpt'] )); 386 387 if ( $create_in_db ) { 388 // Cleanup old auto-drafts more than 7 days old 389 $old_posts = $wpdb->get_col( "SELECT ID FROM $wpdb->posts WHERE post_status = 'auto-draft' AND DATE_SUB( NOW(), INTERVAL 7 DAY ) > post_date" ); 390 foreach ( (array) $old_posts as $delete ) 391 wp_delete_post( $delete, true ); // Force delete 392 $post_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $post_type, 'post_status' => 'auto-draft' ) ); 393 $post = get_post( $post_id ); 394 } else { 395 $post->ID = 0; 396 $post->post_author = ''; 397 $post->post_date = ''; 398 $post->post_date_gmt = ''; 399 $post->post_password = ''; 400 $post->post_type = $post_type; 401 $post->post_status = 'draft'; 402 $post->to_ping = ''; 403 $post->pinged = ''; 404 $post->comment_status = get_option( 'default_comment_status' ); 405 $post->ping_status = get_option( 'default_ping_status' ); 406 $post->post_pingback = get_option( 'default_pingback_flag' ); 407 $post->post_category = get_option( 'default_category' ); 408 $post->page_template = 'default'; 409 $post->post_parent = 0; 410 $post->menu_order = 0; 411 } 412 413 $post->post_content = apply_filters( 'default_content', $post_content, $post ); 414 $post->post_title = apply_filters( 'default_title', $post_title, $post ); 415 $post->post_excerpt = apply_filters( 'default_excerpt', $post_excerpt, $post ); 416 $post->post_name = ''; 417 418 return $post; 419 } 365 420 366 421 /** -
trunk/wp-admin/includes/taxonomy.php
r15690 r16535 200 200 * @since unknown 201 201 * 202 * @param unknown_type $post_id 203 * @return unknown 204 */ 205 function get_tags_to_edit( $post_id, $taxonomy = 'post_tag' ) { 206 return get_terms_to_edit( $post_id, $taxonomy); 207 } 208 209 /** 210 * {@internal Missing Short Description}} 211 * 212 * @since unknown 213 * 214 * @param unknown_type $post_id 215 * @return unknown 216 */ 217 function get_terms_to_edit( $post_id, $taxonomy = 'post_tag' ) { 218 $post_id = (int) $post_id; 219 if ( !$post_id ) 220 return false; 221 222 $tags = wp_get_post_terms($post_id, $taxonomy, array()); 223 224 if ( !$tags ) 225 return false; 226 227 if ( is_wp_error($tags) ) 228 return $tags; 229 230 foreach ( $tags as $tag ) 231 $tag_names[] = $tag->name; 232 $tags_to_edit = join( ',', $tag_names ); 233 $tags_to_edit = esc_attr( $tags_to_edit ); 234 $tags_to_edit = apply_filters( 'terms_to_edit', $tags_to_edit, $taxonomy ); 235 236 return $tags_to_edit; 237 } 238 239 /** 240 * {@internal Missing Short Description}} 241 * 242 * @since unknown 243 * 202 244 * @param unknown_type $tag_name 203 245 * @return unknown -
trunk/wp-includes/media.php
r16358 r16535 1398 1398 $oembed->providers[$format] = array( $provider, $regex ); 1399 1399 } 1400 1401 /**1402 * Generate HTML for the editor media buttons (image, video, audio).1403 *1404 * @since 3.1.01405 *1406 * @return string HTML1407 */1408 function get_media_buttons() {1409 $do_image = $do_audio = $do_video = true;1410 if ( is_multisite() ) {1411 $media_buttons = get_site_option( 'mu_media_buttons' );1412 if ( empty( $media_buttons['image'] ) )1413 $do_image = false;1414 if ( empty( $media_buttons['audio'] ) )1415 $do_audio = false;1416 if ( empty( $media_buttons['video'] ) )1417 $do_video = false;1418 }1419 $out = '';1420 1421 if ( $do_image )1422 $out .= _media_button( __( 'Add an Image' ), 'images/media-button-image.gif?ver=20100531', 'image' );1423 if ( $do_video )1424 $out .= _media_button( __( 'Add Video' ), 'images/media-button-video.gif?ver=20100531', 'video' );1425 if ( $do_audio )1426 $out .= _media_button( __( 'Add Audio' ), 'images/media-button-music.gif?ver=20100531', 'audio' );1427 1428 $out .= _media_button( __( 'Add Media' ), 'images/media-button-other.gif?ver=20100531', 'media' );1429 1430 $context = apply_filters( 'media_buttons_context', __( 'Upload/Insert: %s' ) );1431 1432 return sprintf($context, $out);1433 1434 1435 }1436 1437 /**1438 * {@internal Missing Short Description}}1439 *1440 * @since unknown1441 */1442 function media_buttons() {1443 echo get_media_buttons();1444 }1445 add_action( 'media_buttons', 'media_buttons' );1446 1447 /**1448 * {@internal Missing Short Description}}1449 *1450 * @since unknown1451 * @access private1452 */1453 function _media_button( $title, $icon, $type ) {1454 return "<a href='" . esc_url( get_upload_iframe_src( $type ) ) . "' id='add_$type' class='thickbox' title='$title'><img src='" . esc_url( admin_url( $icon ) ) . "' alt='$title' /></a>";1455 }1456 1457 /**1458 * {@internal Missing Short Description}}1459 *1460 * @since unknown1461 */1462 function get_upload_iframe_src( $type ) {1463 global $post_ID, $temp_ID;1464 $uploading_iframe_ID = (int) ( 0 == $post_ID ? $temp_ID : $post_ID );1465 $upload_iframe_src = add_query_arg( 'post_id', $uploading_iframe_ID, 'media-upload.php' );1466 1467 if ( 'media' != $type )1468 $upload_iframe_src = add_query_arg( 'type', $type, $upload_iframe_src );1469 $upload_iframe_src = apply_filters( $type . '_upload_iframe_src', $upload_iframe_src );1470 1471 return add_query_arg( 'TB_iframe', true, $upload_iframe_src );1472 } -
trunk/wp-includes/post.php
r16534 r16535 2318 2318 $post = get_post($postid, $mode); 2319 2319 2320 if ( 2320 if ( 2321 2321 ( OBJECT == $mode && empty( $post->ID ) ) || 2322 2322 ( OBJECT != $mode && empty( $post['ID'] ) ) … … 5039 5039 5040 5040 /** 5041 * Default post information to use when populating the "Write Post" form.5042 *5043 * @since 2.0.05044 *5045 * @param string $post_type A post type string, defaults to 'post'.5046 * @param bool $create_in_db If true then also insert an auto-draft into database5047 * @return object stdClass object containing all the default post data as attributes5048 */5049 function get_default_post_to_edit( $post_type = 'post', $create_in_db = false ) {5050 global $wpdb;5051 5052 $post_title = '';5053 if ( !empty( $_REQUEST['post_title'] ) )5054 $post_title = esc_html( stripslashes( $_REQUEST['post_title'] ));5055 5056 $post_content = '';5057 if ( !empty( $_REQUEST['content'] ) )5058 $post_content = esc_html( stripslashes( $_REQUEST['content'] ));5059 5060 $post_excerpt = '';5061 if ( !empty( $_REQUEST['excerpt'] ) )5062 $post_excerpt = esc_html( stripslashes( $_REQUEST['excerpt'] ));5063 5064 if ( $create_in_db ) {5065 // Cleanup old auto-drafts more than 7 days old5066 $old_posts = $wpdb->get_col( "SELECT ID FROM $wpdb->posts WHERE post_status = 'auto-draft' AND DATE_SUB( NOW(), INTERVAL 7 DAY ) > post_date" );5067 foreach ( (array) $old_posts as $delete )5068 wp_delete_post( $delete, true ); // Force delete5069 $post_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $post_type, 'post_status' => 'auto-draft' ) );5070 $post = get_post( $post_id );5071 } else {5072 $post->ID = 0;5073 $post->post_author = '';5074 $post->post_date = '';5075 $post->post_date_gmt = '';5076 $post->post_password = '';5077 $post->post_type = $post_type;5078 $post->post_status = 'draft';5079 $post->to_ping = '';5080 $post->pinged = '';5081 $post->comment_status = get_option( 'default_comment_status' );5082 $post->ping_status = get_option( 'default_ping_status' );5083 $post->post_pingback = get_option( 'default_pingback_flag' );5084 $post->post_category = get_option( 'default_category' );5085 $post->page_template = 'default';5086 $post->post_parent = 0;5087 $post->menu_order = 0;5088 }5089 5090 $post->post_content = apply_filters( 'default_content', $post_content, $post );5091 $post->post_title = apply_filters( 'default_title', $post_title, $post );5092 $post->post_excerpt = apply_filters( 'default_excerpt', $post_excerpt, $post );5093 $post->post_name = '';5094 5095 return $post;5096 }5097 5098 /**5099 * Returns or echos a form containing a post box.5100 *5101 * Used for the QuickPress dashboard module.5102 *5103 * @since 3.1.05104 *5105 * @param array $args Arguments.5106 * @param string $post_type Post type.5107 */5108 function wp_quickpress_form( $args = array(), $post_type = 'post'){5109 global $post_ID;5110 5111 $fields = array(5112 'title' => array(5113 'capability' => '', // Capability to check before outputing field5114 'output' => '<h4 id="%s-title"><label for="title">'. __('Title') .'</label></h4>5115 <div class="input-text-wrap">5116 <input type="text" name="post_title" id="%s-title" tabindex="%d" autocomplete="off" value="'. esc_attr( $post->post_title ).'" />5117 </div>'5118 ),5119 'media_buttons' => array(5120 'capability' => 'upload_files',5121 'output' => '<div id="%s-media-buttons" class="hide-if-no-js">'. get_media_buttons() .'</div>',5122 ),5123 'content' => array(5124 'capability' => '',5125 'output' => '<h4 id="%s-content-label"><label for="content">'. __('Content') .'</label></h4>5126 <div class="textarea-wrap">5127 <textarea name="content" id="%s-content" class="mceEditor" rows="3" cols="15" tabindex="%d">'. esc_textarea( $post->post_content ) .'</textarea>5128 </div>5129 '." <script type='text/javascript'>edCanvas = document.getElementById('content');edInsertContent = null;</script>5130 "5131 5132 ),5133 'tags' => array(5134 'capability' =>'',5135 'output' => '5136 <h4><label for="%s-tags-input">'. __('Tags') .'</label></h4>5137 <div class="input-text-wrap">5138 <input type="text" name="%s-tags_input" id="tags-input" tabindex="%d" value="'. get_tags_to_edit( $post->ID ) .'" />5139 </div>5140 '5141 ),5142 5143 );5144 5145 $hidden_fields = array(5146 'action' => '<input type="hidden" name="action" id="quickpost-action" value="'.$post_type.'-quickpress-save" />',5147 'post_id' => '<input type="hidden" name="quickpress_post_ID" value="'. $post_ID .'" />',5148 'post_type' => '<input type="hidden" name="post_type" value="'.$post_type.'" />',5149 );5150 5151 $submit_fields = array(5152 'save' => '<input type="submit" name="save" id="save-post" class="button" tabindex="%s" value="'. esc_attr('Save Draft') .'" />',5153 'reset' => '<input type="reset" tabindex="%s" value="'. esc_attr( 'Reset' ).'" class="button" />',5154 );5155 5156 $publishing_action = current_user_can('publish_posts') ? esc_attr('Publish') : esc_attr('Submit for Review');5157 5158 $publishing_fields = array(5159 'submit' => '<input type="submit" name="publish" id="publish" accesskey="p" tabindex="%s" class="button-primary" value="' . $publishing_action . '" />',5160 /*'test' => '<input type="submit" name="publish" id="publish" accesskey="p" tabindex="%n" class="button-primary" value="'. esc_attr('Publish') .'" />', */5161 5162 );5163 5164 $defaults = array(5165 'action' => admin_url( 'post.php' ),5166 'fields' => $fields,5167 'form_id' => '',5168 'default_cap' => 'edit_posts',5169 'tabindex_start' => '1',5170 'ajax' => true,5171 'hidden_fields' => $hidden_fields,5172 'submit_fields' => $submit_fields,5173 'publishing_fields' => $publishing_fields,5174 'submit_class' => 'submit',5175 'publish_action_container' => 'span',5176 'publish_action_id' => 'publishing-action',5177 'hidden_and_submit_fields_container' => 'p',5178 'hidden_and_submit_fields_container_class' => 'submit',5179 );5180 5181 $args = wp_parse_args($args, $defaults);5182 5183 $tabindex = apply_filters( 'quickpress_tabindex_start', $args['tabindex_start'], $args['form_id'] );5184 5185 if ( current_user_can( $args['default_cap'] ) ): ?>5186 <?php do_action('quickpress_form_before_form', $args['form_id'] ); ?>5187 <form name="post" action="<?php echo $args['action'] ?>" method="post" id="<?php echo $args['form_id']; ?>">5188 <?php do_action('quickpress_form_before_fields', $args['form_id']);5189 5190 $fields = apply_filters( 'quickpress_fields', $args['fields'], $args['form_id'] );5191 foreach ($fields as $title => $field){5192 if ( empty( $field['capability'] ) || current_user_can( $field['capability'] ) ){5193 printf( $field['output'], $args['form_id'], $args['form_id'], $tabindex );5194 $tabindex++;5195 }5196 }5197 //Hidden Fields5198 do_action('quickpress_form_after_fields', $args['form_id'] );5199 5200 echo "<{$args['hidden_and_submit_fields_container']} class='{$args['hidden_and_submit_fields_container_class']}'>";5201 5202 $hidden_fields = apply_filters( 'quickpress_hidden_fields', $args['hidden_fields'] , $args['form_id'] );5203 5204 foreach( $hidden_fields as $hidden_field )5205 echo $hidden_field;5206 5207 // nonce5208 wp_nonce_field('add-post');5209 5210 // submit5211 foreach( $args['submit_fields'] as $submit_field )5212 printf( $submit_field, $tabindex++ );5213 5214 // publish5215 echo "<{$args['publish_action_container']} id='{$args['publish_action_id']}'>";5216 5217 $publishing_fields = apply_filters( 'quickpress_publishing_fields', $args['publishing_fields'] , $args['form_id'] );5218 5219 foreach( $publishing_fields as $publishing_field) {5220 printf( $publishing_field, $tabindex );5221 $tabindex++;5222 }5223 5224 if ($args['ajax'] == true)5225 echo '<img class="waiting" src="'. esc_url( admin_url( 'images/wpspin_light.gif' ) ) .'" />';5226 5227 echo "</{$args['publish_action_container']}>";5228 echo "<br class='clear' />";5229 do_action( 'quickpress_form_after_submit_fields', $args['form_id']);5230 5231 echo "</{$args['hidden_and_submit_fields_container']}";5232 do_action( 'quickpress_form_after_form_content', $args['form_id']);5233 echo '</form>';5234 do_action('quickpress_form_after_form', $args['form_id'] );5235 else:5236 do_action( 'quickpress_form_no_form', $args['form_id'] );5237 endif;5238 }5239 5240 /**5241 5041 * Returns an array of post format slugs to their translated and pretty display versions 5242 5042 * -
trunk/wp-includes/taxonomy.php
r16523 r16535 2947 2947 } 2948 2948 2949 2950 /**2951 * {@internal Missing Short Description}}2952 *2953 * @since unknown2954 *2955 * @param unknown_type $post_id2956 * @return unknown2957 */2958 function get_tags_to_edit( $post_id, $taxonomy = 'post_tag' ) {2959 return get_terms_to_edit( $post_id, $taxonomy);2960 }2961 2962 /**2963 * {@internal Missing Short Description}}2964 *2965 * @since unknown2966 *2967 * @param unknown_type $post_id2968 * @return unknown2969 */2970 function get_terms_to_edit( $post_id, $taxonomy = 'post_tag' ) {2971 $post_id = (int) $post_id;2972 if ( !$post_id )2973 return false;2974 2975 $tags = wp_get_post_terms($post_id, $taxonomy, array());2976 2977 if ( !$tags )2978 return false;2979 2980 if ( is_wp_error($tags) )2981 return $tags;2982 2983 foreach ( $tags as $tag )2984 $tag_names[] = $tag->name;2985 $tags_to_edit = join( ',', $tag_names );2986 $tags_to_edit = esc_attr( $tags_to_edit );2987 $tags_to_edit = apply_filters( 'terms_to_edit', $tags_to_edit, $taxonomy );2988 2989 return $tags_to_edit;2990 }2991 2992 2949 /** 2993 2950 * Returns the term's parent's term_ID
Note: See TracChangeset
for help on using the changeset viewer.