WordPress.org

Make WordPress Core

Ticket #19320: 19320.diff

File 19320.diff, 24.5 KB (added by nacin, 6 years ago)
  • wp-includes/js/tinymce/langs/wp-langs.php

     
    11<?php
    22
    3 // escape text only if it needs translating
    43function mce_escape($text) {
    5         global $wp_editor;
    6 
    7         if ( 'en' == $wp_editor->mce_locale )
    8                 return $text;
    9         else
    10                 return esc_js($text);
     4        return esc_js($text);
    115}
    126
    13 $lang = 'tinyMCE.addI18n({' . $this->mce_locale . ':{
     7if ( ! class_exists( '_WP_Editors' ) )
     8        require( ABSPATH . WPINC . '/class-wp-editor.php' );
     9
     10$lang = 'tinyMCE.addI18n({' . _WP_Editors::$mce_locale . ':{
    1411common:{
    1512edit_confirm:"' . mce_escape( __('Do you want to use the WYSIWYG mode for this textarea?') ) . '",
    1613apply:"' . mce_escape( __('Apply') ) . '",
     
    232229}
    233230}});
    234231
    235 tinyMCE.addI18n("' . $this->mce_locale . '.advanced",{
     232tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.advanced",{
    236233style_select:"' . mce_escape( /* translators: TinyMCE font styles */ _x('Styles', 'TinyMCE font styles') ) . '",
    237234font_size:"' . mce_escape( __('Font size') ) . '",
    238235fontdefault:"' . mce_escape( __('Font family') ) . '",
     
    298295toolbar:"' . mce_escape( __('Toolbar') ) . '"
    299296});
    300297
    301 tinyMCE.addI18n("' . $this->mce_locale . '.advanced_dlg",{
     298tinyMCE.addI18n("' . _WP_Editors::mce_locale . '.advanced_dlg",{
    302299about_title:"' . mce_escape( __('About TinyMCE') ) . '",
    303300about_general:"' . mce_escape( __('About') ) . '",
    304301about_help:"' . mce_escape( __('Help') ) . '",
     
    352349accessibility_usage_title:"' . mce_escape( __('General Usage') ) . '"
    353350});
    354351
    355 tinyMCE.addI18n("' . $this->mce_locale . '.media_dlg",{
     352tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.media_dlg",{
    356353title:"' . mce_escape( __('Insert / edit embedded media') ) . '",
    357354general:"' . mce_escape( __('General') ) . '",
    358355advanced:"' . mce_escape( __('Advanced') ) . '",
     
    462459source:"' . mce_escape( __('Source') ) . '"
    463460});
    464461
    465 tinyMCE.addI18n("' . $this->mce_locale . '.wordpress",{
     462tinyMCE.addI18n("' . _WP_Editors::mce_locale . '.wordpress",{
    466463wp_adv_desc:"' . mce_escape( __('Show/Hide Kitchen Sink (Alt + Shift + Z)') )  . '",
    467464wp_more_desc:"' . mce_escape( __('Insert More Tag (Alt + Shift + T)') ) . '",
    468465wp_page_desc:"' . mce_escape( __('Insert Page break (Alt + Shift + P)') ) . '",
     
    477474delgallery:"' . mce_escape( __('Delete Gallery') ) . '"
    478475});
    479476
    480 tinyMCE.addI18n("' . $this->mce_locale . '.wpeditimage",{
     477tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.wpeditimage",{
    481478edit_img:"' . mce_escape( __('Edit Image') )  . '",
    482479del_img:"' . mce_escape( __('Delete Image') )  . '",
    483480adv_settings:"' . mce_escape( __('Advanced Settings') )  . '",
  • wp-includes/general-template.php

     
    17661766}
    17671767
    17681768/**
    1769  * Loads and initializes WP_Editor class (if needed), passes the settings for an instance of the editor
     1769 * Find out which editor should be displayed by default.
    17701770 *
     1771 * Works out which of the two editors to display as the current editor for a
     1772 * user.
     1773 *
     1774 * @since 2.5.0
     1775 *
     1776 * @return string Either 'tinymce', or 'html', or 'test'
     1777 */
     1778function wp_default_editor() {
     1779        $r = user_can_richedit() ? 'tinymce' : 'html'; // defaults
     1780        if ( $user = wp_get_current_user() ) { // look for cookie
     1781                $ed = get_user_setting('editor', 'tinymce');
     1782                $r = ( in_array($ed, array('tinymce', 'html', 'test') ) ) ? $ed : $r;
     1783        }
     1784        return apply_filters( 'wp_default_editor', $r ); // filter
     1785}
     1786
     1787/**
     1788 * Renders an editor.
     1789 *
    17711790 * Using this function is the proper way to output all needed components for both TinyMCE and Quicktags.
    1772  * WP_Editor shouldn't be instantiated separately as it keeps track of loaded scripts.
    1773  * See http://core.trac.wordpress.org/ticket/17144.
     1791 * _WP_Editors should not be used directly. See http://core.trac.wordpress.org/ticket/17144.
    17741792 *
    17751793 * NOTE: Once initialized the TinyMCE editor cannot be safely moved in the DOM. For that reason
    17761794 * running wp_editor() inside of a metabox is not a good idea unless only Quicktags is used.
     
    17831801 *
    17841802 * @param string $content Initial content for the editor.
    17851803 * @param string $editor_id HTML ID attribute value for the textarea and TinyMCE. Can only be /[a-z]+/.
    1786  * @param array $settings See WP_Editor::editor().
     1804 * @param array $settings See _WP_Editors::editor().
    17871805 */
    17881806function wp_editor( $content, $editor_id, $settings = array() ) {
    1789         global $wp_editor;
    1790 
    1791         if ( !is_a($wp_editor, 'WP_Editor') ) {
     1807        if ( ! class_exists( '_WP_Editors' ) )
    17921808                require( ABSPATH . WPINC . '/class-wp-editor.php' );
    1793                 $wp_editor = new WP_Editor;
    1794         }
    17951809
    1796         $wp_editor->editor($content, $editor_id, $settings);
     1810        _WP_Editors::editor($content, $editor_id, $settings);
    17971811}
    17981812
    17991813/**
  • wp-includes/deprecated.php

     
    26172617}
    26182618
    26192619/**
    2620  * Find out which editor should be displayed
    2621  *
    2622  * @see WP_Editor::wp_default_editor()
    2623  * @since 2.5.0
    2624  * @deprecated 3.5
    2625  *
    2626  * @return bool
    2627  */
    2628 function wp_default_editor() {
    2629         _deprecated_function( __FUNCTION__, '3.3' );
    2630 
    2631         global $wp_editor;
    2632         if ( !is_a($wp_editor, 'WP_Editor') ) {
    2633                 require_once( ABSPATH . WPINC . '/class-wp-editor.php' );
    2634                 $wp_editor = new WP_Editor;
    2635         }
    2636 
    2637         return $wp_editor->wp_default_editor();
    2638 }
    2639 
    2640 /**
    26412620 * Display editor: TinyMCE, HTML, or both.
    26422621 *
    26432622 * @since 2.1.0
  • wp-includes/class-wp-editor.php

     
    88 * Private, not included by default. See wp_editor() in wp-includes/general-template.php.
    99 */
    1010
    11 class WP_Editor {
     11final class _WP_Editors {
     12        public $mce_locale;
    1213
    13         var $mce_settings = array();
    14         var $qt_settings = array();
    15         var $plugins = array();
    16         var $qt_buttons = array();
    17         var $mce_locale;
    18         var $ext_plugins;
    19         var $baseurl;
    20         var $can_richedit;
    21         var $default_editor;
    22         var $first_init;
    23         var $this_tinymce = false;
    24         var $this_quicktags = false;
    25         var $has_tinymce = false;
    26         var $has_quicktags = false;
    27         var $has_medialib = false;
    28         var $editor_buttons_css = true;
     14        private $mce_settings = array();
     15        private $qt_settings = array();
     16        private $plugins = array();
     17        private $qt_buttons = array();
     18        private $ext_plugins;
     19        private $baseurl;
     20        private $first_init;
     21        private $this_tinymce = false;
     22        private $this_quicktags = false;
     23        private $has_tinymce = false;
     24        private $has_quicktags = false;
     25        private $has_medialib = false;
     26        private $editor_buttons_css = true;
    2927
    30         function __construct() {
    31                 $this->can_richedit = user_can_richedit();
    32                 $this->default_editor = $this->wp_default_editor();
    33         }
     28        private function __construct() {}
    3429
    35         function parse_settings($editor_id, $settings) {
     30        public static function parse_settings($editor_id, $settings) {
    3631                $set = wp_parse_args( $settings,  array(
    3732                        'wpautop' => true, // use wpautop?
    3833                        'media_buttons' => true, // show insert/upload button(s)
     
    4338                        'editor_class' => '', // add extra class(es) to the editor textarea
    4439                        'teeny' => false, // output the minimal editor config used in Press This
    4540                        'dfw' => false, // replace the default fullscreen with DFW (needs specific DOM elements and css)
    46                         'tinymce' => true, // load TinyMCE, can be used to pass settings directly to TinyMCE using an array()
     41                        'tinymce' => null, // load TinyMCE, can be used to pass settings directly to TinyMCE using an array()
    4742                        'quicktags' => true // load Quicktags, can be used to pass settings directly to Quicktags using an array()
    4843                ) );
    4944
    50                 $this->this_tinymce = !empty($set['tinymce']) && $this->can_richedit;
    51                 $this->this_quicktags = !empty($set['quicktags']);
     45                if ( null === $set['tinymce'] )
     46                        self::$this_tinymce = user_can_richedit();
     47                else
     48                        self::$this_tinymce = (bool) $set['tinymce'];
    5249
    53                 if ( $this->this_tinymce )
    54                         $this->has_tinymce = true;
     50                self::$this_quicktags = (bool) $set['quicktags'];
    5551
    56                 if ( $this->this_quicktags )
    57                         $this->has_quicktags = true;
     52                if ( self::$this_tinymce )
     53                        self::$has_tinymce = true;
    5854
     55                if ( self::$this_quicktags )
     56                        self::$has_quicktags = true;
     57
    5958                return $set;
    6059        }
    6160
     
    6463         *
    6564         * @param string $content The initial content of the editor.
    6665         * @param string $editor_id ID for the textarea and TinyMCE and Quicktags instances (can contain only ASCII letters and numbers).
    67          * @param array $settings See WP_Editor::_parse_settings for description.
     66         * @param array $settings See the _parse_settings() method for description.
    6867         */
    69         function editor( $content, $editor_id, $settings = array() ) {
     68        public static function editor( $content, $editor_id, $settings = array() ) {
    7069
    71                 $set = $this->parse_settings($editor_id, $settings);
     70                $set = self::parse_settings($editor_id, $settings);
    7271                $editor_class = ' class="' . trim( $set['editor_class'] . ' wp-editor-area' ) . '"';
    7372                $tabindex = $set['tabindex'] ? ' tabindex="' . (int) $set['tabindex'] . '"' : '';
    7473                $rows = ' rows="' . (int) $set['textarea_rows'] . '"';
     
    7877                if ( !current_user_can( 'upload_files' ) )
    7978                        $set['media_buttons'] = false;
    8079
    81                 if ( $this->this_quicktags && $this->this_tinymce ) {
     80                if ( self::$this_quicktags && self::$this_tinymce ) {
    8281                        $switch_class = 'html-active';
    8382
    84                         if ( 'html' == $this->default_editor ) {
     83                        if ( 'html' == wp_default_editor() ) {
    8584                                add_filter('the_editor_content', 'wp_htmledit_pre');
    8685                        } else {
    8786                                add_filter('the_editor_content', 'wp_richedit_pre');
     
    9493
    9594                echo '<div id="wp-' . $editor_id . '-wrap" class="wp-editor-wrap ' . $switch_class . '">';
    9695
    97                 if ( $this->editor_buttons_css ) {
     96                if ( self::$editor_buttons_css ) {
    9897                        wp_print_styles('editor-buttons');
    99                         $this->editor_buttons_css = false;
     98                        self::$editor_buttons_css = false;
    10099                }
    101100
    102101                if ( !empty($set['editor_css']) )
     
    107106                        echo $buttons;
    108107
    109108                        if ( $set['media_buttons'] ) {
    110                                 $this->has_medialib = true;
     109                                self::$has_medialib = true;
    111110
    112111                                if ( !function_exists('media_buttons') )
    113112                                        include(ABSPATH . 'wp-admin/includes/media.php');
     
    125124                printf($the_editor, $content);
    126125                echo "\n</div>\n\n";
    127126
    128                 $this->editor_settings($editor_id, $set);
     127                self::editor_settings($editor_id, $set);
    129128        }
    130129
    131         function editor_settings($editor_id, $set) {
     130        public static function editor_settings($editor_id, $set) {
    132131                global $editor_styles;
    133132                $first_run = false;
    134133
    135                 if ( empty($this->first_init) ) {
     134                if ( empty(self::$first_init) ) {
    136135                        if ( is_admin() ) {
    137                                 add_action( 'admin_print_footer_scripts', array($this, 'editor_js'), 50 );
    138                                 add_action( 'admin_footer', array($this, 'enqueue_scripts'), 1 );
     136                                add_action( 'admin_print_footer_scripts', array( __CLASS__, 'editor_js'), 50 );
     137                                add_action( 'admin_footer', array( __CLASS__, 'enqueue_scripts'), 1 );
    139138                        } else {
    140                                 add_action( 'wp_print_footer_scripts', array($this, 'editor_js'), 50 );
    141                                 add_action( 'wp_footer', array($this, 'enqueue_scripts'), 1 );
     139                                add_action( 'wp_print_footer_scripts', array( __CLASS__, 'editor_js'), 50 );
     140                                add_action( 'wp_footer', array( __CLASS__, 'enqueue_scripts'), 1 );
    142141                        }
    143142                }
    144143
    145                 if ( $this->this_quicktags ) {
     144                if ( self::$this_quicktags ) {
    146145
    147146                        $qtInit = array(
    148147                                'id' => $editor_id,
     
    159158                                $qtInit['buttons'] .= ',fullscreen';
    160159
    161160                        $qtInit = apply_filters('quicktags_settings', $qtInit, $editor_id);
    162                         $this->qt_settings[$editor_id] = $qtInit;
     161                        self::$qt_settings[$editor_id] = $qtInit;
    163162
    164                         $this->qt_buttons = array_merge( $this->qt_buttons, explode(',', $qtInit['buttons']) );
     163                        self::$qt_buttons = array_merge( self::$qt_buttons, explode(',', $qtInit['buttons']) );
    165164                }
    166165
    167                 if ( $this->this_tinymce ) {
     166                if ( self::$this_tinymce ) {
    168167
    169                         if ( empty($this->first_init) ) {
    170                                 $this->baseurl = includes_url('js/tinymce');
    171                                 $this->mce_locale = $mce_locale = ( '' == get_locale() ) ? 'en' : strtolower( substr(get_locale(), 0, 2) ); // only ISO 639-1
     168                        if ( empty(self::$first_init) ) {
     169                                self::$baseurl = includes_url('js/tinymce');
     170                                self::$mce_locale = $mce_locale = ( '' == get_locale() ) ? 'en' : strtolower( substr(get_locale(), 0, 2) ); // only ISO 639-1
    172171                                $no_captions = (bool) apply_filters( 'disable_captions', '' );
    173172                                $plugins = array( 'inlinepopups', 'spellchecker', 'tabfocus', 'paste', 'media', 'fullscreen', 'wordpress', 'wpeditimage', 'wpgallery', 'wplink', 'wpdialogs' );
    174173                                $first_run = true;
    175174
    176175                                if ( $set['teeny'] ) {
    177                                         $this->plugins = $plugins = apply_filters( 'teeny_mce_plugins', array('inlinepopups', 'fullscreen', 'wordpress', 'wplink', 'wpdialogs'), $editor_id );
     176                                        self::$plugins = $plugins = apply_filters( 'teeny_mce_plugins', array('inlinepopups', 'fullscreen', 'wordpress', 'wplink', 'wpdialogs'), $editor_id );
    178177                                        $ext_plugins = '';
    179178                                } else {
    180179                                        /*
     
    253252                                                        $ext_plugins .= 'tinyMCEPreInit.load_ext("' . $plugurl . '", "' . $mce_locale . '");' . "\n";
    254253                                                        $ext_plugins .= 'tinymce.PluginManager.load("' . $name . '", "' . $url . '");' . "\n";
    255254
    256                                                         $this->ext_plugins .= $ext_plugins;
     255                                                        self::$ext_plugins .= $ext_plugins;
    257256                                                }
    258257                                        }
    259258
     
    263262                                if ( $set['dfw'] )
    264263                                        $plugins[] = 'wpfullscreen';
    265264
    266                                 $this->plugins = $plugins;
     265                                self::$plugins = $plugins;
    267266
    268267                                /*
    269268                                The following filter allows localization scripts to change the languages displayed in the spellchecker's drop-down menu.
     
    273272                                */
    274273                                $mce_spellchecker_languages = apply_filters('mce_spellchecker_languages', '+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv');
    275274
    276                                 $this->first_init = array(
     275                                self::$first_init = array(
    277276                                        'mode' => 'exact',
    278277                                        'width' => '100%',
    279278                                        'theme' => 'advanced',
    280279                                        'skin' => 'wp_theme',
    281                                         'language' => $this->mce_locale,
     280                                        'language' => self::$mce_locale,
    282281                                        'spellchecker_languages' => $mce_spellchecker_languages,
    283282                                        'theme_advanced_toolbar_location' => 'top',
    284283                                        'theme_advanced_toolbar_align' => 'left',
     
    317316                                        'paste_text_use_dialog' => true,
    318317                                        'extended_valid_elements' => 'article[*],aside[*],audio[*],canvas[*],command[*],datalist[*],details[*],embed[*],figcaption[*],figure[*],footer[*],header[*],hgroup[*],keygen[*],mark[*],meter[*],nav[*],output[*],progress[*],section[*],source[*],summary,time[*],video[*],wbr',
    319318                                        'wpeditimage_disable_captions' => $no_captions,
    320                                         'wp_fullscreen_content_css' => "$this->baseurl/plugins/wpfullscreen/css/wp-fullscreen.css",
     319                                        'wp_fullscreen_content_css' => self::$baseurl . '/plugins/wpfullscreen/css/wp-fullscreen.css',
    321320                                        'plugins' => implode( ',', $plugins )
    322321                                );
    323322
     
    352351                                $mce_css = trim( apply_filters( 'mce_css', $mce_css ), ' ,' );
    353352
    354353                                if ( ! empty($mce_css) )
    355                                         $this->first_init['content_css'] = $mce_css;
     354                                        self::$first_init['content_css'] = $mce_css;
    356355                        }
    357356
    358357                        if ( $set['teeny'] ) {
     
    389388                        );
    390389
    391390                        if ( $first_run )
    392                                 $mceInit = array_merge($this->first_init, $mceInit);
     391                                $mceInit = array_merge(self::$first_init, $mceInit);
    393392
    394393                        if ( is_array($set['tinymce']) )
    395394                                $mceInit = array_merge($mceInit, $set['tinymce']);
     
    409408                                $mceInit['theme_advanced_buttons4'] = '';
    410409                        }
    411410
    412                         $this->mce_settings[$editor_id] = $mceInit;
    413                 } // end if $this->this_tinymce
     411                        self::$mce_settings[$editor_id] = $mceInit;
     412                } // end if self::$this_tinymce
    414413        }
    415414
    416         function _parse_init($init) {
     415        private static function _parse_init($init) {
    417416                $options = '';
    418417
    419418                foreach ( $init as $k => $v ) {
     
    431430                return '{' . trim( $options, ' ,' ) . '}';
    432431        }
    433432
    434         /**
    435          * Find out which editor should be displayed by default.
    436          *
    437          * Works out which of the two editors to display as the current editor for a
    438          * user.
    439          *
    440          * @since 2.5.0
    441          *
    442          * @return string Either 'tinymce', or 'html', or 'test'
    443          */
    444         function wp_default_editor() {
    445                 $r = user_can_richedit() ? 'tinymce' : 'html'; // defaults
    446                 if ( $user = wp_get_current_user() ) { // look for cookie
    447                         $ed = get_user_setting('editor', 'tinymce');
    448                         $r = ( in_array($ed, array('tinymce', 'html', 'test') ) ) ? $ed : $r;
    449                 }
    450                 return apply_filters( 'wp_default_editor', $r ); // filter
    451         }
    452 
    453         function enqueue_scripts() {
     433        public static function enqueue_scripts() {
    454434                wp_enqueue_script('word-count');
    455435
    456                 if ( $this->has_tinymce )
     436                if ( self::$has_tinymce )
    457437                        wp_enqueue_script('editor');
    458438
    459                 if ( $this->has_quicktags )
     439                if ( self::$has_quicktags )
    460440                        wp_enqueue_script('quicktags');
    461441
    462                 if ( in_array('wplink', $this->plugins, true) || in_array('link', $this->qt_buttons, true) ) {
     442                if ( in_array('wplink', self::$plugins, true) || in_array('link', self::$qt_buttons, true) ) {
    463443                        wp_enqueue_script('wplink');
    464444                        wp_enqueue_script('wpdialogs-popup');
    465445                        wp_enqueue_style('wp-jquery-ui-dialog');
    466446                }
    467447
    468                 if ( in_array('wpfullscreen', $this->plugins, true) || in_array('fullscreen', $this->qt_buttons, true) )
     448                if ( in_array('wpfullscreen', self::$plugins, true) || in_array('fullscreen', self::$qt_buttons, true) )
    469449                        wp_enqueue_script('wp-fullscreen');
    470450
    471                 if ( $this->has_medialib ) {
     451                if ( self::$has_medialib ) {
    472452                        add_thickbox();
    473453                        wp_enqueue_script('media-upload');
    474454                }
    475455        }
    476456
    477         function editor_js() {
     457        public static function editor_js() {
    478458                global $tinymce_version, $concatenate_scripts, $compress_scripts;
    479459
    480460                /**
     
    485465                 * If the plugin has a popup dialog, a query string can be added to the button action that opens it (in the plugin's code).
    486466                 */
    487467                $version = 'ver=' . $tinymce_version;
    488                 $tmce_on = !empty($this->mce_settings);
     468                $tmce_on = !empty(self::$mce_settings);
    489469
    490470                if ( ! isset($concatenate_scripts) )
    491471                        script_concat_settings();
     
    493473                $compressed = $compress_scripts && $concatenate_scripts && isset($_SERVER['HTTP_ACCEPT_ENCODING'])
    494474                        && false !== stripos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip');
    495475
    496                 if ( $tmce_on && 'en' != $this->mce_locale )
     476                if ( $tmce_on && 'en' != self::$mce_locale )
    497477                        include_once(ABSPATH . WPINC . '/js/tinymce/langs/wp-langs.php');
    498478
    499479                $mceInit = $qtInit = '';
    500480                if ( $tmce_on ) {
    501                         foreach ( $this->mce_settings as $editor_id => $init ) {
    502                                 $options = $this->_parse_init( $init );
     481                        foreach ( self::$mce_settings as $editor_id => $init ) {
     482                                $options = self::_parse_init( $init );
    503483                                $mceInit .= "'$editor_id':{$options},";
    504484                        }
    505485                        $mceInit = '{' . trim($mceInit, ',') . '}';
     
    507487                        $mceInit = '{}';
    508488                }
    509489
    510                 if ( !empty($this->qt_settings) ) {
    511                         foreach ( $this->qt_settings as $editor_id => $init ) {
    512                                 $options = $this->_parse_init( $init );
     490                if ( !empty(self::$qt_settings) ) {
     491                        foreach ( self::$qt_settings as $editor_id => $init ) {
     492                                $options = self::_parse_init( $init );
    513493                                $qtInit .= "'$editor_id':{$options},";
    514494                        }
    515495                        $qtInit = '{' . trim($qtInit, ',') . '}';
     
    518498                }
    519499
    520500                $ref = array(
    521                         'plugins' => implode( ',', $this->plugins ),
     501                        'plugins' => implode( ',', self::$plugins ),
    522502                        'theme' => 'advanced',
    523                         'language' => $this->mce_locale
     503                        'language' => self::$mce_locale
    524504                );
    525505
    526                 do_action('before_wp_tiny_mce', $this->mce_settings);
     506                do_action('before_wp_tiny_mce', self::$mce_settings);
    527507?>
    528508
    529509        <script type="text/javascript">
    530510                tinyMCEPreInit = {
    531                         base : "<?php echo $this->baseurl; ?>",
     511                        base : "<?php echo self::$baseurl; ?>",
    532512                        suffix : "",
    533513                        query : "<?php echo $version; ?>",
    534514                        mceInit : <?php echo $mceInit; ?>,
    535515                        qtInit : <?php echo $qtInit; ?>,
    536                         ref : <?php echo $this->_parse_init( $ref ); ?>,
     516                        ref : <?php echo self::_parse_init( $ref ); ?>,
    537517                        load_ext : function(url,lang){var sl=tinymce.ScriptLoader;sl.markDone(url+'/langs/'+lang+'.js');sl.markDone(url+'/langs/'+lang+'_dlg.js');}
    538518                };
    539519        </script>
     
    541521
    542522                if ( $tmce_on ) {
    543523                        if ( $compressed )
    544                                 echo "<script type='text/javascript' src='$this->baseurl/wp-tinymce.php?c=1&amp;$version'></script>\n";
     524                                echo "<script type='text/javascript' src='{self::$baseurl}/wp-tinymce.php?c=1&amp;$version'></script>\n";
    545525                        else
    546                                 echo "<script type='text/javascript' src='$this->baseurl/tiny_mce.js?$version'></script>\n";
     526                                echo "<script type='text/javascript' src='{self::$baseurl}/tiny_mce.js?$version'></script>\n";
    547527
    548                         if ( 'en' != $this->mce_locale && isset($lang) )
     528                        if ( 'en' != self::$mce_locale && isset($lang) )
    549529                                echo "<script type='text/javascript'>\n$lang\n</script>\n";
    550530                        else
    551                                 echo "<script type='text/javascript' src='$this->baseurl/langs/wp-langs-en.js?$version'></script>\n";
     531                                echo "<script type='text/javascript' src='{self::$baseurl}/langs/wp-langs-en.js?$version'></script>\n";
    552532                }
    553533?>
    554534
    555535        <script type="text/javascript">
    556536                (function(){
    557                         var init, ed, qt, first_init, mce = <?php echo $this->default_editor == 'tinymce' ? 'true' : 'false'; ?>;
     537                        var init, ed, qt, first_init, mce = <?php echo wp_default_editor() == 'tinymce' ? 'true' : 'false'; ?>;
    558538
    559539                        if ( typeof(tinymce) == 'object' ) {
    560540                                for ( ed in tinyMCEPreInit.mceInit ) {
     
    584564
    585565<?php
    586566
    587                 if ( $this->ext_plugins )
    588                         echo "$this->ext_plugins\n";
     567                if ( self::$ext_plugins )
     568                        echo self::$ext_plugins . "\n";
    589569
    590570                if ( ! $compressed && $tmce_on ) {
    591571?>
     
    599579        </script>
    600580<?php
    601581
    602                 if ( in_array('wplink', $this->plugins, true) || in_array('link', $this->qt_buttons, true) )
    603                         $this->wp_link_dialog();
     582                if ( in_array('wplink', self::$plugins, true) || in_array('link', self::$qt_buttons, true) )
     583                        self::wp_link_dialog();
    604584
    605                 if ( in_array('wpfullscreen', $this->plugins, true) || in_array('fullscreen', $this->qt_buttons, true) )
    606                         $this->wp_fullscreen_html();
     585                if ( in_array('wpfullscreen', self::$plugins, true) || in_array('fullscreen', self::$qt_buttons, true) )
     586                        self::wp_fullscreen_html();
    607587
    608                 do_action('after_wp_tiny_mce', $this->mce_settings);
     588                do_action('after_wp_tiny_mce', self::$mce_settings);
    609589        }
    610590
    611         function wp_fullscreen_html() {
     591        public static function wp_fullscreen_html() {
    612592                global $content_width, $post;
    613593
    614594                $width = isset($content_width) && 800 > $content_width ? $content_width : 800;
     
    705685         * @param array $args Optional. Accepts 'pagenum' and 's' (search) arguments.
    706686         * @return array Results.
    707687         */
    708         function wp_link_query( $args = array() ) {
     688        public static function wp_link_query( $args = array() ) {
    709689                $pts = get_post_types( array( 'public' => true ), 'objects' );
    710690                $pt_names = array_keys( $pts );
    711691
     
    758738         *
    759739         * @since 3.1.0
    760740         */
    761         function wp_link_dialog() {
     741        public static function wp_link_dialog() {
    762742        ?>
    763743        <div style="display:none;">
    764744        <form id="wp-link" tabindex="-1">
  • wp-admin/admin-ajax.php

     
    11301130        $args['pagenum'] = ! empty( $_POST['page'] ) ? absint( $_POST['page'] ) : 1;
    11311131
    11321132        require(ABSPATH . WPINC . '/class-wp-editor.php');
    1133         $results = WP_Editor::wp_link_query( $args );
     1133        $results = _WP_Editors::wp_link_query( $args );
    11341134
    11351135        if ( ! isset( $results ) )
    11361136                die( '0' );
  • wp-admin/includes/deprecated.php

     
    711711function wp_tiny_mce( $teeny = false, $settings = false ) {
    712712        _deprecated_function( __FUNCTION__, '3.3', 'wp_editor()' );
    713713
    714         global $wp_editor;
    715714        static $num = 1;
    716715
    717         if ( !is_a($wp_editor, 'WP_Editor') ) {
    718                 if ( !class_exists('WP_Editor') )
    719                         require_once( ABSPATH . WPINC . '/class-wp-editor.php' );
     716        if ( ! class_exists('_WP_Editors' ) )
     717                require_once( ABSPATH . WPINC . '/class-wp-editor.php' );
    720718
    721                 $wp_editor = new WP_Editor;
    722         }
     719        $editor_id = 'content' . $num++;
    723720
    724         $editor_id = 'content' . $num;
    725         ++$num;
    726 
    727721        $set = array(
    728722                'teeny' => $teeny,
    729723                'tinymce' => $settings ? $settings : true,
    730724                'quicktags' => false
    731725        );
    732726
    733         $set = $wp_editor->parse_settings($editor_id, $set);
    734         $wp_editor->editor_settings($editor_id, $set);
     727        $set = _WP_Editors::parse_settings($editor_id, $set);
     728        _WP_Editors::editor_settings($editor_id, $set);
    735729}
    736730
    737731/**
     
    762756}
    763757
    764758/**
    765  * @deprecated 3.3.0
    766  * @deprecated Use wp_editor()
    767  * @see wp_editor()
    768  */
    769 function wp_fullscreen_html() {
    770         _deprecated_function( __FUNCTION__, '3.3', 'wp_editor()' );
    771 }
    772 
    773 /**
    774759 * Returns the screen layout options.
    775760 *
    776761 * @since 2.8.0