Content deleted Content added
0.9.93b localStorage detection fix |
0.9.94 testing |
||
Line 1:
// <source lang="JavaScript">
if (typeof(wikEd) == 'undefined') { window.wikEd = {}; }
// version info
wikEd.programVersion = '0.9.
wikEd.programDate = '
/*
Line 1,639:
if (typeof(wikEd.loadingTranslation) == 'undefined') { wikEd.loadingTranslation = false; }
if (typeof(wikEd.webStorage) == 'undefined') { wikEd.webStorage = false; }
// customization
Line 1,652 ⟶ 1,651:
// global dom elements, also defined in wikEdDiff.js
if (typeof(wikEd.pageOrigin) == 'undefined') { wikEd.pageOrigin = ''; }
if (typeof(wikEd.head) == 'undefined') { wikEd.head = null; }
Line 1,723:
wikEd.Startup = function() {
// redirect WED shortcut to wikEd.Debug(objectName, object, popup)
window.WED = wikEd.Debug;
// MediaWiki pages always have their title set, filter out Greasemonkey running on created iframes
if (document.title == '') {
return;
}
// check if wikEd has already started up
if (document.getElementsByName('wikEdStartupFlag')[0] != null) {
return;
}
// define current window head
wikEd.head = document.getElementsByTagName('head')[0];
// set startup flag
var flag = document.createElement('meta');
flag.setAttribute('name', 'wikEdStartupFlag');
wikEd.head.appendChild(flag);
// get site of origin (window.___location.href is about:blank if Firefox during page load)
wikEd.pageOrigin = wikEd.head.baseURI.replace(/^((https?|file):\/\/[^\/?#]*)?.*$/, '$1');
// check browser and version
Line 1,824 ⟶ 1,839:
wikEd.greasemonkey = true;
}
// parse global-context (MediaWiki) variables into hash (for Greasemonkey)
var globalNames = ['skin', 'wgServer', 'wgTitle', 'wgCanonicalNamespace', 'wgArticlePath', 'wgScript', 'wgScriptPath', 'wgUserName', 'wgCurRevisionId', 'wgContentLanguage', 'wgUserLanguage', 'wgEnableAPI', 'wgPageName', 'wgNamespaceIds', 'wgFormattedNamespaces', 'wgUseAutomaticEditSummaries', 'wikEdTypeofLocalStorage'];
if (wikEd.greasemonkey == true) {
Line 1,862 ⟶ 1,866:
}
// set listener for GetGlobals messaging
wikEd.AddEventListener(window, 'message', wikEd.GetGlobalsReceiver, false);
// parse globals (asynchronous)
wikEd.GetGlobals(globalNames, gotGlobalsHook);
Line 1,932 ⟶ 1,939:
wikEd.RemoveEventListener(window, 'load', wikEd.Setup, false);
// check if
if (document.
return;
}
// set setup flag
var flag = document.createElement('meta');
flag.setAttribute('name', 'wikEdSetupFlag');
wikEd.head.appendChild(flag);
// import customization (try later again after page load for user/skin.js)
Line 1,993 ⟶ 2,005:
}
}
// detect MediaWiki page and its skin
Line 2,135 ⟶ 2,139:
}
}
// init syntax highlighting regExp object
wikEd.HighlightSyntaxInit();
// check if disabled
Line 2,142 ⟶ 2,149:
wikEd.SetLogo();
return;
}
Line 2,172 ⟶ 2,165:
return;
}
// continue setup
Line 2,192 ⟶ 2,182:
if (wikEd.turnedOn == true) {
return;
}
// get current page name
wikEd.pageName = wikEd.wikiGlobals.wgPageName;
// get current namespace
if (wikEd.pageName != null) {
var colonPos = wikEd.pageName.indexOf(':');
if (colonPos == -1) {
wikEd.pageNamespace = '';
}
else {
wikEd.pageNamespace = wikEd.pageName.substr(0, colonPos);
}
}
Line 2,783 ⟶ 2,787:
wikEd.wikiEditorBar.style.zIndex = '5';
}
// get edit options
wikEd.editOptions = wikEd.GetElementsByClassName('editCheckboxes', 'div', wikEd.editForm)[0];
// old MediaWiki versions
if (
if (wpSummary != null) {
wikEd.editOptions = wpSummary.parentNode;
wikEd.editOptions.className = 'wikEdEditOptions';
}
}
Line 2,811 ⟶ 2,821:
}
// add submit buttons to submit wrapper
if (wikEd.rearrange == true) {
var wpEditButtons;
Line 2,873 ⟶ 2,883:
wikEd.editOptionsWrapper.appendChild(wikEd.editOptions);
var node = wikEd.editOptions.firstChild;
while (node != null) {
Line 14,904 ⟶ 14,914:
//
// wikEd.GetGlobals:
// uses
wikEd.GetGlobals = function(names, gotGlobalsHook) {
if (gotGlobalsHook != null) {
wikEd.gotGlobalsHook.push(gotGlobalsHook);
}
// code already running in global context
if (wikEd.greasemonkey != true) {
var globalScopeCode = '';
for (var i = 0; i < names.length; i ++) {
globalScopeCode += ''
+ 'if (typeof(' + names[i] + ') != \'undefined\') {'
+ ' wikEd.wikiGlobals.' + names[i] + ' = ' + names[i] + ';'
+ '}';
}
if (gotGlobalsHook != null) {
globalScopeCode += 'wikEd.ExecuteHook(wikEd.gotGlobalsHook[' + (wikEd.gotGlobalsHook.length - 1) + '], true);';
}
eval(globalScopeCode);
return;
}
// prepare code to be executed in global context for Greasemonkey
if ( (typeof(window.postMessage) == 'undefined') || (typeof(JSON) != 'object') ) {
return;
}
var globalScopeCode = 'var globalObj = {};';
if (gotGlobalsHook != null) {
Line 15,880 ⟶ 15,909:
wikEd.Startup();
// </
|