http://www.mediawiki.org/wiki/Special:Code/MediaWiki/89482
Revision: 89482
Author: salvatoreingala
Date: 2011-06-04 22:07:22 +0000 (Sat, 04 Jun 2011)
Log Message:
-----------
- Added messages
- Several small fixes and improvements
Modified Paths:
--------------
branches/salvatoreingala/Gadgets/Gadgets.i18n.php
branches/salvatoreingala/Gadgets/Gadgets.php
branches/salvatoreingala/Gadgets/Gadgets_body.php
branches/salvatoreingala/Gadgets/modules/ext.gadgets.preferences.js
branches/salvatoreingala/Gadgets/modules/jquery.formBuilder.js
Property Changed:
----------------
branches/salvatoreingala/Gadgets/
branches/salvatoreingala/Gadgets/Gadgets_body.php
Property changes on: branches/salvatoreingala/Gadgets
___________________________________________________________________
Modified: svn:mergeinfo
- /trunk/extensions/Gadgets:88253-88717
+ /trunk/extensions/Gadgets:88253-89450
Modified: branches/salvatoreingala/Gadgets/Gadgets.i18n.php
===================================================================
--- branches/salvatoreingala/Gadgets/Gadgets.i18n.php 2011-06-04 21:56:44 UTC
(rev 89481)
+++ branches/salvatoreingala/Gadgets/Gadgets.i18n.php 2011-06-04 22:07:22 UTC
(rev 89482)
@@ -43,9 +43,17 @@
<pre>$2</pre>
You must have appropriate permissions on destination wiki (including the right
to edit system messages) and import from file uploads must be enabled.',
'gadgets-export-download' => 'Download',
+ 'gadgets-configure' => 'Configure',
+ 'gadgets-configuration-of' => 'Configuration of $1',
+ 'gadgets-unexpected-error' => 'An unexpected error occurred. Please
check your connection. If the problems persists, please contact the
developers.',
+ 'gadgets-save-success' => 'Settings saved successfully.',
+ 'gadgets-save-failed' => 'Failed to save settings. If the problems
persists, please contact the developers.',
'gadgets-ajax-wrongparams' => 'An AJAX request with wrong parameters
has been made; this is most likely a bug.',
'gadgets-ajax-wrongsyntax' => 'There was an unexpected error while
reading the saved gadget\'s configuration description.',
'gadgets-ajax-unlogged' => 'This action is only allowed to registered,
logged in users.',
+ 'gadgets-formbuilder-required' => 'This field is required.',
+ 'gadgets-formbuilder-minlength' => 'Please enter at least $1
characters.',
+ 'gadgets-formbuilder-maxlength' => 'Please enter no more than $1
characters.',
);
/** Message documentation (Message documentation)
@@ -510,10 +518,14 @@
'gadgets-pagetext' => 'Nedenstående er en liste med de specielle
gadgets som brugere kan aktivere i deres [[Special:Preferences|indstillinger]],
som defineret i [[MediaWiki:Gadgets-definition|definitionerne]].
Denne oversigtsside giver simpel adgang til de beskedsider som definerer hver
gadgets beskrivelse og kode.',
'gadgets-uses' => 'Bruger',
+ 'gadgets-required-rights' => 'Kræver {{PLURAL:$2|rettigheden
$1|følgende rettigheder: $1}}.',
'gadgets-default' => 'Aktiveret for alle som standard.',
'gadgets-export' => 'Eksporter',
'gadgets-export-title' => 'Eksporter gadget',
'gadgets-not-found' => 'Gadget "$1" ikke fundet.',
+ 'gadgets-export-text' => 'For at eksportere værktøjet $1, klik på
knappen "{{int:gadgets-export-download}}", gem den downloadede fil, gå til
Special:Import på destinationswikien og læg den op. Tilføj så følgende til
siden MediaWiki:Gadgets-definition:
+<pre>$2</pre>
+Du skal have de nødvendige rettigheder på destinationswikien (herunder
rettigheden til at redigere systemmeddelelser) og importering via oplægning af
filer skal være slået til.',
'gadgets-export-download' => 'Download',
);
Modified: branches/salvatoreingala/Gadgets/Gadgets.php
===================================================================
--- branches/salvatoreingala/Gadgets/Gadgets.php 2011-06-04 21:56:44 UTC
(rev 89481)
+++ branches/salvatoreingala/Gadgets/Gadgets.php 2011-06-04 22:07:22 UTC
(rev 89482)
@@ -63,7 +63,7 @@
);
$wgResourceModules['jquery.validate'] = array(
- 'scripts' => array( 'jquery.validate.js' ), //TODO:
include i18n scripts?
+ 'scripts' => array( 'jquery.validate.js' ),
'dependencies' => array( 'jquery' ),
'localBasePath' => $dir . 'modules/',
'remoteExtPath' => 'Gadgets/modules'
@@ -72,13 +72,21 @@
$wgResourceModules['jquery.formBuilder'] = array(
'scripts' => array( 'jquery.formBuilder.js' ),
'dependencies' => array( 'jquery', 'jquery.validate' ),
+ 'messages' => array( 'gadgets-formbuilder-required',
'gadgets-formbuilder-minlength', 'gadgets-formbuilder-maxlength' ),
'localBasePath' => $dir . 'modules/',
'remoteExtPath' => 'Gadgets/modules'
);
$wgResourceModules['ext.gadgets.preferences'] = array(
'scripts' => array( 'ext.gadgets.preferences.js' ),
- 'dependencies' => array( 'jquery', 'jquery.json', 'jquery.ui.dialog',
'jquery.formBuilder', 'mediawiki.htmlform', 'ext.gadgets' ),
+ 'dependencies' => array(
+ 'jquery', 'jquery.json', 'jquery.ui.dialog',
'jquery.formBuilder',
+ 'mediawiki.htmlform', 'ext.gadgets'
+ ),
+ 'messages' => array(
+ 'gadgets-configure', 'gadgets-configuration-of',
'gadgets-unexpected-error',
+ 'gadgets-save-success', 'gadgets-save-failed'
+ ),
'localBasePath' => $dir . 'modules/',
'remoteExtPath' => 'Gadgets/modules'
);
Modified: branches/salvatoreingala/Gadgets/Gadgets_body.php
===================================================================
--- branches/salvatoreingala/Gadgets/Gadgets_body.php 2011-06-04 21:56:44 UTC
(rev 89481)
+++ branches/salvatoreingala/Gadgets/Gadgets_body.php 2011-06-04 22:07:22 UTC
(rev 89482)
@@ -658,7 +658,7 @@
$count = 0; //count of present mandatory members
foreach ( $optionDefinition as $fieldName =>
$fieldValue ) {
- if ( strcmp( $fieldName, 'type' ) == 0) {
+ if ( $fieldName == 'type' ) {
continue; //'type' must not be checked
}
Property changes on: branches/salvatoreingala/Gadgets/Gadgets_body.php
___________________________________________________________________
Modified: svn:mergeinfo
- /branches/Gadgets-work/Gadgets_body.php:73145-76526
/branches/wmf/1.17wmf1/extensions/Gadgets/Gadgets_body.php:81884
/trunk/extensions/Gadgets/Gadgets_body.php:88253-88717
+ /branches/Gadgets-work/Gadgets_body.php:73145-76526
/branches/wmf/1.17wmf1/extensions/Gadgets/Gadgets_body.php:81884
/trunk/extensions/Gadgets/Gadgets_body.php:88253-89450
Modified: branches/salvatoreingala/Gadgets/modules/ext.gadgets.preferences.js
===================================================================
--- branches/salvatoreingala/Gadgets/modules/ext.gadgets.preferences.js
2011-06-04 21:56:44 UTC (rev 89481)
+++ branches/salvatoreingala/Gadgets/modules/ext.gadgets.preferences.js
2011-06-04 22:07:22 UTC (rev 89482)
@@ -18,16 +18,14 @@
dataType: "json",
success: function( response ) {
if ( response === true ) {
- alert( 'Configuration saved
successfully' );
+ alert( mw.msg( 'gadgets-save-success' )
);
$dialog.dialog( 'close' );
} else {
- //TODO
- alert( 'Something wrong happened' );
+ alert( mw.msg( 'gadgets-save-failed' )
);
}
},
error: function( response ) {
- //TODO
- alert( 'Something wrong happened' );
+ alert( mw.msg( 'gadgets-save-failed' ) );
}
} );
}
@@ -44,7 +42,7 @@
}
var $link = $( '<a></a>' )
- .text( "Configure" ) //TODO: use a message
instead
+ .text( mw.msg( 'gadgets-configure' ) )
.click( function() {
var postData =
'action=ajax&rs=GadgetsAjax::getPreferences' +
'&rsargs[]=gadget|' +
encodeURIComponent( gadget );
@@ -61,13 +59,16 @@
var dialogBody = $(
response ).formBuilder();
- //window.validator = $(
dialogBody ).validate();
+ $( dialogBody ).submit(
function() {
+ return false;
//prevent form submission
+ } );
+
$( dialogBody ).dialog(
{
modal: true,
width: 'auto',
resizable:
false,
- title:
'Configuration of ' + gadget, //TODO: use messages
+ title: mw.msg(
'gadgets-configuration-of', gadget ),
close:
function() {
$( this
).dialog( 'destroy' ).empty(); //completely destroy on close
},
@@ -89,8 +90,7 @@
} );
},
error: function( response ) {
- //TODO
- alert( 'Something wrong
happened' );
+ alert( mw.msg(
'gadgets-unexpected-error' ) );
}
} );
Modified: branches/salvatoreingala/Gadgets/modules/jquery.formBuilder.js
===================================================================
--- branches/salvatoreingala/Gadgets/modules/jquery.formBuilder.js
2011-06-04 21:56:44 UTC (rev 89481)
+++ branches/salvatoreingala/Gadgets/modules/jquery.formBuilder.js
2011-06-04 22:07:22 UTC (rev 89482)
@@ -29,7 +29,7 @@
function EmptyField( name, desc ) {
//Check existence of compulsory fields
if ( typeof name == 'undefined' || !desc.type || !desc.label ) {
- throw new Error( "Missing arguments" ); //TODO
+ $.error( "Missing arguments" );
}
this.$p = $( '<p/>' );
@@ -80,7 +80,7 @@
LabelField.call( this, name, desc );
if ( typeof desc.value != 'boolean' ) {
- throw new Error( "desc.value is invalid" );
+ $.error( "desc.value is invalid" );
}
this.$c = $( '<input/>' )
@@ -104,7 +104,7 @@
LabelField.call( this, name, desc );
if ( typeof desc.value != 'string' ) {
- throw new Error( "desc.value is invalid" );
+ $.error( "desc.value is invalid" );
}
this.$text = $( '<input/>' )
@@ -121,8 +121,6 @@
};
StringField.prototype.getValidationSettings = function() {
- //TODO: messages
-
var settings = {
rules: {}
},
@@ -136,12 +134,20 @@
fieldRules.required = true;
}
- if ( typeof desc.minLength != 'undefined' ) {
- fieldRules.minlength = desc.minLength;
+ if ( typeof desc.minlength != 'undefined' ) {
+ fieldRules.minlength = desc.minlength;
}
- if ( typeof desc.maxLength != 'undefined' ) {
- fieldRules.maxlength = desc.maxLength;
+ if ( typeof desc.maxlength != 'undefined' ) {
+ fieldRules.maxlength = desc.maxlength;
}
+
+ settings.messages = {};
+
+ settings.messages[fieldId] = {
+ "required": mw.msg( 'gadgets-formbuilder-required' ),
+ "minlength": mw.msg( 'gadgets-formbuilder-minlength',
desc.minlength ),
+ "maxlength": mw.msg( 'gadgets-formbuilder-maxlength',
desc.maxlength )
+ };
return settings;
}
@@ -154,23 +160,17 @@
"string" : StringField
};
- function log( message ) {
- if ( typeof window.console != 'undefined' ) {
- console.warn( message );
- }
- }
-
function buildFormBody() {
var description = this.get(0);
- if (typeof description != 'object' ) {
- log( "description should be an object, instead of a " +
typeof description );
+ if ( typeof description != 'object' ) {
+ mw.log( "description should be an object, instead of a
" + typeof description );
return null;
}
var $form = $( '<form/>' );
var $fieldset = $( '<fieldset/>' ).appendTo( $form );
- if (typeof description.label == 'string' ) {
+ if ( typeof description.label == 'string' ) {
$( '<legend/>' )
.text( $s( description.label ) )
.appendTo( $fieldset );
@@ -178,8 +178,8 @@
//TODO: manage form params
- if (typeof description.fields != 'object' ) {
- log( "description.fields should be an object, instead
of a " + typeof description.fields );
+ if ( typeof description.fields != 'object' ) {
+ mw.log( "description.fields should be an object,
instead of a " + typeof description.fields );
return null;
}
@@ -197,14 +197,14 @@
var FieldConstructor = validFields[field.type];
if ( typeof FieldConstructor != 'function' ) {
- log( "field with invalid type: " +
field.type );
+ mw.log( "field with invalid type: " +
field.type );
return null;
}
try {
var f = new FieldConstructor(
fieldName, field );
} catch ( e ) {
- log( e );
+ mw.log( e );
return null; //constructor failed,
wrong syntax in field description
}
@@ -218,9 +218,6 @@
}
fields.push( f );
-
- //TODO: validation of the field
-
}
}
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs