WordPress.org

Make WordPress Core

Ticket #8759: character_count.diff

File character_count.diff, 5.7 KB (added by jim912, 9 years ago)
  • wp-admin/includes/schema.php

     
    301301        add_option('widget_rss', array());
    302302        add_option('update_core', array());
    303303        add_option('dismissed_update_core', array());
     304       
     305        if ( defined( 'WPLANG' ) && preg_match( '/^(bo|dz|ii|ja|km|my|th|zh)/', WPLANG ) ) {
     306                add_option('counting_method', 'character');
     307        } else {
     308                add_option('counting_method', 'word');
     309        }
    304310
    305311        // Delete unused options
    306312        $unusedoptions = array ('blodotgsping_url', 'bodyterminator', 'emailtestonly', 'phoneemail_separator', 'smilies_directory', 'subjectprefix', 'use_bbcode', 'use_blodotgsping', 'use_phoneemail', 'use_quicktags', 'use_weblogsping', 'weblogs_cache_file', 'use_preview', 'use_htmltrans', 'smilies_directory', 'fileupload_allowedusers', 'use_phoneemail', 'default_post_status', 'default_post_category', 'archive_mode', 'time_difference', 'links_minadminlevel', 'links_use_adminlevels', 'links_rating_type', 'links_rating_char', 'links_rating_ignore_zero', 'links_rating_single_image', 'links_rating_image0', 'links_rating_image1', 'links_rating_image2', 'links_rating_image3', 'links_rating_image4', 'links_rating_image5', 'links_rating_image6', 'links_rating_image7', 'links_rating_image8', 'links_rating_image9', 'weblogs_cacheminutes', 'comment_allowed_tags', 'search_engine_friendly_urls', 'default_geourl_lat', 'default_geourl_lon', 'use_default_geourl', 'weblogs_xml_url', 'new_users_can_blog', '_wpnonce', '_wp_http_referer', 'Update', 'action', 'rich_editing', 'autosave_interval', 'deactivated_plugins');
  • wp-admin/js/word-count.js

     
    2424
    2525                        setTimeout( function() {
    2626                                if ( tx ) {
    27                                         tx = tx.replace( /<.[^<>]*?>/g, ' ' ).replace( /&nbsp;/gi, ' ' );
    28                                         tx = tx.replace( /[0-9.(),;:!?%#$¿'"_+=\\/-]*/g, '' );
    29                                         tx.replace( /\S\s+/g, function(){tc++;} );
     27                                        if ( wordCountL10n.method == 'character' ) {
     28                                                tx = tx.replace( /<.[^<>]*?>/g, '' );
     29                                                tx = tx.replace( /&(nbsp|#160|#x00a0);/gi, '' );
     30                                                tx = tx.replace( /[ \s]/g, '' );
     31                                                tx = tx.replace( /&(#[\d]{2,5}|#x[a-fA-F\d]{1,4}|[a-zA-Z]{2,8}[1-4]{0,2});/g, ' ' );
     32                                                tc = tx.length;
     33                                        } else {
     34                                                tx = tx.replace( /<.[^<>]*?>/g, ' ' ).replace( /&(nbsp|#160|#x00a0);/gi, ' ' );
     35                                                tx = tx.replace( /[0-9.(),;:!?%#$¿'"_+=\\/-]*/g, '' );
     36                                                tx.replace( /\S\s+/g, function(){tc++;} );     
     37                                        }
    3038                                }
    3139                                w.html(tc.toString());
    3240
  • wp-admin/options-writing.php

     
    5353?>
    5454</td>
    5555</tr>
     56<tr valign="top">
     57<th scope="row"><?php _e('Counting method') ?></th>
     58<td><fieldset><legend class="hidden"><?php _e('Counting method') ?></legend>
     59
     60<input name="counting_method" type="radio" id="word_count" value="word" <?php checked('word', get_option('counting_method')); ?> />
     61<label for="word_count"><?php _e('Word Count') ?></label><br />
     62<input name="counting_method" type="radio" id="character_count" value="character" <?php checked('character', get_option('counting_method')); ?> />
     63<label for="character_count"><?php _e('Character Count') ?></label>
     64</fieldset></td>
     65</tr>
    5666<?php do_settings_fields('writing', 'default'); ?>
    5767</table>
    5868
  • wp-admin/options.php

     
    2828        'media' => array( 'thumbnail_size_w', 'thumbnail_size_h', 'thumbnail_crop', 'medium_size_w', 'medium_size_h', 'large_size_w', 'large_size_h', 'image_default_size', 'image_default_align', 'image_default_link_type' ),
    2929        'privacy' => array( 'blog_public' ),
    3030        'reading' => array( 'posts_per_page', 'posts_per_rss', 'rss_use_excerpt', 'blog_charset', 'show_on_front', 'page_on_front', 'page_for_posts' ),
    31         'writing' => array( 'default_post_edit_rows', 'use_smilies', 'ping_sites', 'mailserver_url', 'mailserver_port', 'mailserver_login', 'mailserver_pass', 'default_category', 'default_email_category', 'use_balanceTags', 'default_link_category', 'enable_app', 'enable_xmlrpc' ),
     31        'writing' => array( 'default_post_edit_rows', 'use_smilies', 'ping_sites', 'mailserver_url', 'mailserver_port', 'mailserver_login', 'mailserver_pass', 'default_category', 'default_email_category', 'use_balanceTags', 'default_link_category', 'enable_app', 'enable_xmlrpc', 'counting_method' ),
    3232        'options' => array( '' ) );
    3333if ( !defined( 'WP_SITEURL' ) ) $whitelist_options['general'][] = 'siteurl';
    3434if ( !defined( 'WP_HOME' ) ) $whitelist_options['general'][] = 'home';
  • wp-includes/script-loader.php

     
    247247                        'l10n_print_after' => 'try{convertEntities(widgetsL10n);}catch(e){};'
    248248                ));
    249249
     250                if ('character' == get_option('counting_method') ) {
     251                        $counting_method = __('Character count: %d');
     252                } else {
     253                        $counting_method = __('Word count: %d');
     254                }
    250255                $scripts->add( 'word-count', '/wp-admin/js/word-count.js', array( 'jquery' ), '20081210' );
    251256                $scripts->localize( 'word-count', 'wordCountL10n', array(
    252                         'count' => __('Word count: %d'),
     257                        'count' => $counting_method,
     258                        'method' => get_option('counting_method'),
    253259                        'l10n_print_after' => 'try{convertEntities(wordCountL10n);}catch(e){};'
    254260                ));
    255261