]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-admin/includes/class-wp-posts-list-table.php
WordPress 4.1.2
[autoinstalls/wordpress.git] / wp-admin / includes / class-wp-posts-list-table.php
index 5914aea92e6f7128b51ee79441475623a8c909fb..76aa1e5b0b0e62d1bd92d449ac7eb4dbf739f276 100644 (file)
@@ -198,20 +198,29 @@ class WP_Posts_List_Table extends WP_List_Table {
 
        protected function get_bulk_actions() {
                $actions = array();
+               $post_type_obj = get_post_type_object( $this->screen->post_type );
 
-               if ( $this->is_trash )
+               if ( $this->is_trash ) {
                        $actions['untrash'] = __( 'Restore' );
-               else
+               } else {
                        $actions['edit'] = __( 'Edit' );
+               }
 
-               if ( $this->is_trash || !EMPTY_TRASH_DAYS )
-                       $actions['delete'] = __( 'Delete Permanently' );
-               else
-                       $actions['trash'] = __( 'Move to Trash' );
+               if ( current_user_can( $post_type_obj->cap->delete_posts ) ) {
+                       if ( $this->is_trash || ! EMPTY_TRASH_DAYS ) {
+                               $actions['delete'] = __( 'Delete Permanently' );
+                       } else {
+                               $actions['trash'] = __( 'Move to Trash' );
+                       }
+               }
 
                return $actions;
        }
 
+       /**
+        * @global int $cat
+        * @param string $which
+        */
        protected function extra_tablenav( $which ) {
                global $cat;
 ?>
@@ -223,13 +232,15 @@ class WP_Posts_List_Table extends WP_List_Table {
 
                        if ( is_object_in_taxonomy( $this->screen->post_type, 'category' ) ) {
                                $dropdown_options = array(
-                                       'show_option_all' => __( 'View all categories' ),
+                                       'show_option_all' => __( 'All categories' ),
                                        'hide_empty' => 0,
                                        'hierarchical' => 1,
                                        'show_count' => 0,
                                        'orderby' => 'name',
                                        'selected' => $cat
                                );
+
+                               echo '<label class="screen-reader-text" for="cat">' . __( 'Filter by category' ) . '</label>';
                                wp_dropdown_categories( $dropdown_options );
                        }
 
@@ -261,6 +272,10 @@ class WP_Posts_List_Table extends WP_List_Table {
                return parent::current_action();
        }
 
+       /**
+        * @global string $mode
+        * @param string $which
+        */
        protected function pagination( $which ) {
                global $mode;
 
@@ -294,7 +309,7 @@ class WP_Posts_List_Table extends WP_List_Table {
                /**
                 * Filter the taxonomy columns in the Posts list table.
                 *
-                * The dynamic portion of the hook name, $post_type, refers to the post
+                * The dynamic portion of the hook name, `$post_type`, refers to the post
                 * type slug.
                 *
                 * @since 3.5.0
@@ -348,7 +363,7 @@ class WP_Posts_List_Table extends WP_List_Table {
                /**
                 * Filter the columns displayed in the Posts list table for a specific post type.
                 *
-                * The dynamic portion of the hook name, $post_type, refers to the post type slug.
+                * The dynamic portion of the hook name, `$post_type`, refers to the post type slug.
                 *
                 * @since 3.0.0
                 *
@@ -368,6 +383,12 @@ class WP_Posts_List_Table extends WP_List_Table {
                );
        }
 
+       /**
+        * @global WP_Query $wp_query
+        * @global int $per_page
+        * @param array $posts
+        * @param int $level
+        */
        public function display_rows( $posts = array(), $level = 0 ) {
                global $wp_query, $per_page;
 
@@ -383,6 +404,11 @@ class WP_Posts_List_Table extends WP_List_Table {
                }
        }
 
+       /**
+        * @global string $mode
+        * @param array $posts
+        * @param int $level
+        */
        private function _display_rows( $posts, $level = 0 ) {
                global $mode;
 
@@ -398,6 +424,13 @@ class WP_Posts_List_Table extends WP_List_Table {
                        $this->single_row( $post, $level );
        }
 
+       /**
+        * @global wpdb $wpdb
+        * @param array $pages
+        * @param int $pagenum
+        * @param int $per_page
+        * @return bool|null
+        */
        private function _display_rows_hierarchical( $pages, $pagenum = 1, $per_page = 20 ) {
                global $wpdb;
 
@@ -535,6 +568,12 @@ class WP_Posts_List_Table extends WP_List_Table {
                unset( $children_pages[$parent] ); //required in order to keep track of orphans
        }
 
+       /**
+        * @global string $mode
+        * @staticvar string $alternate
+        * @param WP_Post $post
+        * @param int $level
+        */
        public function single_row( $post, $level = 0 ) {
                global $mode;
                static $alternate;
@@ -657,16 +696,16 @@ class WP_Posts_List_Table extends WP_List_Table {
 
                                $actions = array();
                                if ( $can_edit_post && 'trash' != $post->post_status ) {
-                                       $actions['edit'] = '<a href="' . get_edit_post_link( $post->ID, true ) . '" title="' . esc_attr( __( 'Edit this item' ) ) . '">' . __( 'Edit' ) . '</a>';
-                                       $actions['inline hide-if-no-js'] = '<a href="#" class="editinline" title="' . esc_attr( __( 'Edit this item inline' ) ) . '">' . __( 'Quick&nbsp;Edit' ) . '</a>';
+                                       $actions['edit'] = '<a href="' . get_edit_post_link( $post->ID, true ) . '" title="' . esc_attr__( 'Edit this item' ) . '">' . __( 'Edit' ) . '</a>';
+                                       $actions['inline hide-if-no-js'] = '<a href="#" class="editinline" title="' . esc_attr__( 'Edit this item inline' ) . '">' . __( 'Quick&nbsp;Edit' ) . '</a>';
                                }
                                if ( current_user_can( 'delete_post', $post->ID ) ) {
                                        if ( 'trash' == $post->post_status )
-                                               $actions['untrash'] = "<a title='" . esc_attr( __( 'Restore this item from the Trash' ) ) . "' href='" . wp_nonce_url( admin_url( sprintf( $post_type_object->_edit_link . '&amp;action=untrash', $post->ID ) ), 'untrash-post_' . $post->ID ) . "'>" . __( 'Restore' ) . "</a>";
+                                               $actions['untrash'] = "<a title='" . esc_attr__( 'Restore this item from the Trash' ) . "' href='" . wp_nonce_url( admin_url( sprintf( $post_type_object->_edit_link . '&amp;action=untrash', $post->ID ) ), 'untrash-post_' . $post->ID ) . "'>" . __( 'Restore' ) . "</a>";
                                        elseif ( EMPTY_TRASH_DAYS )
-                                               $actions['trash'] = "<a class='submitdelete' title='" . esc_attr( __( 'Move this item to the Trash' ) ) . "' href='" . get_delete_post_link( $post->ID ) . "'>" . __( 'Trash' ) . "</a>";
+                                               $actions['trash'] = "<a class='submitdelete' title='" . esc_attr__( 'Move this item to the Trash' ) . "' href='" . get_delete_post_link( $post->ID ) . "'>" . __( 'Trash' ) . "</a>";
                                        if ( 'trash' == $post->post_status || !EMPTY_TRASH_DAYS )
-                                               $actions['delete'] = "<a class='submitdelete' title='" . esc_attr( __( 'Delete this item permanently' ) ) . "' href='" . get_delete_post_link( $post->ID, '', true ) . "'>" . __( 'Delete Permanently' ) . "</a>";
+                                               $actions['delete'] = "<a class='submitdelete' title='" . esc_attr__( 'Delete this item permanently' ) . "' href='" . get_delete_post_link( $post->ID, '', true ) . "'>" . __( 'Delete Permanently' ) . "</a>";
                                }
                                if ( $post_type_object->public ) {
                                        if ( in_array( $post->post_status, array( 'pending', 'draft', 'future' ) ) ) {
@@ -870,7 +909,7 @@ class WP_Posts_List_Table extends WP_List_Table {
                                /**
                                 * Fires for each custom column of a specific post type in the Posts list table.
                                 *
-                                * The dynamic portion of the hook name, $post->post_type, refers to the post type.
+                                * The dynamic portion of the hook name, `$post->post_type`, refers to the post type.
                                 *
                                 * @since 3.1.0
                                 *
@@ -1097,7 +1136,11 @@ class WP_Posts_List_Table extends WP_List_Table {
        <?php   if ( $bulk ) : ?>
                                        <option value="-1"><?php _e( '&mdash; No Change &mdash;' ); ?></option>
        <?php   endif; // $bulk ?>
-                                       <option value="default"><?php _e( 'Default Template' ); ?></option>
+                               <?php
+                                       /** This filter is documented in wp-admin/includes/meta-boxes.php */
+                                       $default_title = apply_filters( 'default_page_template_title',  __( 'Default Template' ), 'quick-edit' );
+                               ?>
+                                       <option value="default"><?php echo esc_html( $default_title ); ?></option>
                                        <?php page_template_dropdown() ?>
                                </select>
                        </label>