\=|\+=|\+|\s|:|,)\s*!", '\\1', $text); //echo "//" . microtime() . " " . strlen($text) . " Stripped safe spaces\n"; echo "//" . strlen(gzdeflate($text)) . " bytes gzdeflated\n"; return $text; } // General options $suffix = ""; // Set to "_src" to use source version $expiresOffset = 3600 * 24 * 10; // 10 days util client cache expires // Get data to load $theme = isset($_REQUEST['theme']) ? $_REQUEST['theme'] : ""; $language = isset($_REQUEST['language']) ? $_REQUEST['language'] : ""; $plugins = isset($_REQUEST['plugins']) ? $_REQUEST['plugins'] : ""; $lang = isset($_REQUEST['lang']) ? $_REQUEST['lang'] : "en"; $index = isset($_REQUEST['index']) ? $_REQUEST['index'] : -1; // Only gzip the contents if clients and server support it $encodings = explode(',', strtolower($_SERVER['HTTP_ACCEPT_ENCODING'])); if (in_array('gzip', $encodings) && function_exists('ob_gzhandler')) @ ob_start("ob_gzhandler"); // Don't let warnings foul up the JS // Output rest of headers header("Content-type: text/javascript; charset: UTF-8"); // header("Cache-Control: must-revalidate"); header("Vary: Accept-Encoding"); // Handle proxies header("Expires: " . gmdate("D, d M Y H:i:s", time() + $expiresOffset) . " GMT"); if ($index > -1) { // Write main script and patch some things if ($index == 0) { // WP echo file_get_contents(realpath("tiny_mce" . $suffix . ".js")); $tinymce = file_get_contents(realpath("tiny_mce.js")); echo wp_compact_tinymce_js($tinymce); echo "\n\n"; echo "TinyMCE.prototype.loadScript = function() {};\n"; } // WP $lang = $language = 'en'; echo "\n/* WP Cancels all TinyMCE language handling */\n"; echo "TinyMCE.prototype.importThemeLanguagePack = function() {};\n"; echo "TinyMCE.prototype.importPluginLanguagePack = function() {};\n\n"; // Do init based on index // WP echo "tinyMCE.init(tinyMCECompressed.configs[" . $index . "]);\n\n"; // Load theme, language pack and theme language packs if ($theme) { echo file_get_contents(realpath("themes/" . $theme . "/editor_template" . $suffix . ".js")); echo wp_translate_tinymce_lang(file_get_contents(realpath("themes/" . $theme . "/langs/" . $lang . ".js"))); } if ($language) echo wp_translate_tinymce_lang(file_get_contents(realpath("langs/" . $language . ".js"))); // Load all plugins and their language packs $plugins = explode(",", $plugins); foreach ($plugins as $plugin) { $pluginFile = realpath("plugins/" . $plugin . "/editor_plugin" . $suffix . ".js"); $languageFile = realpath("plugins/" . $plugin . "/langs/" . $lang . ".js"); if ($pluginFile) echo file_get_contents($pluginFile); if ($languageFile) echo wp_translate_tinymce_lang(file_get_contents($languageFile)); } die; } ?> function TinyMCECompressed() { this.configs = new Array(); this.loadedFiles = new Array(); } TinyMCECompressed.prototype.init = function(settings) { var elements = document.getElementsByTagName('script'); var scriptURL = ""; for (var i=0; i'); } TinyMCECompressed.prototype.getOnce = function(str) { var ar = str.split(','); for (var i=0; i