User:Gryllida/js/addInstantSaveToCodeEditor.js
Jump to navigation
Jump to search
Note: After saving, you may have to bypass your browser's cache to see the changes. Mozilla / Firefox / Safari: hold down Shift while clicking Reload, or press Ctrl-Shift-R (Cmd-Shift-R on Apple Mac); IE: hold Ctrl while clicking Refresh, or press Ctrl-F5; Konqueror: simply click the Reload button, or press F5; Opera users may need to completely clear their cache in Tools→Preferences. — More skins
/*
Author : Svetlana Tkachenko svetlana@members.fsf.org
This file is a part of addInstantSaveToCodeEditor.
Licence: GPLv3+
Version: 0.1
Release date: 2018-02-26
Description: adds an instant save button to CodeEditor
*/
// Check that CodeEditor is loaded
mw.loader.using(['mediawiki.api', 'oojs-ui'], function () {
if('.wikiEditor-ui'){
var button = new OO.ui.ButtonWidget( {
label: 'Instant Save'
} );
// Instant save on click
button.$element.click(function(){
// Update button text
button.setLabel( 'Saving...');
// Get text area contents
var textbox = $('#wpTextbox1');
var context = textbox && textbox.data('wikiEditor-context');
var currentText = context.$textarea.textSelection( 'getContents' );
// Save the page via AJAX edit api
var api = new mw.Api();
api.postWithToken("edit", {
action: 'edit',
title: mw.config.get ('wgPageName'),
text: currentText,
summary: $('#wpSummary').val() + ' ([[User:Gryllida/js/addInstantSaveToCodeEditor.js|assisted]])'
}).done(function (data){
// Success; Update button text
button.setLabel( 'Instant Save');
});
});
$('#wpDiffWidget').after(button.$element);
}
});
// text: $('#wpTextbox1').text()