http://www.mediawiki.org/wiki/Special:Code/MediaWiki/59526
Revision: 59526 Author: catrope Date: 2009-11-28 19:57:42 +0000 (Sat, 28 Nov 2009) Log Message: ----------- UsabilityInitiative: Cache browser compat check, combine some forgotten stuff for r59521 Modified Paths: -------------- trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php trunk/extensions/UsabilityInitiative/Vector/Vector.hooks.php trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.js trunk/extensions/UsabilityInitiative/js/plugins.combined.js trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js Modified: trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php =================================================================== --- trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php 2009-11-28 19:54:54 UTC (rev 59525) +++ trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php 2009-11-28 19:57:42 UTC (rev 59526) @@ -70,7 +70,7 @@ array( 'src' => 'js/plugins/jquery.namespaceSelect.js', 'version' => 1 ), array( 'src' => 'js/plugins/jquery.suggestions.js', 'version' => 6 ), array( 'src' => 'js/plugins/jquery.textSelection.js', 'version' => 20 ), - array( 'src' => 'js/plugins/jquery.wikiEditor.js', 'version' => 21 ), + array( 'src' => 'js/plugins/jquery.wikiEditor.js', 'version' => 22 ), array( 'src' => 'js/plugins/jquery.wikiEditor.highlight.js', 'version' => 1 ), array( 'src' => 'js/plugins/jquery.wikiEditor.toolbar.js', 'version' => 33 ), array( 'src' => 'js/plugins/jquery.wikiEditor.dialogs.js', 'version' => 9 ), @@ -79,10 +79,10 @@ array( 'src' => 'js/plugins/jquery.wikiEditor.publish.js', 'version' => 0 ), ), 'combined' => array( - array( 'src' => 'js/plugins.combined.js', 'version' => 90 ), + array( 'src' => 'js/plugins.combined.js', 'version' => 91 ), ), 'minified' => array( - array( 'src' => 'js/plugins.combined.min.js', 'version' => 90 ), + array( 'src' => 'js/plugins.combined.min.js', 'version' => 91 ), ), ), ); Modified: trunk/extensions/UsabilityInitiative/Vector/Vector.hooks.php =================================================================== --- trunk/extensions/UsabilityInitiative/Vector/Vector.hooks.php 2009-11-28 19:54:54 UTC (rev 59525) +++ trunk/extensions/UsabilityInitiative/Vector/Vector.hooks.php 2009-11-28 19:57:42 UTC (rev 59526) @@ -80,7 +80,7 @@ ) { UsabilityInitiativeHooks::initialize(); // Messages - if ( isset( self::$modules[$module]['i18n'], self::$modules[$module]['messages'] ) ) { + if ( isset( self::$modules[$module]['i18n'], self::$modules[$module]['messages'] ) ) { wfLoadExtensionMessages( self::$modules[$module]['i18n'] ); UsabilityInitiativeHooks::addMessages( self::$modules[$module]['messages'] ); } @@ -96,7 +96,7 @@ // Preferences if ( isset( self::$modules[$module]['preferences'] ) ) { foreach ( self::$modules[$module]['preferences'] as $name => $preference ) { - if ( !isset( $preferences[$module] ) ) { + if ( !isset( $preferences[$module] ) ) { $preferences[$module] = array(); } $preferences[$module][$name] = $wgUser->getOption( $preference['key'] ); Modified: trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.js =================================================================== --- trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.js 2009-11-28 19:54:54 UTC (rev 59525) +++ trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.js 2009-11-28 19:57:42 UTC (rev 59526) @@ -58,9 +58,13 @@ return $.browser.name in $.wikiEditor.browsers[$( 'body' ).is( '.rtl' ) ? 'rtl' : 'ltr']; }, 'isSupported': function() { + // Cache the return value + if ( $.wikiEditor.supported != undefined ) + return $.wikiEditor.supported; + if ( !$.wikiEditor.isSupportKnown ) { // Assume good faith :) - return true; + return $.wikiEditor.supported = true; } var browser = $.wikiEditor.browsers[$( 'body' ).is( '.rtl' ) ? 'rtl' : 'ltr'][$.browser.name]; for ( condition in browser ) { @@ -68,15 +72,15 @@ var val = browser[condition][1]; if ( typeof val == 'string' ) { if ( !( eval( '$.browser.version' + op + '"' + val + '"' ) ) ) { - return false; + return $.wikiEditor.supported = false; } } else if ( typeof val == 'number' ) { if ( !( eval( '$.browser.versionNumber' + op + val ) ) ) { - return false; + return $.wikiEditor.supported = false; } } } - return true; + return $.wikiEditor.supported = true; }, // Wraps gM from js2, but allows raw text to supercede 'autoMsg': function( object, property ) { Modified: trunk/extensions/UsabilityInitiative/js/plugins.combined.js =================================================================== --- trunk/extensions/UsabilityInitiative/js/plugins.combined.js 2009-11-28 19:54:54 UTC (rev 59525) +++ trunk/extensions/UsabilityInitiative/js/plugins.combined.js 2009-11-28 19:57:42 UTC (rev 59526) @@ -1364,9 +1364,13 @@ return $.browser.name in $.wikiEditor.browsers[$( 'body' ).is( '.rtl' ) ? 'rtl' : 'ltr']; }, 'isSupported': function() { + // Cache the return value + if ( $.wikiEditor.supported != undefined ) + return $.wikiEditor.supported; + if ( !$.wikiEditor.isSupportKnown ) { // Assume good faith :) - return true; + return $.wikiEditor.supported = true; } var browser = $.wikiEditor.browsers[$( 'body' ).is( '.rtl' ) ? 'rtl' : 'ltr'][$.browser.name]; for ( condition in browser ) { @@ -1374,15 +1378,15 @@ var val = browser[condition][1]; if ( typeof val == 'string' ) { if ( !( eval( '$.browser.version' + op + '"' + val + '"' ) ) ) { - return false; + return $.wikiEditor.supported = false; } } else if ( typeof val == 'number' ) { if ( !( eval( '$.browser.versionNumber' + op + val ) ) ) { - return false; + return $.wikiEditor.supported = false; } } } - return true; + return $.wikiEditor.supported = true; }, // Wraps gM from js2, but allows raw text to supercede 'autoMsg': function( object, property ) { @@ -2186,50 +2190,50 @@ */ create: function( context, config ) { // Build the dialog behind the Publish button - var dialogID = 'wikiEditor-' + context.instance + '-savedialog'; + var dialogID = 'wikiEditor-' + context.instance + '-dialog'; $.wikiEditor.modules.dialogs.fn.create( context, { previewsave: { id: dialogID, - titleMsg: 'wikieditor-publish-savedialog-title', + titleMsg: 'wikieditor-publish-dialog-title', html: '\ - <div class="wikiEditor-savedialog-copywarn"></div>\ - <div class="wikiEditor-savedialog-editoptions">\ + <div class="wikiEditor-dialog-copywarn"></div>\ + <div class="wikiEditor-dialog-editoptions">\ <form>\ - <label for="wikiEditor-' + context.instance + '-savedialog-summary"\ - rel="wikieditor-publish-savedialog-summary"></label>\ + <label for="wikiEditor-' + context.instance + '-dialog-summary"\ + rel="wikieditor-publish-dialog-summary"></label>\ <br />\ - <input type="text" id="wikiEditor-' + context.instance + '-savedialog-summary"\ + <input type="text" id="wikiEditor-' + context.instance + '-dialog-summary"\ style="width: 100%;" />\ <br />\ <input type="checkbox"\ - id="wikiEditor-' + context.instance + '-savedialog-minor" />\ - <label for="wikiEditor-' + context.instance + '-savedialog-minor"\ - rel="wikieditor-publish-savedialog-minor"></label>\ + id="wikiEditor-' + context.instance + '-dialog-minor" />\ + <label for="wikiEditor-' + context.instance + '-dialog-minor"\ + rel="wikieditor-publish-dialog-minor"></label>\ <br />\ <input type="checkbox"\ - id="wikiEditor-' + context.instance + '-savedialog-watch" />\ - <label for="wikiEditor-' + context.instance + '-savedialog-watch"\ - rel="wikieditor-publish-savedialog-watch"></label>\ + id="wikiEditor-' + context.instance + '-dialog-watch" />\ + <label for="wikiEditor-' + context.instance + '-dialog-watch"\ + rel="wikieditor-publish-dialog-watch"></label>\ </form>\ </div>', init: function() { $(this).find( '[rel]' ).each( function() { $(this).text( gM( $(this).attr( 'rel' ) ) ); }); - $(this).find( '.wikiEditor-savedialog-copywarn' ) + $(this).find( '.wikiEditor-dialog-copywarn' ) .html( $( '#editpage-copywarn' ).html() ); if ( $( '#wpMinoredit' ).size() == 0 ) - $( '#wikiEditor-' + context.instance + '-savedialog-minor' ).hide(); + $( '#wikiEditor-' + context.instance + '-dialog-minor' ).hide(); else if ( $( '#wpMinoredit' ).is( ':checked' ) ) - $( '#wikiEditor-' + context.instance + '-savedialog-minor' ) + $( '#wikiEditor-' + context.instance + '-dialog-minor' ) .attr( 'checked', 'checked' ); if ( $( '#wpWatchthis' ).size() == 0 ) - $( '#wikiEditor-' + context.instance + '-savedialog-watch' ).hide(); + $( '#wikiEditor-' + context.instance + '-dialog-watch' ).hide(); else if ( $( '#wpWatchthis' ).is( ':checked' ) ) - $( '#wikiEditor-' + context.instance + '-savedialog-watch' ) + $( '#wikiEditor-' + context.instance + '-dialog-watch' ) .attr( 'checked', 'checked' ); $(this).find( 'form' ).submit( function( e ) { @@ -2239,25 +2243,25 @@ }, dialog: { buttons: { - 'wikieditor-publish-savedialog-publish': function() { + 'wikieditor-publish-dialog-publish': function() { var minorChecked = $( '#wikiEditor-' + context.instance + - '-savedialog-minor' ).is( ':checked' ) ? + '-dialog-minor' ).is( ':checked' ) ? 'checked' : ''; var watchChecked = $( '#wikiEditor-' + context.instance + - '-savedialog-watch' ).is( ':checked' ) ? + '-dialog-watch' ).is( ':checked' ) ? 'checked' : ''; $( '#wpMinoredit' ).attr( 'checked', minorChecked ); $( '#wpWatchthis' ).attr( 'checked', watchChecked ); $( '#wpSummary' ).val( $j( '#wikiEditor-' + context.instance + - '-savedialog-summary' ).val() ); + '-dialog-summary' ).val() ); $( '#editform' ).submit(); }, - 'wikieditor-publish-savedialog-goback': function() { + 'wikieditor-publish-dialog-goback': function() { $(this).dialog( 'close' ); } }, open: function() { - $( '#wikiEditor-' + context.instance + '-savedialog-summary' ).focus(); + $( '#wikiEditor-' + context.instance + '-dialog-summary' ).focus(); }, width: 500 }, Modified: trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js =================================================================== --- trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js 2009-11-28 19:54:54 UTC (rev 59525) +++ trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js 2009-11-28 19:57:42 UTC (rev 59526) @@ -81,9 +81,10 @@ this.scrollTop+=range.offsetTop;else if(options.force){range.move('character',-1);range.select();}} $(this).trigger('scrollToPosition');});}};switch(command){case'encapsulateSelection':options=$.extend({'pre':'','peri':'','post':'','ownline':false,'replace':false},options);break;case'getCaretPosition':options=$.extend({'startAndEnd':false,},options);break;case'setSelection':options=$.extend({'start':undefined,'end':undefined},options);if(options.end===undefined) options.end=options.start;break;case'scrollToCaretPosition':options=$.extend({'force':false},options);break;} -var context=$(this).data('wikiEditor-context');var hasIframe=context!==undefined&&context.$iframe!==undefined;return(hasIframe?context.fn:fn)[command].call(this,options);};})(jQuery);(function($){$.wikiEditor={'modules':{},'instances':[],'browsers':{'ltr':{'msie':[['>=',7]],'firefox':[['>=',2],['!=','2.0'],['!=','2.0.0.1'],['!=','2.0.0.2'],['!=','2.0.0.3'],['!=','2.0.0.4']],'opera':[['>=',9.6]],'safari':[['>=',3.1]]},'rtl':{'msie':[['>=',8]],'firefox':[['>=',2],['!=','2.0'],['!=','2.0.0.1'],['!=','2.0.0.2'],['!=','2.0.0.3'],['!=','2.0.0.4']],'opera':[['>=',9.6]],'safari':[['>=',3.1]]}},'imgPath':wgScriptPath+'/extensions/UsabilityInitiative/images/wikiEditor/','isSupportKnown':function(){return $.browser.name in $.wikiEditor.browsers[$('body').is('.rtl')?'rtl':'ltr'];},'isSupported':function(){if(!$.wikiEditor.isSupportKnown){return true;} -var browser=$.wikiEditor.browsers[$('body').is('.rtl')?'rtl':'ltr'][$.browser.name];for(condition in browser){var op=browser[condition][0];var val=browser[condition][1];if(typeof val=='string'){if(!(eval('$.browser.version'+op+'"'+val+'"'))){return false;}}else if(typeof val=='number'){if(!(eval('$.browser.versionNumber'+op+val))){return false;}}} -return true;},'autoMsg':function(object,property){if(typeof property=='object'){for(i in property){if(property[i]in object||property[i]+'Msg'in object){property=property[i];break;}}} +var context=$(this).data('wikiEditor-context');var hasIframe=context!==undefined&&context.$iframe!==undefined;return(hasIframe?context.fn:fn)[command].call(this,options);};})(jQuery);(function($){$.wikiEditor={'modules':{},'instances':[],'browsers':{'ltr':{'msie':[['>=',7]],'firefox':[['>=',2],['!=','2.0'],['!=','2.0.0.1'],['!=','2.0.0.2'],['!=','2.0.0.3'],['!=','2.0.0.4']],'opera':[['>=',9.6]],'safari':[['>=',3.1]]},'rtl':{'msie':[['>=',8]],'firefox':[['>=',2],['!=','2.0'],['!=','2.0.0.1'],['!=','2.0.0.2'],['!=','2.0.0.3'],['!=','2.0.0.4']],'opera':[['>=',9.6]],'safari':[['>=',3.1]]}},'imgPath':wgScriptPath+'/extensions/UsabilityInitiative/images/wikiEditor/','isSupportKnown':function(){return $.browser.name in $.wikiEditor.browsers[$('body').is('.rtl')?'rtl':'ltr'];},'isSupported':function(){if($.wikiEditor.supported!=undefined) +return $.wikiEditor.supported;if(!$.wikiEditor.isSupportKnown){return $.wikiEditor.supported=true;} +var browser=$.wikiEditor.browsers[$('body').is('.rtl')?'rtl':'ltr'][$.browser.name];for(condition in browser){var op=browser[condition][0];var val=browser[condition][1];if(typeof val=='string'){if(!(eval('$.browser.version'+op+'"'+val+'"'))){return $.wikiEditor.supported=false;}}else if(typeof val=='number'){if(!(eval('$.browser.versionNumber'+op+val))){return $.wikiEditor.supported=false;}}} +return $.wikiEditor.supported=true;},'autoMsg':function(object,property){if(typeof property=='object'){for(i in property){if(property[i]in object||property[i]+'Msg'in object){property=property[i];break;}}} if(property in object){return object[property];}else if(property+'Msg'in object){return gM(object[property+'Msg']);}else{return'';}},'fixOperaBrokenness':function(s){return s;}};$.fn.wikiEditor=function(){if($j.wikiEditor.isSupportKnown()&&!$j.wikiEditor.isSupported()){return $(this);} var context=$(this).data('wikiEditor-context');if(typeof context=='undefined'){var instance=$.wikiEditor.instances.length;context={'$textarea':$(this),'views':{},'modules':{},'data':{},'instance':instance};$.wikiEditor.instances[instance]=$(this);context.api={'addModule':function(context,data){function callModuleApi(module,call,data){if(module in $.wikiEditor.modules&&'fn'in $.wikiEditor.modules[module]&&call in $.wikiEditor.modules[module].fn){$.wikiEditor.modules[module].fn[call](context,data);}} if(typeof data=='string'){callModuleApi(data,'create',{});}else if(typeof data=='object'){for(module in data){if(typeof module=='string'){callModuleApi(module,'create',data[module]);}}}}};for(module in $.wikiEditor.modules){if('api'in $.wikiEditor.modules[module]){for(call in $.wikiEditor.modules[module].api){if(!(call in context.api)){context.api[call]=$.wikiEditor.modules[module].api[call];}}}} @@ -115,31 +116,31 @@ $(this).css('white-space',oldWS);oldHidden.each(function(){$(this).attr('style',$(this).data('oldstyle'));});}},modules:{},quickDialog:function(body,settings){$('<div />').text(body).appendTo($('body')).dialog($.extend({bgiframe:true,modal:true},settings)).dialog('open');}};})(jQuery);(function($){$.wikiEditor.modules.highlight={api:{},evt:{change:function(event){}},fn:{create:function(context,config){},divide:function(context){},isolate:function(context){return[];},strip:function(context,division){return $('<div />').html(division.html().replace(/\<br[^\>]*\>/g,"\n")).text();},scan:function(context,division){return[];},mark:function(context,division,tokens){}}};})(jQuery);(function($){$.wikiEditor.modules.preview={api:{},fn:{create:function(context,config){if('preview'in context.modules){return;} context.modules.preview={'previousText':null};context.$preview=context.fn.addView({'name':'preview','titleMsg':'wikieditor-preview-tab','init':function(context){var wikitext=context.fn.getContents();if(context.modules.preview.previousText==wikitext){return;} context.$preview.find('.wikiEditor-preview-contents').empty();context.$preview.find('.wikiEditor-preview-loading').show();$.post(wgScriptPath+'/api.php',{'action':'parse','title':wgPageName,'text':wikitext,'prop':'text','pst':'','format':'json'},function(data){if(data.parse==undefined||data.parse.text==undefined||data.parse.text['*']==undefined){return;} -context.modules.preview.previousText=wikitext;context.$preview.find('.wikiEditor-preview-loading').hide();context.$preview.find('.wikiEditor-preview-contents').html(data.parse.text['*']);},'json');}});var loadingMsg=gM('wikieditor-preview-loading');context.$preview.append($('<div />').addClass('wikiEditor-preview-loading').append($('<img />').addClass('wikiEditor-preview-spinner').attr({'src':$.wikiEditor.imgPath+'dialogs/loading.gif','valign':'absmiddle','alt':loadingMsg,'title':loadingMsg})).append($('<span></span>').text(loadingMsg))).append($('<div />').addClass('wikiEditor-preview-contents'));}}};})(jQuery);(function($){$.wikiEditor.modules.publish={api:{},fn:{create:function(context,config){var dialogID='wikiEditor-'+context.instance+'-savedialog';$.wikiEditor.modules.dialogs.fn.create(context,{previewsave:{id:dialogID,titleMsg:'wikieditor-publish-savedialog-title',html:'\ - <div class="wikiEditor-savedialog-copywarn"></div>\ - <div class="wikiEditor-savedialog-editoptions">\ +context.modules.preview.previousText=wikitext;context.$preview.find('.wikiEditor-preview-loading').hide();context.$preview.find('.wikiEditor-preview-contents').html(data.parse.text['*']);},'json');}});var loadingMsg=gM('wikieditor-preview-loading');context.$preview.append($('<div />').addClass('wikiEditor-preview-loading').append($('<img />').addClass('wikiEditor-preview-spinner').attr({'src':$.wikiEditor.imgPath+'dialogs/loading.gif','valign':'absmiddle','alt':loadingMsg,'title':loadingMsg})).append($('<span></span>').text(loadingMsg))).append($('<div />').addClass('wikiEditor-preview-contents'));}}};})(jQuery);(function($){$.wikiEditor.modules.publish={api:{},fn:{create:function(context,config){var dialogID='wikiEditor-'+context.instance+'-dialog';$.wikiEditor.modules.dialogs.fn.create(context,{previewsave:{id:dialogID,titleMsg:'wikieditor-publish-dialog-title',html:'\ + <div class="wikiEditor-dialog-copywarn"></div>\ + <div class="wikiEditor-dialog-editoptions">\ <form>\ - <label for="wikiEditor-'+context.instance+'-savedialog-summary"\ - rel="wikieditor-publish-savedialog-summary"></label>\ + <label for="wikiEditor-'+context.instance+'-dialog-summary"\ + rel="wikieditor-publish-dialog-summary"></label>\ <br />\ - <input type="text" id="wikiEditor-'+context.instance+'-savedialog-summary"\ + <input type="text" id="wikiEditor-'+context.instance+'-dialog-summary"\ style="width: 100%;" />\ <br />\ <input type="checkbox"\ - id="wikiEditor-'+context.instance+'-savedialog-minor" />\ - <label for="wikiEditor-'+context.instance+'-savedialog-minor"\ - rel="wikieditor-publish-savedialog-minor"></label>\ + id="wikiEditor-'+context.instance+'-dialog-minor" />\ + <label for="wikiEditor-'+context.instance+'-dialog-minor"\ + rel="wikieditor-publish-dialog-minor"></label>\ <br />\ <input type="checkbox"\ - id="wikiEditor-'+context.instance+'-savedialog-watch" />\ - <label for="wikiEditor-'+context.instance+'-savedialog-watch"\ - rel="wikieditor-publish-savedialog-watch"></label>\ + id="wikiEditor-'+context.instance+'-dialog-watch" />\ + <label for="wikiEditor-'+context.instance+'-dialog-watch"\ + rel="wikieditor-publish-dialog-watch"></label>\ </form>\ - </div>',init:function(){$(this).find('[rel]').each(function(){$(this).text(gM($(this).attr('rel')));});$(this).find('.wikiEditor-savedialog-copywarn').html($('#editpage-copywarn').html());if($('#wpMinoredit').size()==0) -$('#wikiEditor-'+context.instance+'-savedialog-minor').hide();else if($('#wpMinoredit').is(':checked')) -$('#wikiEditor-'+context.instance+'-savedialog-minor').attr('checked','checked');if($('#wpWatchthis').size()==0) -$('#wikiEditor-'+context.instance+'-savedialog-watch').hide();else if($('#wpWatchthis').is(':checked')) -$('#wikiEditor-'+context.instance+'-savedialog-watch').attr('checked','checked');$(this).find('form').submit(function(e){$(this).closest('.ui-dialog').find('button:first').click();e.preventDefault();});},dialog:{buttons:{'wikieditor-publish-savedialog-publish':function(){var minorChecked=$('#wikiEditor-'+context.instance+'-savedialog-minor').is(':checked')?'checked':'';var watchChecked=$('#wikiEditor-'+context.instance+'-savedialog-watch').is(':checked')?'checked':'';$('#wpMinoredit').attr('checked',minorChecked);$('#wpWatchthis').attr('checked',watchChecked);$('#wpSummary').val($j('#wikiEditor-'+context.instance+'-savedialog-summary').val());$('#editform').submit();},'wikieditor-publish-savedialog-goback':function(){$(this).dialog('close');}},open:function(){$('#wikiEditor-'+context.instance+'-savedialog-summary').focus();},width:500},resizeme:false}});context.fn.addButton({'captionMsg':'wikieditor-publish-button-publish','action':function(){$('#'+dialogID).dialog('open');return false;}});context.fn.addButton({'captionMsg':'wikieditor-publish-button-cancel','action':function(){}});}}};})(jQuery);(function($){$.wikiEditor.modules.toc={api:{},defaultWidth:'166px',minimumWidth:'70px',fn:{create:function(context,config){if('$toc'in context.modules){return;} + </div>',init:function(){$(this).find('[rel]').each(function(){$(this).text(gM($(this).attr('rel')));});$(this).find('.wikiEditor-dialog-copywarn').html($('#editpage-copywarn').html());if($('#wpMinoredit').size()==0) +$('#wikiEditor-'+context.instance+'-dialog-minor').hide();else if($('#wpMinoredit').is(':checked')) +$('#wikiEditor-'+context.instance+'-dialog-minor').attr('checked','checked');if($('#wpWatchthis').size()==0) +$('#wikiEditor-'+context.instance+'-dialog-watch').hide();else if($('#wpWatchthis').is(':checked')) +$('#wikiEditor-'+context.instance+'-dialog-watch').attr('checked','checked');$(this).find('form').submit(function(e){$(this).closest('.ui-dialog').find('button:first').click();e.preventDefault();});},dialog:{buttons:{'wikieditor-publish-dialog-publish':function(){var minorChecked=$('#wikiEditor-'+context.instance+'-dialog-minor').is(':checked')?'checked':'';var watchChecked=$('#wikiEditor-'+context.instance+'-dialog-watch').is(':checked')?'checked':'';$('#wpMinoredit').attr('checked',minorChecked);$('#wpWatchthis').attr('checked',watchChecked);$('#wpSummary').val($j('#wikiEditor-'+context.instance+'-dialog-summary').val());$('#editform').submit();},'wikieditor-publish-dialog-goback':function(){$(this).dialog('close');}},open:function(){$('#wikiEditor-'+context.instance+'-dialog-summary').focus();},width:500},resizeme:false}});context.fn.addButton({'captionMsg':'wikieditor-publish-button-publish','action':function(){$('#'+dialogID).dialog('open');return false;}});context.fn.addButton({'captionMsg':'wikieditor-publish-button-cancel','action':function(){}});}}};})(jQuery);(function($){$.wikiEditor.modules.toc={api:{},defaultWidth:'166px',minimumWidth:'70px',fn:{create:function(context,config){if('$toc'in context.modules){return;} var height=context.$ui.find('.wikiEditor-ui-left').height();context.modules.$toc=$('<div />').addClass('wikiEditor-ui-toc').data('context',context);context.$ui.find('.wikiEditor-ui-right').css('width',$.wikiEditor.modules.toc.defaultWidth).append(context.modules.$toc);context.modules.$toc.height(context.$ui.find('.wikiEditor-ui-left').height());context.$ui.find('.wikiEditor-ui-left').css('marginRight',"-"+$.wikiEditor.modules.toc.defaultWidth).children().css('marginRight',$.wikiEditor.modules.toc.defaultWidth);$.wikiEditor.modules.toc.fn.build(context,config);context.$content.parent().delayedBind(250,'mouseup scrollToTop keyup change',function(){$(this).eachAsync({bulk:0,loop:function(){$.wikiEditor.modules.toc.fn.build(context);$.wikiEditor.modules.toc.fn.update(context);}});}).blur(function(event){var context=event.data.context;context.$textarea.delayedBindCancel(250,'mouseup scrollToTop keyup change');$.wikiEditor.modules.toc.fn.unhighlight(context);});},unhighlight:function(context){context.modules.$toc.find('div').removeClass('current');},update:function(context){$.wikiEditor.modules.toc.fn.unhighlight(context);var position=context.$textarea.textSelection('getCaretPosition');var section=0;if(context.data.outline.length>0){if(!(position<context.data.outline[0].position-1)){while(section<context.data.outline.length&&context.data.outline[section].position-1<position){section++;} section=Math.max(0,section);} var sectionLink=context.modules.$toc.find('div.section-'+section);sectionLink.addClass('current');var relTop=sectionLink.offset().top-context.modules.$toc.offset().top;var scrollTop=context.modules.$toc.scrollTop();var divHeight=context.modules.$toc.height();var sectionHeight=sectionLink.height();if(relTop<0) _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs