መልዕክት:Gadget-CodeEditor.js

From WikiMezmur, the free amharic mezmur lyrics database.
ዘልለው ለመሔድ፦ የማውጫ ቁልፎች, ፍለጋ

Note: After saving, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Internet Explorer: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
/**
 * MediaWiki:Gadget-codeeditor.js
 * Stub to load [[Extension:CodeEditor]] and Ace syntax-highlighting editor as a gadget.
 *
 * Requires enhanced editing toolbar (WikiEditor extension); integrates with toolbar.
 *
 * Gadget stub CC-BY-SA 2
 * (c) 2011 Brion Vibber <brion @ pobox.com>
 * 
 * Extension:CodeEditor JS bits are GPLv2 -- http://www.mediawiki.org/wiki/Extension:CodeEditor
 *
 * Syntax highlighting, auto-indenting code editor widget for on-wiki JS and CSS pages.
 * Uses embedded Ajax.org Cloud9 Editor: http://ace.ajax.org/
 * MPL/LGPL/GPL
 */
(function($) {
    // @fixme need an SSL alternative
    mw.config.set('wgCodeEditorAssetsPath', '//toolserver.org/~brion/extensions');
    var moduleBase = mw.config.get('wgCodeEditorAssetsPath') + '/CodeEditor/modules',
        $box = $('#wpTextbox1'),
        matches = /\.(js|css)$/.exec(mw.config.get('wgTitle'));
    if ($box.length && matches && (wgNamespaceNumber === 2 /* User: */ || wgNamespaceNumber === 8 /* MediaWiki: */)) {
        $(function() {
            var modules = [
                moduleBase + '/ace/ace.js',
                moduleBase + '/ace/mode-javascript.js',
                moduleBase + '/ace/mode-css.js',
                moduleBase + '/jquery.codeEditor.js',
                moduleBase + '/ext.codeEditor.js'
            ];
            var i = 0;
            // @fixme loading serially is kinda lame, but it works for now
            var ping = function() {
                if ( i < modules.length ) {
                    var url = modules[i];
                    $.getScript(url, function() {
                        i++;
                        ping();
                    });
                }
            };
            ping();
        });
    }
})(jQuery);