維基百科:AutoEd/core.js
//
//This script does not function without additional "helper" modules!
//Please see [[Wikipedia:AutoEd]] for details on use.
// Set default values for any unset variables
if( typeof( autoEdMinor ) == 'undefined' ) {
autoEdMinor = true;
}
if( typeof( autoEdClick ) == 'undefined' ) {
autoEdClick = true;
}
if( typeof( autoEdTag ) == 'undefined' ) {
autoEdTag = "Cleaned up using [[WP:AutoEd|AutoEd]]";
}
if( typeof( autoEdLinkHover ) == 'undefined' ) {
autoEdLinkHover = "Run AutoEd";
}
if( typeof( autoEdLinkName ) == 'undefined' ) {
autoEdLinkName = "auto ed";
}
if( typeof( autoEdLinkLocation ) == 'undefined' ) {
autoEdLinkLocation = "p-cactions";
}
if( typeof( autoEdFunctions ) == 'undefined' ) {
function autoEdFunctions() { alert('AutoEd/core.js: autoEdFunctions is undefined'); }
autoEdTag = "";
autoEdClick = false;
autoEdMinor = false;
}
//Initiates AutoEd
function autoEdExecute() {
if(!document.getElementById('wpTextbox1')) return;
// copy wikEd (http://en.wikipedia.org/wiki/User:Cacycle/wikEd.js) frame to wpTextbox1 textarea, for compatibility with WikiEd
if (typeof(wikEdUseWikEd) != 'undefined') {
if (wikEdUseWikEd == true) {
WikEdUpdateTextarea();
}
}
autoEdFunctions();
autoEdEditSummary();
// copy wpTextbox1 textarea back to wikEd frame, for compatibility with WikiEd
if (typeof(wikEdUseWikEd) != 'undefined') {
if (wikEdUseWikEd == true) {
WikEdUpdateFrame();
}
}
}
//Adds Tag to edit summary textbox
function autoEdEditSummary() {
var txt = document.editform.wpSummary;
var tag = autoEdTag;
// Is the tag blank?
if( tag.match(/[^\s]/) ) {
// Has it already been tagged?
if( txt.value.indexOf(tag) == -1 ) {
// Append a pipe if necessary
if( txt.value.match(/[^\*\/\s][^\/\s]?\s*$/) ) {
txt.value += " | ";
}
// Append our tag
txt.value += tag;
}
}
// Check 'This is a minor edit'
if( autoEdMinor ) {
document.editform.wpMinoredit.checked = autoEdMinor;
}
// Click 'Show changes'
if( autoEdClick ) {
document.editform.wpDiff.click();
}
}
//Allows URI to be properly decoded for AutoEd in View Mode
function autoEdQueryString(p) {
var re = RegExp('[&?]' + p + '=([^&]*)');
var matches;
if (matches = re.exec(document.location)) {
try {
return decodeURI(matches[1]);
} catch (e) {
}
}
return null;
}
//Execute AutoEd after call from View Mode
if( autoEdQueryString('AutoEd') ) {
$(document).ready(function() {
autoEdExecute();
});
}
// Add "auto ed" tabs and associate with actions
$(document).ready(function () {
if(wgCanonicalNamespace == "" || wgCanonicalNamespace == "Image" || wgCanonicalNamespace == "File" || wgCanonicalNamespace == "User"
|| wgCanonicalNamespace == "Template" || wgCanonicalNamespace == "Project" || wgCanonicalNamespace == "Portal") {
if(document.forms.editform) {
mw.util.addPortletLink( autoEdLinkLocation, 'javascript:autoEdExecute()', autoEdLinkName, 'ca-AutoEd', autoEdLinkHover, '', document.getElementById('ca-move'));
} //End editform if
if(wgAction == "view"){
var url = mw.config.get('wgServer') + mw.config.get('wgScript') + '?title=' + encodeURIComponent(mw.config.get('wgPageName')) + '&action=edit';
mw.util.addPortletLink( autoEdLinkLocation, url + '&AutoEd=true', autoEdLinkName, 'ca-AutoEd', autoEdLinkHover, '', document.getElementById('ca-move'));
} //End pageview if
} //End namespace if
});
//