Diferencia entre revisiones de «MediaWiki:Common.js»
De EIFA - Estudios Interdisciplinares de las Fuentes Avilistas
Línea 6: | Línea 6: | ||
function makeMyTool() { | function makeMyTool() { | ||
//Create and register command | //Create and register command | ||
var myTemplate = [ { | var myTemplate = [ { | ||
type: 'mwTransclusionBlock', | type: 'mwTransclusionBlock', | ||
Línea 19: | Línea 13: | ||
template: { | template: { | ||
target: { | target: { | ||
href: 'Template: | href: 'Template:MyTemplate', | ||
wt: ' | wt: 'MyTemplate' | ||
}, | }, | ||
params: { | params: { | ||
1: { | 1: { | ||
wt: ' | wt: 'my parameter' | ||
} | } | ||
} | } | ||
Línea 41: | Línea 35: | ||
} ) | } ) | ||
); | ); | ||
//Create and register wikitext command | |||
if ( ve.ui.wikitextCommandRegistry ) { | |||
ve.ui.wikitextCommandRegistry.register( | |||
new ve.ui.Command( 'mycommand', 'mwWikitext', 'wrapSelection', { | |||
args: [ '{{MyTemplate|', '}}', 'my parameter' ], | |||
supportedSelections: [ 'linear' ] | |||
} ) | |||
); | |||
} | |||
//Create and register tool | //Create and register tool | ||
Línea 49: | Línea 53: | ||
MyTool.static.name = 'mytool'; | MyTool.static.name = 'mytool'; | ||
MyTool.static.group = ' | MyTool.static.group = 'textStyle'; | ||
MyTool.static.title = 'My tool'; | MyTool.static.title = 'My tool'; | ||
MyTool.static.commandName = 'mycommand'; | MyTool.static.commandName = 'mycommand'; | ||
ve.ui.toolFactory.register( MyTool ); | ve.ui.toolFactory.register( MyTool ); | ||
} | } |
Revisión del 17:27 13 ene 2022
/* Cualquier código JavaScript escrito aquí se cargará para todos los usuarios en cada carga de página */
(function () {
/* TODO LO QUE META AQUI LO VA A EJECUTAR ANTES DE CARGAR LA PAGINA */
function makeMyTool() {
//Create and register command
var myTemplate = [ {
type: 'mwTransclusionBlock',
attributes: {
mw: {
parts: [ {
template: {
target: {
href: 'Template:MyTemplate',
wt: 'MyTemplate'
},
params: {
1: {
wt: 'my parameter'
}
}
}
} ]
}
}
}, {
type: '/mwTransclusionBlock'
} ];
ve.ui.commandRegistry.register(
new ve.ui.Command( 'mycommand', 'content', 'insert', {
args: [ myTemplate, false, true ],
supportedSelections: [ 'linear' ]
} )
);
//Create and register wikitext command
if ( ve.ui.wikitextCommandRegistry ) {
ve.ui.wikitextCommandRegistry.register(
new ve.ui.Command( 'mycommand', 'mwWikitext', 'wrapSelection', {
args: [ '{{MyTemplate|', '}}', 'my parameter' ],
supportedSelections: [ 'linear' ]
} )
);
}
//Create and register tool
function MyTool() {
MyTool.parent.apply( this, arguments );
}
OO.inheritClass( MyTool, ve.ui.MWTransclusionDialogTool );
MyTool.static.name = 'mytool';
MyTool.static.group = 'textStyle';
MyTool.static.title = 'My tool';
MyTool.static.commandName = 'mycommand';
ve.ui.toolFactory.register( MyTool );
}
// Initialize
mw.hook( 've.loadModules' ).add( function( addPlugin ) {
addPlugin( makeMyTool );
} );
// Hasta aqui, lo que es util
// Esto es un Hello World, para comprobar que el codigo de verdad se ejecuta; para comprobarlo insertar <div id="mw-hello-world"></div>
var myElement = document.getElementById('mw-hello-world');
myElement.innerHTML = '<html>Hello World!!!</html>';
/* HASTA AQUI LO QUE EJECUTA ANTES DE CARGAR LA PAGINA */
});