MediaWiki:Gadget-sigreminder.js

Note: After publishing, you may have to bypass your browser's cache to see the changes.

  • Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
  • Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
// <nowiki>
$(function () {
    var conf = mw.config.get([
        'wgAction',
        'wgNamespaceNumber'
    ]);
    
	var editActions = ['edit', 'submit'];
	if (editActions.indexOf(conf.wgAction) > -1 && (conf.wgNamespaceNumber % 2 === 1 || conf.wgNamespaceNumber === 110)) {
		$('#wpSave').click(function (e) {
            var text = $('#wpTextbox1').val(),
            	reminder = 'It looks like you forgot to sign your comment. You can sign by placing 4 tildes (~~\~~) to the end of your message.\nAre you sure you want to post it?';

            if (
                // don't trigger on minor edits
                $('#wpMinoredit').prop('checked') ||

                // check for signature
                text.replace(/(<nowiki>.*?<\/nowiki>)/g, '').match('~~\~') ||

                // check for &undo= or ?undo= in URL as summary can be altered
                mw.util.getParamValue('undo') ||

                // check for user welcome notice in edit summary
                // since those often don't need signatures
                $('#wpSummary').val().match(/welcome/i)
            ) {
                return;
            }

            if (!confirm(reminder)) {
                e.preventDefault();
            }
		});
	}
});