X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/1c09677af04c9e37714e09b73eb9dbc5b2e3eb13..a01a150d87a096c70b6ec80332b7ce89c943eefe:/wp-admin/includes/meta-boxes.php diff --git a/wp-admin/includes/meta-boxes.php b/wp-admin/includes/meta-boxes.php index d5e9cb7e..5358874c 100644 --- a/wp-admin/includes/meta-boxes.php +++ b/wp-admin/includes/meta-boxes.php @@ -13,7 +13,8 @@ function post_submit_meta_box($post) { global $action; $post_type = $post->post_type; - $can_publish = current_user_can("publish_${post_type}s"); + $post_type_object = get_post_type_object($post_type); + $can_publish = current_user_can($post_type_object->cap->publish_posts); ?>
@@ -69,8 +70,12 @@ switch ( $post->post_status ) { _e('Pending Review'); break; case 'draft': + case 'auto-draft': _e('Draft'); break; + case 'auto-draft': + _e('Unsaved'); + break; } ?> @@ -78,7 +83,7 @@ switch ( $post->post_status ) { post_status ) { ?>style="display:none;" class="edit-post-status hide-if-no-js" tabindex='4'>
- + @@ -184,20 +193,18 @@ if ( $can_publish ) : // Contributors don't get to choose the date of publish ?>
ID ) ) { - if ( !EMPTY_TRASH_DAYS ) { - $delete_url = wp_nonce_url( add_query_arg( array('action' => 'delete', 'post' => $post->ID) ), "delete-${post_type}_{$post->ID}" ); +if ( current_user_can( "delete_post", $post->ID ) ) { + if ( !EMPTY_TRASH_DAYS ) $delete_text = __('Delete Permanently'); - } else { - $delete_url = wp_nonce_url( add_query_arg( array('action' => 'trash', 'post' => $post->ID) ), "trash-${post_type}_{$post->ID}" ); + else $delete_text = __('Move to Trash'); - } ?> -" href=""> +
- + post_status, array('publish', 'future', 'private') ) || 0 == $post->ID ) { if ( $can_publish ) : @@ -235,26 +242,38 @@ if ( !in_array( $post->post_status, array('publish', 'future', 'private') ) || 0 * @param object $post */ function post_tags_meta_box($post, $box) { - $tax_name = esc_attr(substr($box['id'], 8)); - $taxonomy = get_taxonomy($tax_name); - $helps = isset($taxonomy->helps) ? esc_attr($taxonomy->helps) : __('Separate tags with commas.'); + $defaults = array('taxonomy' => 'post_tag'); + if ( !isset($box['args']) || !is_array($box['args']) ) + $args = array(); + else + $args = $box['args']; + extract( wp_parse_args($args, $defaults), EXTR_SKIP ); + $tax_name = esc_attr($taxonomy); + $taxonomy = get_taxonomy($taxonomy); + $disabled = !current_user_can($taxonomy->cap->assign_terms) ? 'disabled="disabled"' : ''; ?>
-

-
- +

labels->add_or_remove_items; ?>

+
+ cap->assign_terms) ) : ?>
-
- - -
-

+
labels->add_new_item; ?>
+

+

+
+

labels->separate_items_with_commas ); ?>

+ +
-

+cap->assign_terms) ) : ?> +

labels->choose_from_most_used; ?>

+ +

+ - - - - -
- -
- - -
-

-

- - 0, 'name' => 'newcat_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => __('Parent category') ) ); ?> - - -

-
- 'category'); + if ( !isset($box['args']) || !is_array($box['args']) ) + $args = array(); + else + $args = $box['args']; + extract( wp_parse_args($args, $defaults), EXTR_SKIP ); + $tax = get_taxonomy($taxonomy); + + ?> +
+ + + + +
+ "; // Allows for an empty term set to be sent. 0 is an invalid Term ID and will be ignored by empty() checks. + ?> + +
+ cap->assign_terms) ) : ?> +

+ + cap->edit_terms) ) : ?> +
+

+ + labels->add_new_item ); + ?> + +

+

+ + + + $taxonomy, 'hide_empty' => 0, 'name' => 'new'.$taxonomy.'_parent', 'orderby' => 'name', 'hierarchical' => 1, 'show_option_none' => '— ' . $tax->labels->parent_item . ' —', 'tab_index' => 3 ) ); ?> + + + +

+
+ +
+


()

-

pingbacks, no other action necessary.'); ?>

+

pingbacks, no other action necessary.'); ?>

-
- +
+

- - + -

+

id, true, $post->post_type ); // TODO: ROLE SYSTEM + global $user_ID; + $authors = get_editable_user_ids( get_current_user_id(), true, $post->post_type ); // TODO: ROLE SYSTEM if ( $post->post_author && !in_array($post->post_author, $authors) ) $authors[] = $post->post_author; ?> @@ -474,25 +532,31 @@ function post_revisions_meta_box($post) { * * @param object $post */ -function page_attributes_meta_box($post){ +function page_attributes_meta_box($post) { + $post_type_object = get_post_type_object($post->post_type); + if ( $post_type_object->hierarchical ) { + $pages = wp_dropdown_pages(array('post_type' => $post->post_type, 'exclude_tree' => $post->ID, 'selected' => $post->post_parent, 'name' => 'parent_id', 'show_option_none' => __('(no parent)'), 'sort_column'=> 'menu_order, post_title', 'echo' => 0)); + if ( ! empty($pages) ) { ?> -
- - $post->ID, 'selected' => $post->post_parent, 'name' => 'parent_id', 'show_option_none' => __('Main Page (no parent)'), 'sort_column'=> 'menu_order, post_title')); ?> -

+

+ + -
+ } // end empty pages check + } // end hierarchical check. + if ( 'page' == $post->post_type && 0 != count( get_page_templates() ) ) { + $template = !empty($post->page_template) ? $post->page_template : false; + ?> +

-

-
-

-

+

+

+

post_type ) _e( 'Need help? Use the Help tab in the upper right of your screen.' ); ?>

-