Thread:Extension talk:WYSIWYG/Fix bugs: WYSIWYG doesn't show, Indent function doesn't work

I found some solutions to fix these bugs on WYSIWYG

1/ Fix: WYSIWYG doesn't show on PHP 5.4.x/IE browser with Proxy Settings

- Open file /WYSIWYG/ckeditor/config.js

- Delete or comment out these lines

// SMWHalo extension var qiButton, stbButton; if ( ('SMW_HALO_VERSION').InArray(window.parent.wgCKeditorUseBuildin4Extensions) || showTbButton) { CKEDITOR.plugins.addExternal( 'smw_qi', CKEDITOR.basePath + 'plugins/smwqueryinterface/' ); CKEDITOR.plugins.addExternal( 'smw_toolbar', CKEDITOR.basePath + 'plugins/smwtoolbar/' ); extraPlugins += ",smw_qi,smwtoolbar"; qiButton = 'SMWqi'; stbButton = 'SMWtoolbar'; }   // DataImport extension var wsButton; if ( ('SMW_DI_VERSION').InArray(window.parent.wgCKeditorUseBuildin4Extensions) || showTbButton) { CKEDITOR.plugins.addExternal( 'smw_webservice', CKEDITOR.basePath + 'plugins/smwwebservice/' ); extraPlugins += ",smw_webservice"; wsButton = 'SMWwebservice'; }   // SemanticRule extension if (('SEMANTIC_RULES_VERSION').InArray(window.parent.wgCKeditorUseBuildin4Extensions)) { CKEDITOR.plugins.addExternal( 'smw_rule', CKEDITOR.basePath + 'plugins/smwrule/' ); extraPlugins += ",smw_rule"; }   // Richmedia extension var rmButton; if ( ('SMW_RM_VERSION').InArray(window.parent.wgCKeditorUseBuildin4Extensions) || showTbButton) { CKEDITOR.plugins.addExternal( 'smw_richmedia', CKEDITOR.basePath + 'plugins/smwrichmedia/' ); extraPlugins += ",smw_richmedia"; rmButton = 'SMWrichmedia'; }

- Replace

['MWSpecialTags', 'MWTemplate', 'MWSignature', qiButton, wsButton, rmButton ], [ stbButton ],

with

['MWSpecialTags', 'MWTemplate', 'MWSignature', 'qiButton', 'wsButton', 'rmButton' ], [ 'stbButton' ],

2/ Fix: Indent function doesn't work

Open /WYSIWYG/ckeditor/plugins/mediawiki/plugin.js

Find these lines

if (sNodeName == 'p') { try { var style = htmlNode.getAttribute('style') || '', alignment = style.match(/text-align:\s*(\w+);?/i); if ( alignment[1].toLowerCase.IEquals("right", "center", "justify") ) { this._AppendTextNode( htmlNode, stringBuilder, sNodeName, prefix); return; }                       } catch (e) {}; }

Add after

if (sNodeName == 'p') { try { var style = htmlNode.getAttribute('style') || '', alignment = style.match(/margin-left:\s*(\w+);?/i); if ( alignment[1].toLowerCase.match("px") ) { this._AppendTextNode( htmlNode, stringBuilder, sNodeName, prefix); return; }                       } catch (e) {}; }

Hope this helps.