Index: trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php |
— | — | @@ -78,14 +78,14 @@ |
79 | 79 | array( 'src' => 'js/plugins/jquery.wikiEditor.dialogs.js', 'version' => 19 ), |
80 | 80 | array( 'src' => 'js/plugins/jquery.wikiEditor.toc.js', 'version' => 97 ), |
81 | 81 | array( 'src' => 'js/plugins/jquery.wikiEditor.preview.js', 'version' => 11 ), |
82 | | - array( 'src' => 'js/plugins/jquery.wikiEditor.templateEditor.js', 'version' => 41 ), |
| 82 | + array( 'src' => 'js/plugins/jquery.wikiEditor.templateEditor.js', 'version' => 42 ), |
83 | 83 | array( 'src' => 'js/plugins/jquery.wikiEditor.publish.js', 'version' => 3 ), |
84 | 84 | ), |
85 | 85 | 'combined' => array( |
86 | | - array( 'src' => 'js/plugins.combined.js', 'version' => 310 ), |
| 86 | + array( 'src' => 'js/plugins.combined.js', 'version' => 311 ), |
87 | 87 | ), |
88 | 88 | 'minified' => array( |
89 | | - array( 'src' => 'js/plugins.combined.min.js', 'version' => 310 ), |
| 89 | + array( 'src' => 'js/plugins.combined.min.js', 'version' => 311 ), |
90 | 90 | ), |
91 | 91 | ), |
92 | 92 | ); |
Index: trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.templateEditor.js |
— | — | @@ -211,7 +211,7 @@ |
212 | 212 | var $templateText = $templateDiv.children( '.wikiEditor-template-text' ); |
213 | 213 | var templateModel = $templateText.data( 'model' ); |
214 | 214 | $( this ).find( '.wikiEditor-template-dialog-field-wrapper textarea' ).each( function() { |
215 | | - templateModel.setValue( $( this ).data( 'name' ), $( this ).val() ); |
| 215 | + templateModel.setValue( $( this ).data( 'name' ), $( this ).val().replace( /\n+/g, '/n' ) ); |
216 | 216 | }); |
217 | 217 | //keep text consistent |
218 | 218 | $.wikiEditor.modules.templateEditor.fn.updateModel( $templateText, templateModel ); |
— | — | @@ -264,11 +264,13 @@ |
265 | 265 | .data( 'name', param.name ) |
266 | 266 | .val( paramVal ) |
267 | 267 | .data( 'expanded', false ) |
268 | | - .bind( 'cut paste keypress click change', function() { |
269 | | - var $this = $(this); |
| 268 | + .bind( 'cut paste keypress click change', function( e ) { |
| 269 | + // If this was fired by a tab keypress, let it go |
| 270 | + if ( e.keyCode == '9' ) return true; |
| 271 | + var $this = $( this ); |
270 | 272 | setTimeout( function() { |
271 | 273 | var expanded = $this.data( 'expanded' ); |
272 | | - if ( $this.val().length > 24 ) { |
| 274 | + if ( $this.val().match( /\n/ ) || $this.val().length > 24 ) { |
273 | 275 | if ( !expanded ) { |
274 | 276 | $this.animate( { 'height': '4.5em' }, 'fast' ); |
275 | 277 | $this.data( 'expanded', true ); |
Index: trunk/extensions/UsabilityInitiative/js/plugins.combined.js |
— | — | @@ -9325,7 +9325,7 @@ |
9326 | 9326 | var $templateText = $templateDiv.children( '.wikiEditor-template-text' ); |
9327 | 9327 | var templateModel = $templateText.data( 'model' ); |
9328 | 9328 | $( this ).find( '.wikiEditor-template-dialog-field-wrapper textarea' ).each( function() { |
9329 | | - templateModel.setValue( $( this ).data( 'name' ), $( this ).val() ); |
| 9329 | + templateModel.setValue( $( this ).data( 'name' ), $( this ).val().replace( /\n+/g, '/n' ) ); |
9330 | 9330 | }); |
9331 | 9331 | //keep text consistent |
9332 | 9332 | $.wikiEditor.modules.templateEditor.fn.updateModel( $templateText, templateModel ); |
— | — | @@ -9378,11 +9378,13 @@ |
9379 | 9379 | .data( 'name', param.name ) |
9380 | 9380 | .val( paramVal ) |
9381 | 9381 | .data( 'expanded', false ) |
9382 | | - .bind( 'cut paste keypress click change', function() { |
9383 | | - var $this = $(this); |
| 9382 | + .bind( 'cut paste keypress click change', function( e ) { |
| 9383 | + // If this was fired by a tab keypress, let it go |
| 9384 | + if ( e.keyCode == '9' ) return true; |
| 9385 | + var $this = $( this ); |
9384 | 9386 | setTimeout( function() { |
9385 | 9387 | var expanded = $this.data( 'expanded' ); |
9386 | | - if ( $this.val().length > 24 ) { |
| 9388 | + if ( $this.val().match( /\n/ ) || $this.val().length > 24 ) { |
9387 | 9389 | if ( !expanded ) { |
9388 | 9390 | $this.animate( { 'height': '4.5em' }, 'fast' ); |
9389 | 9391 | $this.data( 'expanded', true ); |
Index: trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js |
— | — | @@ -645,9 +645,9 @@ |
646 | 646 | <fieldset>\ |
647 | 647 | <div class="wikiEditor-template-dialog-title" />\ |
648 | 648 | <div class="wikiEditor-template-dialog-fields" />\ |
649 | | - </fieldset>',init:function(){$(this).find('[rel]').each(function(){$(this).text(mw.usability.getMsg($(this).attr('rel')));});},dialog:{width:600,height:400,dialogClass:'wikiEditor-toolbar-dialog',buttons:{'wikieditor-template-editor-dialog-submit':function(){var $templateDiv=$(this).data('templateDiv');context.fn.highlightLine($templateDiv);var $templateText=$templateDiv.children('.wikiEditor-template-text');var templateModel=$templateText.data('model');$(this).find('.wikiEditor-template-dialog-field-wrapper textarea').each(function(){templateModel.setValue($(this).data('name'),$(this).val());});$.wikiEditor.modules.templateEditor.fn.updateModel($templateText,templateModel);$(this).dialog('close');}},open:function(){var $templateDiv=$(this).data('templateDiv');var $templateText=$templateDiv.children('.wikiEditor-template-text');var templateModel=$templateText.data('model');if($templateText.html()!=$templateText.data('oldHTML')){templateModel=$.wikiEditor.modules.templateEditor.fn.updateModel($templateText);} |
| 649 | + </fieldset>',init:function(){$(this).find('[rel]').each(function(){$(this).text(mw.usability.getMsg($(this).attr('rel')));});},dialog:{width:600,height:400,dialogClass:'wikiEditor-toolbar-dialog',buttons:{'wikieditor-template-editor-dialog-submit':function(){var $templateDiv=$(this).data('templateDiv');context.fn.highlightLine($templateDiv);var $templateText=$templateDiv.children('.wikiEditor-template-text');var templateModel=$templateText.data('model');$(this).find('.wikiEditor-template-dialog-field-wrapper textarea').each(function(){templateModel.setValue($(this).data('name'),$(this).val().replace(/\n+/g,'/n'));});$.wikiEditor.modules.templateEditor.fn.updateModel($templateText,templateModel);$(this).dialog('close');}},open:function(){var $templateDiv=$(this).data('templateDiv');var $templateText=$templateDiv.children('.wikiEditor-template-text');var templateModel=$templateText.data('model');if($templateText.html()!=$templateText.data('oldHTML')){templateModel=$.wikiEditor.modules.templateEditor.fn.updateModel($templateText);} |
650 | 650 | var params=templateModel.getAllInitialParams();var $fields=$(this).find('.wikiEditor-template-dialog-fields');var $rows=$fields.find('.wikiEditor-template-dialog-field-wrapper');for(var paramIndex in params){var param=params[paramIndex];if(typeof param.name=='undefined'){continue;} |
651 | | -var paramText=typeof param=='string'?param.name.replace(/[\_\-]/g,' '):param.name;var paramVal=templateModel.getValue(param.name);if($rows.length>0){var $row=$rows.eq(0);$row.children('label').text(paramText);$row.children('textarea').data('name',param.name).val(paramVal).change();$rows=$rows.not($row);}else{var $paramRow=$('<div />').addClass('wikiEditor-template-dialog-field-wrapper');$('<label />').text(paramText).appendTo($paramRow);$('<textarea />').data('name',param.name).val(paramVal).data('expanded',false).bind('cut paste keypress click change',function(){var $this=$(this);setTimeout(function(){var expanded=$this.data('expanded');if($this.val().length>24){if(!expanded){$this.animate({'height':'4.5em'},'fast');$this.data('expanded',true);}}else{if(expanded){$this.animate({'height':'1.5em'},'fast');$this.data('expanded',false);}}},0);}).appendTo($paramRow);$paramRow.append('<div style="clear:both"></div>').appendTo($fields);}} |
| 651 | +var paramText=typeof param=='string'?param.name.replace(/[\_\-]/g,' '):param.name;var paramVal=templateModel.getValue(param.name);if($rows.length>0){var $row=$rows.eq(0);$row.children('label').text(paramText);$row.children('textarea').data('name',param.name).val(paramVal).change();$rows=$rows.not($row);}else{var $paramRow=$('<div />').addClass('wikiEditor-template-dialog-field-wrapper');$('<label />').text(paramText).appendTo($paramRow);$('<textarea />').data('name',param.name).val(paramVal).data('expanded',false).bind('cut paste keypress click change',function(e){if(e.keyCode=='9')return true;var $this=$(this);setTimeout(function(){var expanded=$this.data('expanded');if($this.val().match(/\n/)||$this.val().length>24){if(!expanded){$this.animate({'height':'4.5em'},'fast');$this.data('expanded',true);}}else{if(expanded){$this.animate({'height':'1.5em'},'fast');$this.data('expanded',false);}}},0);}).appendTo($paramRow);$paramRow.append('<div style="clear:both"></div>').appendTo($fields);}} |
652 | 652 | $rows.remove();$fields.find('label').autoEllipsis();$(this).parent('.ui-dialog').find('.ui-dialog-titlebar-close').removeClass('ui-state-focus');}}};function createDialog($templateDiv){context.$textarea.wikiEditor('addDialog',{'templateEditor':dialog});$('#'+dialog.id).data('templateDiv',$templateDiv).dialog('open');}},unwrapTemplate:function($wrapper){$wrapper.parent().replaceWith($wrapper);},updateModel:function($templateText,model){var context=$templateText.data('marker').context;var text;if(typeof model=='undefined'){text=context.fn.htmlToText($templateText.html());}else{text=model.getText();} |
653 | 653 | $templateText.text(text);$templateText.html($templateText.html().replace(/\n/g,'<br />'));$templateText.data('oldHTML',$templateText.html());if(typeof model=='undefined'){model=new $.wikiEditor.modules.templateEditor.fn.model(text);$templateText.data('model',model);} |
654 | 654 | return model;},getTemplateInfo:function(templateName){var templateInfo='';return $(templateInfo);},model:function(wikitext){var collapsible=true;function Param(name,value,number,nameIndex,equalsIndex,valueIndex){this.name=name;this.value=value;this.number=number;this.nameIndex=nameIndex;this.equalsIndex=equalsIndex;this.valueIndex=valueIndex;} |