diff -r 000000000000 -r d970ebf37754 wp/wp-admin/js/word-count.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/wp/wp-admin/js/word-count.js Wed Nov 06 03:21:17 2013 +0000 @@ -0,0 +1,42 @@ +(function($,undefined) { + wpWordCount = { + + settings : { + strip : /<[a-zA-Z\/][^<>]*>/g, // strip HTML tags + clean : /[0-9.(),;:!?%#$¿'"_+=\\/-]+/g, // regexp to remove punctuation, etc. + w : /\S\s+/g, // word-counting regexp + c : /\S/g // char-counting regexp for asian languages + }, + + block : 0, + + wc : function(tx, type) { + var t = this, w = $('.word-count'), tc = 0; + + if ( type === undefined ) + type = wordCountL10n.type; + if ( type !== 'w' && type !== 'c' ) + type = 'w'; + + if ( t.block ) + return; + + t.block = 1; + + setTimeout( function() { + if ( tx ) { + tx = tx.replace( t.settings.strip, ' ' ).replace( / | /gi, ' ' ); + tx = tx.replace( t.settings.clean, '' ); + tx.replace( t.settings[type], function(){tc++;} ); + } + w.html(tc.toString()); + + setTimeout( function() { t.block = 0; }, 2000 ); + }, 1 ); + } + } + + $(document).bind( 'wpcountwords', function(e, txt) { + wpWordCount.wc(txt); + }); +}(jQuery));