Benutzer:TMg/forceEditSummary.js
Zur Navigation springen
Zur Suche springen
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
- Opera: Strg+F5
$( function () {
// Look for Edit or MovePage. Return as fast as possible if not applicable.
var field = $( 'input[name=wpSummary], input[name=wpReason]' );
// Don't do anything if the wpforceeditsummary setting is active.
if ( !field.length || field.hasClass( 'mw-summarymissed' ) ) {
return;
}
var button = $( 'input[name=wpSave], input[name=wpMove]' );
if ( !button.length ) {
return;
}
function isRedirect() {
var textbox = $( 'textarea[name=wpTextbox1]' );
return /^#(REDIRECT|WEITERLEITUNG)\b/.test( textbox.val() );
}
function isSummaryEmpty() {
var m = /\bsummary=([^&]+)/.exec( location.search );
try {
if ( m && field.val().replace( /^\/\*.*?\*\/ /, '' ) === decodeURI( m[1] ) ) {
return true;
}
} catch ( e ) {
/* ignore malformed URIs */
}
return /(?:^|^\/\*.*\*\/|;)\s*$/.test( field.val() );
}
function onKeyUp() {
if ( !isSummaryEmpty() ) {
clearEmptySummaryWarning();
}
}
function clearEmptySummaryWarning() {
field.removeClass( 'mw-summary-empty' );
// Stop executing the keyup event handler.
field.unbind( 'keyup', onKeyUp );
}
button.click( function ( e ) {
/* Ignore triggered fake events */
if ( !e.originalEvent ) {
return true;
}
if ( isSummaryEmpty() && !isRedirect() && !field.hasClass( 'mw-summary-empty' ) ) {
field.addClass( 'mw-summary-empty' );
field.focus();
var d = field.get( 0 ),
v = field.val();
// Setting the value does not move the cursor in all browsers.
if ( d.setSelectionRange ) {
d.setSelectionRange( v.length, v.length );
} else {
field.val( v );
}
field.keyup( onKeyUp );
return false;
}
clearEmptySummaryWarning();
return true;
} );
mw.loader.using( [ 'mediawiki.util' ], function () {
mw.util.addCSS( 'input#wpSummary.mw-summary-empty, input#wpSummary.mw-summary-empty:focus'
+ '{ background-color: #FDD; border-color: #C00; box-shadow: 0 0 1em #F00; }' );
} );
} );