MediaWiki:Gadget-cambusa.js: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
rendo più chiaro quando una sezione è transclusa |
cerca un link diverso a seconda che il VE sia attivo |
||
| (3 versioni intermedie di 2 utenti non mostrate) | |||
Riga 24:
// La finestra di dialogo per configurare lo spostamento della discussione
var cambusaDialog;
// Nome dell'opzione nelle preferenze che controlla l'attivazione del VisualEditor
var veOptionName = 'visualeditor-betatempdisable';
// Chiavi dei messaggi che possono apparire come testo dei link di modifica sezione
var editLinkMsgKeys = {
0: 'visualeditor-ca-editsource-section', // VisualEditor attivo
1: 'editsection' // VisualEditor disattivo
};
/**
Riga 126 ⟶ 133:
extraPages[ formData.destNamespaceNum ].join( ', ' );
}
if ( error ) {
OO.ui.alert( error );
} else {
▲ cambusaDialog.close();
formData.destTitle = formData.destNamespace + ':' + formData.destTitle;
from = mw.config.get( 'wgPageName' ).replace( /_/g, ' ' );
Riga 139 ⟶ 147:
addSection( formData.destTitle, formData.destSectionTitle, text, function ( newrevid ) {
getSectionAnchor( newrevid, function ( anchor ) {
text = '==' + formData.
'{{Cambusa|' + formData.destIncipit + '|' + formData.destTitle + '#' + anchor + '|firma=~~\~~}}';
setSection( formData.sourceSection, text, 'cambusata discussione in [[' + formData.destTitle + ']]' );
Riga 206 ⟶ 214:
} ),
new OO.ui.FieldLayout( this.sectionTitleInput, {
label: 'Titolo
align: 'top'
} ),
Riga 228 ⟶ 236:
CambusaDialog.prototype.setSourceSection = function ( sourceSection, sourceSectionTitle, sourceText ) {
this.sourceSection = sourceSection;
this.sourceSectionTitle = sourceSectionTitle;
this.sectionTitleInput.setValue( sourceSectionTitle );
this.sourceText = sourceText;
Riga 241 ⟶ 250:
destNamespaceNum: this.namespaceDropdown.getMenu().findSelectedItem().getData(),
sourceSection: this.sourceSection,
sourceSectionTitle: this.sourceSectionTitle,
sourceText: this.sourceText
};
Riga 252 ⟶ 262:
* Aggiunge il link "Cambusa" a ogni sezione della pagina corrente.
*/
async function addCambusaLinks() {
await mw.loader.load( [ 'mediawiki.jqueryMsg', 'user.options' ] );
const editLinkMsgKey = editLinkMsgKeys[ mw.user.options.get( veOptionName ) ];
await api.loadMessagesIfMissing( [ editLinkMsgKey ] );
var windowManager;
$(
var href = $( el ).attr( 'href' );
var pageTitle = mw.util.getParamValue( 'title', href );
Riga 275 ⟶ 288:
.attr( 'title', 'Cambusa la discussione ' + sectionTitle )
.text( 'cambusa' )
.click(
event.preventDefault();
await mw.loader.
'oojs-ui-core', 'oojs-ui-widgets', 'oojs-ui-windows', 'mediawiki.widgets'
] );
▲ getSection( mw.util.getParamValue( 'section', href ), function ( text ) {
windowManager = new OO.ui.WindowManager();
▲ if ( !cambusaDialog ) {
▲ cambusaDialog = buildCambusaDialog();
▲ $( 'body' ).append( windowManager.$element );
▲ }
▲ windowManager.openWindow( cambusaDialog );
▲ } );
} );
$( el ).after( '<span> | </span>', $link );
Riga 314 ⟶ 321:
}
$( async function () {
if ( !cambusaLinksAllowed() ) {
return;
var portletLink = mw.util.addPortletLink( 'p-tb', '#', 'Cambusa', 't-cambusa', 'Aggiunge il link cambusa a ogni discussione' );▼
$( portletLink ).click( function ( event ) {▼
event.preventDefault();▼
if ( !inited ) {▼
addCambusaLinks();▼
inited = true;▼
}▼
} );▼
}
await mw.loader.load( 'mediawiki.util' );
var portletLink = mw.util.addPortletLink(
▲
await mw.loader.load( 'mediawiki.api' );
api = new mw.Api();
} );
}( mediaWiki, jQuery ) );
| |||