Make WordPress Core

Ticket #12208: 12208.diff

File 12208.diff, 5.1 KB (added by nacin, 10 years ago)

Some random hacks I worked on with jhned.

  • src/wp-admin/includes/class-wp-media-list-table.php

     
    77 * @since 3.1.0
    88 * @access private
    99 */
    10 class WP_Media_List_Table extends WP_List_Table {
     10class WP_Media_List_Table extends WP_Posts_List_Table {
    1111
    1212        function __construct( $args = array() ) {
    1313                $this->detached = isset( $_REQUEST['detached'] ) || isset( $_REQUEST['find_detached'] );
     
    174174                );
    175175        }
    176176
    177         function display_rows() {
     177        function display_rows( $posts = array(), $level = 0 ) {
    178178                global $post;
    179179
    180180                add_filter( 'the_title','esc_html' );
     
    398398                $actions = array();
    399399
    400400                if ( $this->detached ) {
    401                         if ( current_user_can( 'edit_post', $post->ID ) )
     401                        if ( current_user_can( 'edit_post', $post->ID ) ) {
    402402                                $actions['edit'] = '<a href="' . get_edit_post_link( $post->ID, true ) . '">' . __( 'Edit' ) . '</a>';
     403                                $actions['inline hide-if-no-js'] = '<a href="#" class="editinline" title="' . esc_attr( __( 'Edit this item inline' ) ) . '">' . __( 'Quick&nbsp;Edit' ) . '</a>';
     404                        }
     405
    403406                        if ( current_user_can( 'delete_post', $post->ID ) )
    404407                                if ( EMPTY_TRASH_DAYS && MEDIA_TRASH ) {
    405408                                        $actions['trash'] = "<a class='submitdelete' href='" . wp_nonce_url( "post.php?action=trash&amp;post=$post->ID", 'trash-post_' . $post->ID ) . "'>" . __( 'Trash' ) . "</a>";
     
    412415                                $actions['attach'] = '<a href="#the-list" onclick="findPosts.open( \'media[]\',\''.$post->ID.'\' );return false;" class="hide-if-no-js">'.__( 'Attach' ).'</a>';
    413416                }
    414417                else {
    415                         if ( current_user_can( 'edit_post', $post->ID ) && !$this->is_trash )
     418                        if ( current_user_can( 'edit_post', $post->ID ) && !$this->is_trash ) {
    416419                                $actions['edit'] = '<a href="' . get_edit_post_link( $post->ID, true ) . '">' . __( 'Edit' ) . '</a>';
     420                                $actions['inline hide-if-no-js'] = '<a href="#" class="editinline" title="' . esc_attr( __( 'Edit this item inline' ) ) . '">' . __( 'Quick&nbsp;Edit' ) . '</a>';
     421                        }
    417422                        if ( current_user_can( 'delete_post', $post->ID ) ) {
    418423                                if ( $this->is_trash )
    419424                                        $actions['untrash'] = "<a class='submitdelete' href='" . wp_nonce_url( "post.php?action=untrash&amp;post=$post->ID", 'untrash-post_' . $post->ID ) . "'>" . __( 'Restore' ) . "</a>";
  • src/wp-admin/includes/class-wp-posts-list-table.php

     
    5454                ) );
    5555
    5656                $post_type = $this->screen->post_type;
    57                 $post_type_object = get_post_type_object( $post_type );
     57                $post_type_object = get_post_type_object( 'attachment' );
    5858
    5959                if ( !current_user_can( $post_type_object->cap->edit_others_posts ) ) {
    6060                        $exclude_states = get_post_stati( array( 'show_in_admin_all_list' => false ) );
     
    8181        function prepare_items() {
    8282                global $avail_post_stati, $wp_query, $per_page, $mode;
    8383
    84                 $avail_post_stati = wp_edit_posts_query();
     84                if ( 'attachment' == $this->screen->post_type ) {
     85                        $avail_post_stati = wp_edit_attachments_query();
     86                } else {
     87                        $avail_post_stati = wp_edit_posts_query();
     88                }
    8589
    8690                $this->hierarchical_display = ( is_post_type_hierarchical( $this->screen->post_type ) && 'menu_order title' == $wp_query->query['orderby'] );
    8791
  • src/wp-admin/includes/list-table.php

     
    2121        $core_classes = array(
    2222                //Site Admin
    2323                'WP_Posts_List_Table' => 'posts',
    24                 'WP_Media_List_Table' => 'media',
     24                'WP_Media_List_Table' => array( 'posts', 'media' ),
    2525                'WP_Terms_List_Table' => 'terms',
    2626                'WP_Users_List_Table' => 'users',
    2727                'WP_Comments_List_Table' => 'comments',
  • src/wp-admin/includes/screen.php

     
    506506
    507507                                $id = 'edit-' . $taxonomy;
    508508                                break;
     509                        case 'upload' :
     510                                $post_type = 'attachment';
     511                                break;
    509512                }
    510513
    511514                if ( 'network' == $in_admin ) {
  • src/wp-admin/upload.php

     
    1212if ( !current_user_can('upload_files') )
    1313        wp_die( __( 'You do not have permission to upload files.' ) );
    1414
    15 $wp_list_table = _get_list_table('WP_Media_List_Table');
     15$post_type_object = get_post_type_object( 'attachment' );
     16
     17$wp_list_table = _get_list_table('WP_Posts_List_Table');
    1618$pagenum = $wp_list_table->get_pagenum();
    1719
     20wp_enqueue_script('inline-edit-post');
     21
    1822// Handle bulk actions
    1923$doaction = $wp_list_table->current_action();
    2024
     
    247251</div>
    248252
    249253<?php
     254if ( $wp_list_table->has_items() )
     255        $wp_list_table->inline_edit();
     256?>
     257
     258<?php
    250259include( ABSPATH . 'wp-admin/admin-footer.php' );