Skip to:
Content

bbPress.org


Ignore:
Timestamp:
12/18/2016 04:13:15 PM (10 years ago)
Author:
johnjamesjacoby
Message:

Tools: Update forum/topic/reply admin classes to avoid screens without post_type parameters.

Fixes edge-case debug notices when tools pages for third-party plugins are doing advanced things.

See #2959.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/includes/admin/topics.php

    r6141 r6178  
    2828        private $post_type = '';
    2929
     30        /**
     31         * @var WP_Screen The current screen object
     32         */
     33        private $screen;
     34
    3035        /** Functions *************************************************************/
    3136
     
    108113         */
    109114        private function bail() {
    110                 if ( $this->post_type !== get_current_screen()->post_type ) {
     115
     116                // Not for a post type
     117                if ( empty( $this->screen->post_type ) ) {
    111118                        return true;
    112119                }
    113120
     121                // Not this post type
     122                if ( $this->post_type != $this->screen->post_type ) {
     123                        return true;
     124                }
     125
    114126                return false;
    115127        }
     
    123135         */
    124136        private function setup_globals() {
    125                 $this->post_type = bbp_get_topic_post_type();
     137                $this->post_type = bbp_get_forum_post_type();
     138                $this->screen    = get_current_screen();
    126139        }
    127140
     
    142155
    143156                // Overview
    144                 get_current_screen()->add_help_tab( array(
     157                $this->screen->add_help_tab( array(
    145158                        'id'            => 'overview',
    146159                        'title'         => __( 'Overview', 'bbpress' ),
     
    150163
    151164                // Screen Content
    152                 get_current_screen()->add_help_tab( array(
     165                $this->screen->add_help_tab( array(
    153166                        'id'            => 'screen-content',
    154167                        'title'         => __( 'Screen Content', 'bbpress' ),
     
    164177
    165178                // Available Actions
    166                 get_current_screen()->add_help_tab( array(
     179                $this->screen->add_help_tab( array(
    167180                        'id'            => 'action-links',
    168181                        'title'         => __( 'Available Actions', 'bbpress' ),
     
    182195
    183196                // Bulk Actions
    184                 get_current_screen()->add_help_tab( array(
     197                $this->screen->add_help_tab( array(
    185198                        'id'            => 'bulk-actions',
    186199                        'title'         => __( 'Bulk Actions', 'bbpress' ),
     
    191204
    192205                // Help Sidebar
    193                 get_current_screen()->set_help_sidebar(
     206                $this->screen->set_help_sidebar(
    194207                        '<p><strong>' . __( 'For more information:', 'bbpress' ) . '</strong></p>' .
    195208                        '<p>' . __( '<a href="https://codex.bbpress.org" target="_blank">bbPress Documentation</a>',     'bbpress' ) . '</p>' .
     
    203216         * @since 2.0.0 bbPress (r3119)
    204217         *
    205          * @uses get_current_screen()
     218         * @uses $this->screen
    206219         */
    207220        public function new_help() {
     
    213226                $customize_display = '<p>' . __( 'The title field and the big topic editing Area are fixed in place, but you can reposition all the other boxes using drag and drop, and can minimize or expand them by clicking the title bar of each box. Use the Screen Options tab to unhide more boxes (Excerpt, Send Trackbacks, Custom Fields, Discussion, Slug, Author) or to choose a 1- or 2-column layout for this screen.', 'bbpress' ) . '</p>';
    214227
    215                 get_current_screen()->add_help_tab( array(
     228                $this->screen->add_help_tab( array(
    216229                        'id'      => 'customize-display',
    217230                        'title'   => __( 'Customizing This Display', 'bbpress' ),
     
    219232                ) );
    220233
    221                 get_current_screen()->add_help_tab( array(
     234                $this->screen->add_help_tab( array(
    222235                        'id'      => 'title-topic-editor',
    223236                        'title'   => __( 'Title and Topic Editor', 'bbpress' ),
     
    233246                }
    234247
    235                 get_current_screen()->add_help_tab( array(
     248                $this->screen->add_help_tab( array(
    236249                        'id'      => 'topic-attributes',
    237250                        'title'   => __( 'Topic Attributes', 'bbpress' ),
     
    244257                ) );
    245258
    246                 get_current_screen()->add_help_tab( array(
     259                $this->screen->add_help_tab( array(
    247260                        'id'      => 'publish-box',
    248261                        'title'   => __( 'Publish Box', 'bbpress' ),
     
    250263                ) );
    251264
    252                 get_current_screen()->set_help_sidebar(
     265                $this->screen->set_help_sidebar(
    253266                        '<p><strong>' . __( 'For more information:', 'bbpress' ) . '</strong></p>' .
    254267                        '<p>' . __( '<a href="https://codex.bbpress.org" target="_blank">bbPress Documentation</a>',    'bbpress' ) . '</p>' .
Note: See TracChangeset for help on using the changeset viewer.