MediaWiki:Common.js
Материал из melioration.space
Версия от 19:10, 25 декабря 2020; Sonys (обсуждение | вклад)
Замечание. Возможно, после сохранения вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl-F5 или Ctrl-R (⌘-R на Mac)
- Google Chrome: Нажмите Ctrl-Shift-R (⌘-Shift-R на Mac)
- Internet Explorer: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl-F5
- Opera: Перейдите в Menu → Настройки (Opera → Настройки на Mac), а затем Безопасность → Очистить историю посещений → Кэшированные изображения и файлы
function setup() {
var mathUpdater = new $.Deferred();
if ( mathUpdaterLs ) {
mathUpdater.resolve();
} else {
mw.loader.using(['wikibase.api.RepoApi', 'wikibase.client.getMwApiForRepo'], function(){
var repoApi = new wikibase.api.RepoApi(wikibase.client.getMwApiForRepo());
repoApi.getEntities( wbSpellCheck, 'sitelinks').done( function( data ) {
var currSite = mw.config.get( 'wgDBname' );
if ( data.entities && data.entities.hasOwnProperty( wbSpellCheck ) && data.entities[wbSpellCheck].sitelinks && data.entities[wbSpellCheck].sitelinks.hasOwnProperty( currSite ) ) {
mispellsList = data.entities[wbSpellCheck].sitelinks[currSite].title;
try {
localStorage.mathUpdaterLs = mathUpdaterLs;
} catch(e) {
$.cookie( 'mispellsList', mathUpdaterLs );
}
mathUpdater.resolve();
} else {
mw.notify( $( errors.installError.replace('{0}', wbSpellCheck) ) );
mathUpdater.reject();
}
} );
} );
}
return mathUpdater;
};
mw.hook( 've.activationComplete' ).add( function() {
setup().then( function(){
var view =ve.init.target.getSurface().getView();
var doc = view.getDocument();
var model = ve.init.target.getSurface().getModel();
//while editing - only on current node
model.on( 'documentUpdate', function () {
try
{
var selection = model.getSelection().getRange(),
node = selection && doc.getBranchNodeFromOffset( selection.start ),
originalSelection;
if ( !( node instanceof ve.ce.ContentBranchNode ) ) {
return;
}
//remove spell errors from current node
$( node.$element[0] ).find('.spellError').contents().unwrap();
//view.surfaceObserver.disable();
checkSpells( $( node.$element[0] ) );
//reset selection
selection = model.getSelection().getRange();
originalSelection = view.getSelectionState( new ve.Range(selection.to, selection.to) );
setTimeout( function () {
view.showSelectionState( originalSelection );
} );
} catch(err){
console.log('Error in Gadget-Rechtschreibpruefung.js:documentUpdate');
console.log(err);
}
} );
} );
});