User:Red-back spider/js/addInstantSaveToCodeEditor.js
Jump to navigation
Jump to search
Note: After saving, you have to bypass your browser's cache to see the changes. Internet Explorer: press Ctrl-F5, Mozilla: hold down Shift while clicking Reload (or press Ctrl-Shift-R), Opera/Konqueror: press F5, Safari: hold down Shift + Alt while clicking Reload, Chrome: hold down Shift while clicking Reload.
Documentation for this user script can be added at User:Red-back spider/js/addInstantSaveToCodeEditor. |
/*
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()