Ticket #5896: loading-compressor-upd.patch
| File loading-compressor-upd.patch, 18.0 KB (added by , 19 years ago) |
|---|
-
wp-admin/page-new.php
5 5 $editing = true; 6 6 wp_enqueue_script('autosave'); 7 7 wp_enqueue_script('page'); 8 wp_enqueue_script('editor'); 8 if ( user_can_richedit() ) 9 wp_enqueue_script('editor'); 9 10 wp_enqueue_script('thickbox'); 10 11 wp_enqueue_script('media-upload'); 11 12 -
wp-admin/page.php
53 53 } 54 54 55 55 wp_enqueue_script('page'); 56 wp_enqueue_script('editor'); 56 if ( user_can_richedit() ) 57 wp_enqueue_script('editor'); 57 58 wp_enqueue_script('thickbox'); 58 59 wp_enqueue_script('media-upload'); 59 60 -
wp-admin/post-new.php
5 5 $editing = true; 6 6 wp_enqueue_script('autosave'); 7 7 wp_enqueue_script('post'); 8 wp_enqueue_script('editor'); 8 if ( user_can_richedit() ) 9 wp_enqueue_script('editor'); 9 10 wp_enqueue_script('thickbox'); 10 11 wp_enqueue_script('media-upload'); 11 12 -
wp-admin/post.php
62 62 } 63 63 64 64 wp_enqueue_script('post'); 65 wp_enqueue_script('editor'); 65 if ( user_can_richedit() ) 66 wp_enqueue_script('editor'); 66 67 wp_enqueue_script('thickbox'); 67 68 wp_enqueue_script('media-upload'); 68 69 -
wp-admin/wp-admin.css
260 260 color: #fff; 261 261 } 262 262 263 #postdivrich #quicktags {263 #postdivrich #quicktags, #postdiv #quicktags { 264 264 background: #cee1ef; 265 265 padding: 0; 266 266 border: 0 none; 267 267 } 268 268 269 #postdiv #quicktags {270 padding-right: 6px;271 }272 273 269 #quicktags #ed_toolbar { 274 270 padding: 0 2px; 275 271 } -
wp-includes/general-template.php
923 923 if (($rows < 3) || ($rows > 100)) 924 924 $rows = 12; 925 925 926 $rows = "rows='$rows'"; 927 928 if ( user_can_richedit() ) : 929 $wp_default_editor = wp_default_editor(); 930 $active = " class='active'"; 931 $inactive = " onclick='switchEditors.go(\"$id\");'"; 932 933 if ( 'tinymce' == $wp_default_editor ) 934 add_filter('the_editor_content', 'wp_richedit_pre'); 935 else if ( 'html' == $wp_default_editor ) 936 add_filter('the_editor_content', 'wp_htmledit_pre'); 937 938 // The following line moves the border so that the active button "attaches" to the toolbar. Only IE needs it. 939 ?> 940 <style type="text/css"> 941 #postdivrich table, #postdivrich #quicktags {border-top: none;} 942 #quicktags {border-bottom: none; padding-bottom: 2px; margin-bottom: -1px;} 943 </style> 944 945 <div id='editor-toolbar' style='display:none;'> 946 <div class='zerosize'><input accesskey='e' type='button' onclick='switchEditors.go("<?php echo $id; ?>")' /></div> 947 <a id='edButtonHTML'<?php echo 'html' == $wp_default_editor ? $active : $inactive; ?>><?php _e('HTML'); ?></a> 948 <a id='edButtonPreview'<?php echo 'tinymce' == $wp_default_editor ? $active : $inactive; ?>><?php _e('Visual'); ?></a> 949 950 <div id="media-buttons"> 951 <?php _e('Add media:'); ?> 952 <?php do_action( 'media_buttons'); ?> 953 </div> 926 $rows = "rows='$rows'"; ?> 927 <div id="editor-toolbar"> 928 <?php if ( user_can_richedit() ) { 929 $wp_default_editor = wp_default_editor(); ?> 930 <div class="zerosize"><input accesskey="e" type="button" onclick="switchEditors.go('<?php echo $id; ?>')" /></div> 931 <?php if ( 'tinymce' == $wp_default_editor ) { 932 add_filter('the_editor_content', 'wp_richedit_pre'); ?> 933 <a id="edButtonHTML" onclick="switchEditors.go('<?php echo $id; ?>');"><?php _e('HTML'); ?></a> 934 <a id="edButtonPreview" class="active"><?php _e('Visual'); ?></a> 935 <?php } elseif ( 'html' == $wp_default_editor ) { 936 add_filter('the_editor_content', 'wp_htmledit_pre'); ?> 937 <a id="edButtonHTML" class="active"><?php _e('HTML'); ?></a> 938 <a id="edButtonPreview" onclick="switchEditors.go('<?php echo $id; ?>');"><?php _e('Visual'); ?></a> 939 <?php } 940 } ?> 941 <div id="media-buttons"> 942 <?php _e('Add media:'); ?> 943 <?php do_action( 'media_buttons'); ?> 944 </div> 954 945 </div> 955 946 956 <script type="text/javascript">957 // <![CDATA[958 if ( typeof tinyMCE != "undefined" )959 document.getElementById('editor-toolbar').style.display = 'block';960 // ]]>961 </script>962 963 <?php else: // Rich editor is disabled in profile but we still need the media buttons ?>964 965 <div id='editor-toolbar' style='display:block;'>966 <div id="media-buttons">967 <?php _e('Add media:'); ?>968 <?php do_action( 'media_buttons'); ?>969 </div>970 </div>971 972 <?php endif; // user_can_richedit() ?>973 974 947 <div id="quicktags"> 975 948 <?php wp_print_scripts( 'quicktags' ); ?> 976 949 <script type="text/javascript">edToolbar()</script> 977 950 </div> 978 951 979 <?php if ( 'html' != $wp_default_editor ) : ?>980 <script type="text/javascript">981 // <![CDATA[982 if ( typeof tinyMCE != "undefined" )983 document.getElementById("quicktags").style.display="none";984 // ]]>985 </script>986 <?php endif; // 'html' != $wp_default_editor952 <?php if ( 'html' != $wp_default_editor ) : ?> 953 <script type="text/javascript"> 954 // <![CDATA[ 955 if ( typeof tinyMCE != "undefined" ) 956 document.getElementById("quicktags").style.display="none"; 957 // ]]> 958 </script> 959 <?php endif; // 'html' != $wp_default_editor 987 960 988 961 $the_editor = apply_filters('the_editor', "<div id='editorcontainer'><textarea class='' $rows cols='40' name='$id' tabindex='2' id='$id'>%s</textarea></div>\n"); 989 962 $the_editor_content = apply_filters('the_editor_content', $content); … … 991 964 printf($the_editor, $the_editor_content); 992 965 993 966 ?> 994 <script type="text/javascript">995 //<!-- 996 edCanvas = document.getElementById('<?php echo $id; ?>');997 <?php if ( $prev_id && user_can_richedit() ) : ?>998 // If tinyMCE is defined.999 if ( typeof tinyMCE != 'undefined' ) {1000 // This code is meant to allow tabbing from Title to Post (TinyMCE).967 <script type="text/javascript"> 968 // <![CDATA[ 969 edCanvas = document.getElementById('<?php echo $id; ?>'); 970 <?php if ( $prev_id && user_can_richedit() ) : ?> 971 // If tinyMCE is defined. 972 if ( typeof tinyMCE != 'undefined' ) { 973 // This code is meant to allow tabbing from Title to Post (TinyMCE). 1001 974 document.getElementById('<?php echo $prev_id; ?>').onkeydown = function (e) { 1002 975 e = e || window.event; 1003 976 if (e.keyCode == 9 && !e.shiftKey && !e.controlKey && !e.altKey) { … … 1010 983 return true; 1011 984 } 1012 985 } 1013 }1014 <?php endif; ?>1015 //-->1016 </script>1017 <?php986 } 987 <?php endif; ?> 988 // ]]> 989 </script> 990 <?php 1018 991 } 1019 992 1020 993 function get_search_query() { -
wp-includes/js/tinymce/tiny_mce_config.php
47 47 $https = ( isset($_SERVER['HTTPS']) && 'on' == $_SERVER['HTTPS'] ) ? true : false; 48 48 49 49 $baseurl = get_option('siteurl') . '/wp-includes/js/tinymce'; 50 $baseurl = $https ? str_replace('http://', 'https://', $baseurl) : $baseurl;50 if ( $https ) str_replace('http://', 'https://', $baseurl); 51 51 52 52 $mce_css = $baseurl . '/wordpress.css'; 53 53 $mce_css = apply_filters('mce_css', $mce_css); 54 $mce_css = $https ? str_replace('http://', 'https://', $mce_css) : $mce_css;54 if ( $https ) str_replace('http://', 'https://', $mce_css); 55 55 56 56 $valid_elements = '*[*]'; 57 57 $valid_elements = apply_filters('mce_valid_elements', $valid_elements); … … 72 72 $ext_plugins = "\n"; 73 73 foreach ( $mce_external_plugins as $name => $url ) { 74 74 $plugins[] = '-' . $name; 75 $url = $https ? str_replace('http://', 'https://', $url) : $url;75 if ( $https ) str_replace('http://', 'https://', $url); 76 76 77 77 $ext_plugins .= 'tinymce.PluginManager.load("' . $name . '", "' . $url . '");' . "\n"; 78 78 } 79 79 80 80 $plugins = implode($plugins, ','); 81 81 82 $mce_buttons = apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', '|', 'bullist', 'numlist', 'outdent', 'indent', '|', 'justifyleft', 'justifycenter', 'justifyright', '|', 'link', 'unlink', 'image', 'wp_more', '|', 'spellchecker', ' |', 'wp_help', 'wp_adv' ));82 $mce_buttons = apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', '|', 'bullist', 'numlist', 'outdent', 'indent', '|', 'justifyleft', 'justifycenter', 'justifyright', '|', 'link', 'unlink', 'image', 'wp_more', '|', 'spellchecker', 'fullscreen', 'wp_adv' )); 83 83 $mce_buttons = implode($mce_buttons, ','); 84 84 85 $mce_buttons_2 = apply_filters('mce_buttons_2', array('formatselect', 'underline', 'justifyfull', 'forecolor', '|', 'pastetext', 'pasteword', '|', 'removeformat', 'cleanup', '|', 'media', 'charmap', 'blockquote', '|', 'undo', 'redo', ' fullscreen' ));85 $mce_buttons_2 = apply_filters('mce_buttons_2', array('formatselect', 'underline', 'justifyfull', 'forecolor', '|', 'pastetext', 'pasteword', '|', 'removeformat', 'cleanup', '|', 'media', 'charmap', 'blockquote', '|', 'undo', 'redo', 'wp_help' )); 86 86 $mce_buttons_2 = implode($mce_buttons_2, ','); 87 87 88 88 $mce_buttons_3 = apply_filters('mce_buttons_3', array()); … … 91 91 $mce_buttons_4 = apply_filters('mce_buttons_4', array()); 92 92 $mce_buttons_4 = implode($mce_buttons_4, ','); 93 93 94 // all these browsers are now 100% supported, no need for this95 //$mce_browsers = apply_filters('mce_browsers', array('msie', 'gecko', 'opera', 'safari'));96 //$mce_browsers = implode($mce_browsers, ',');97 98 94 $mce_locale = ( '' == get_locale() ) ? 'en' : strtolower( substr(get_locale(), 0, 2) ); // only ISO 639-1 99 95 100 96 // TinyMCE init settings … … 114 110 'theme_advanced_statusbar_location' => 'bottom', 115 111 'theme_advanced_resizing' => true, 116 112 'theme_advanced_resize_horizontal' => false, 117 // 'browsers' => "$mce_browsers",118 113 'dialog_type' => 'modal', 119 'convert_urls' => false,120 114 'relative_urls' => false, 121 115 'remove_script_host' => false, 122 116 'fix_list_elements' => true, 123 'fix_table_elements' => true,117 // 'fix_table_elements' => true, 124 118 'gecko_spellcheck' => true, 125 119 'entities' => '38,amp,60,lt,62,gt', 126 120 'accessibility_focus' => false, … … 131 125 // pass-through the settings for compression and caching, so they can be changed with "tiny_mce_before_init" 132 126 'disk_cache' => true, 133 127 'compress' => true, 134 ' del_old_cache' => true128 'old_cache_max' => '3' // number of cache files to keep 135 129 ); 136 130 137 131 if ( $valid_elements ) $initArray['valid_elements'] = $valid_elements; … … 148 142 ob_end_clean(); 149 143 150 144 /* 151 // Do we need to support this? Most likely will brea lTinyMCE 3...145 // Do we need to support this? Most likely will break TinyMCE 3... 152 146 ob_start(); 153 147 do_action('tinymce_before_init'); 154 148 $mce_deprecated2 = ob_get_contents() || ''; … … 161 155 162 156 $disk_cache = ( ! isset($initArray['disk_cache']) || false == $initArray['disk_cache'] ) ? false : true; 163 157 $compress = ( ! isset($initArray['compress']) || false == $initArray['compress'] ) ? false : true; 164 $ del_old_cache = ( ! isset($initArray['del_old_cache']) || false == $initArray['del_old_cache'] ) ? false : true;158 $old_cache_max = ( isset($initArray['old_cache_max']) ) ? (int) $initArray['old_cache_max'] : 0; 165 159 166 $initArray['disk_cache'] = $initArray['compress'] = $initArray[' del_old_cache'] = null;167 unset( $initArray['disk_cache'], $initArray['compress'], $initArray[' del_old_cache'] );160 $initArray['disk_cache'] = $initArray['compress'] = $initArray['old_cache_max'] = null; 161 unset( $initArray['disk_cache'], $initArray['compress'], $initArray['old_cache_max'] ); 168 162 169 163 $plugins = explode( ',', $initArray['plugins'] ); 170 164 $theme = ( 'simple' == $initArray['theme'] ) ? 'simple' : 'advanced'; … … 188 182 if ( $disk_cache && $cache_path ) { 189 183 190 184 $ver = isset($_GET['ver']) ? (int) $_GET['ver'] : ''; 191 $cacheKey = $ initArray['plugins'] . $language . $theme . $suffix . $ver;185 $cacheKey = $suffix . $ver; 192 186 187 foreach ( $initArray as $v ) 188 $cacheKey .= $v; 189 193 190 foreach ( $custom_js as $file ) 194 191 $cacheKey .= $file; 195 192 196 193 $cacheKey = md5( $cacheKey ); 197 $cache_file = $cache_path . '/tiny _mce_' . $cacheKey . $cache_ext;194 $cache_file = $cache_path . '/tinymce_' . $cacheKey . $cache_ext; 198 195 } 199 196 200 197 cache_javascript_headers(); … … 209 206 } 210 207 211 208 foreach ( $initArray as $k => $v ) 212 $mce_options .= $k . ':"' . $v . '", ';209 $mce_options .= $k . ':"' . $v . '",'; 213 210 214 211 $mce_options .= $mce_deprecated1; 215 212 $mce_options = rtrim( trim($mce_options), '\n\r,' ); 216 213 217 $content = 'var tinyMCEPreInit = { suffix : "' . $suffix . '", base : "' . $baseurl . '" };'; 218 $content .= 'var tinyMCE_GZ = { settings : { themes : "' . $theme . '", plugins : "' . $initArray['plugins'] . '", languages : "' . $language . '", debug : false, suffix : "' . $suffix . '" }, baseURL : "' . $baseurl . '" };'; 214 $content .= 'var tinyMCEPreInit = { settings : { themes : "' . $theme . '", plugins : "' . $initArray['plugins'] . '", languages : "' . $language . '", debug : false }, base : "' . $baseurl . '", suffix : "' . $suffix . '" };'; 219 215 220 216 // Load patch 221 217 $content .= getFileContents( 'tiny_mce_ext.js' ); … … 224 220 $content .= getFileContents( 'tiny_mce' . $suffix . '.js' ); 225 221 226 222 // Patch loading functions 227 $content .= 'tinyMCE _GZ.start();';223 $content .= 'tinyMCEPreInit.start();'; 228 224 229 225 // Add all languages (WP) 230 226 include_once( dirname(__FILE__).'/langs/wp-langs.php' ); … … 247 243 // Generate GZIP'd content 248 244 if ( '.gz' == $cache_ext ) { 249 245 header('Content-Encoding: ' . $enc); 250 $cache_data = gzencode( $content, 9, FORCE_GZIP ); 251 } else 252 $cache_data = $content; 246 $content = gzencode( $content, 9, FORCE_GZIP ); 247 } 253 248 254 249 // Stream to client 255 echo $c ache_data;250 echo $content; 256 251 257 252 // Write file 258 if ( '' != $cacheKey ) {259 if ( $ del_old_cache) {260 $old_key = getFileContents('tiny_mce_compressed_key');253 if ( '' != $cacheKey && $cache_path ) { 254 if ( $old_cache_max ) { 255 $old_keys = getFileContents('tinymce_compressed_key' . $cache_ext); 261 256 262 if ( '' != $old_key ) { // && $old_key != $cacheKey 263 $old_cache = $cache_path . '/tiny_mce_' . $old_key . $cache_ext; 264 @unlink($old_cache); 257 if ( '' != $old_keys ) { 258 $keys_ar = explode( "\n", $old_keys ); 259 if ( ($old_cache_max - 1) > count($old_keys_ar) ) 260 $old_keys_rem = array_slice( $keys_ar, ($old_cache_max - 1) ); 261 262 foreach ( $old_keys_rem as $key ) { 263 $key = trim($key); 264 if ( 32 != strlen($key) ) continue; 265 $old_cache = $cache_path . '/tinymce_' . $key . $cache_ext; 266 @unlink($old_cache); 267 } 268 269 array_unshift( $keys_ar, $cacheKey ); 270 $keys_ar = array_slice( $keys_ar, 0, $old_cache_max ); 271 $cacheKey = trim( implode( "\n", $keys_ar ) ); 272 265 273 } 266 267 putFileContents( 'tiny _mce_compressed_key', $cacheKey );274 275 putFileContents( 'tinymce_compressed_key' . $cache_ext, $cacheKey ); 268 276 } 269 270 putFileContents( $cache_file, $c ache_data);277 278 putFileContents( $cache_file, $content ); 271 279 } 272 280 ?> 281 No newline at end of file -
wp-includes/js/tinymce/tiny_mce_ext.js
1 2 tinyMCE_GZ.start = function() { 1 tinyMCEPreInit.start = function() { 3 2 var t = this, each = tinymce.each, s = t.settings, sl = tinymce.ScriptLoader, ln = s.languages.split(','); 4 3 5 4 function load(u, sp) { 6 5 var o; 7 6 8 7 if (!sp) 9 u = t.base URL+ u;8 u = t.base + u; 10 9 11 10 o = {url : u, state : 2}; 12 11 sl.queue.push(o); … … 22 21 // Add themes with languages 23 22 each(s.themes.split(','), function(n) { 24 23 if (n) { 25 load('/themes/' + n + '/editor_template' + s.suffix + '.js');24 load('/themes/' + n + '/editor_template' + t.suffix + '.js'); 26 25 27 26 each (ln, function(c) { 28 27 if (c) … … 34 33 // Add plugins with languages 35 34 each(s.plugins.split(','), function(n) { 36 35 if (n && n.charAt(0) != '-') { 37 load('/plugins/' + n + '/editor_plugin' + s.suffix + '.js');36 load('/plugins/' + n + '/editor_plugin' + t.suffix + '.js'); 38 37 39 38 each (ln, function(c) { 40 39 if (c) -
wp-includes/script-loader.php
29 29 30 30 $this->add( 'colorpicker', '/wp-includes/js/colorpicker.js', false, '3517' ); 31 31 32 // Modify this version when tinyMCE plugins are changed33 $ mce_config = apply_filters('tiny_mce_config_url', '/wp-includes/js/tinymce/tiny_mce_config.php');34 $this->add( ' tiny_mce', $mce_config, false, '20080209' );32 // Let a plugin replace the visual editor 33 $visual_editor = apply_filters('visual_editor', array('tiny_mce')); 34 $this->add( 'editor', false, $visual_editor, '20080218' ); 35 35 36 $this->add( 'editor_functions', '/wp-admin/js/editor.js', false, '20080208' ); 37 38 // Modify this version when tinyMCE plugins are changed. 39 $mce_version = apply_filters('tiny_mce_version', '20080209'); 40 $this->add( 'tiny_mce', '/wp-includes/js/tinymce/tiny_mce_config.php', array('editor_functions'), $mce_version ); 41 $this->localize( 'tiny_mce', 'wpTinyMCEConfig', array( 'defaultEditor' => wp_default_editor() ) ); 42 36 43 $this->add( 'prototype', '/wp-includes/js/prototype.js', false, '1.6'); 37 44 38 45 $this->add( 'autosave', '/wp-includes/js/autosave.js', array('jquery', 'schedule'), '20080206'); … … 474 481 return $js_array; 475 482 } 476 483 477 // These localizations require information that may not be loaded even by init478 function wp_just_in_time_script_localization() {479 wp_localize_script( 'tiny_mce', 'wpTinyMCEConfig', array( 'defaultEditor' => wp_default_editor() ) );480 }481 482 add_filter( 'wp_print_scripts', 'wp_just_in_time_script_localization' );483 484 add_filter( 'print_scripts_array', 'wp_prototype_before_jquery' ); 484 485 485 ?> 486 ?> 487 No newline at end of file
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)