<script type="text/javascript">
<!--
var baseUrl = 'http://www.wikispaces.com/_/2008042801';
var autosaveDetected = false;
var checkoutStatus = '';
var checkoutUser = '';
var checkoutMessage = '';
function disableEditButton(element) {
if (element.className == 'WikiPageMenuEditButton') {
element.className='WikiPageMenuEditButtonDisabled';
}
jQuery(element).unbind("click");
element.style.cursor='default';
element.href='#';
return true;
}
function enableEditButton(element) {
log('enabledEditButton');
if (element.className == 'WikiPageMenuEditButtonDisabled') {
element.className='WikiPageMenuEditButton';
}
jQuery(element).click(function() {
jQuery('.WikiNotice').remove();
jQuery('.WikiBanner').remove();
try {
disableEditButton(element);
showFiles();
editorEnable();
return false;
} catch (e) {
element.href = '/page/edit/' + encodeURIComponent(wikispaces_page);
redirectToEditPage(false);
return true;
}
});
element.style.cursor='pointer';
element.href='/page/edit/' + encodeURIComponent(wikispaces_page);
return true;
}
function editorEnable() {
if (navigator.userAgent.toLowerCase().indexOf('safari') + 1 ||
navigator.userAgent.toLowerCase().indexOf('opera') + 1) {
redirectToEditPage(true);
exit();
}
try {
var url = '/page/dump/' + encodeURIComponent(wikispaces_page) + '?format=Wikispaces2';
jQuery.ajax({ url: url, type: "GET", timeout: 2000, global: false, error: redirectToEditPageCallback, success: editorEnableCallback });
} catch (e) {
redirectToEditPage(false);
}
}
function redirectToEditPageCallback(request, errorString, errorException) {
log('redirectToEditPageCallback');
redirectToEditPage(false);
}
function redirectToEditPage(textEditor) {
log('redirectToEditPage');
document.location = '/page/edit/' + encodeURIComponent(wikispaces_page) + (textEditor ? '?texteditor=1' : '');
}
function editorEnableCallback(xml) {
log('editorEnableCallback');
// Load the fetched XML and set it up for the editor
if (loadXMLData(xml)) {
if (checkoutStatus == 'locked' && (!wikispaces_isUserLoggedIn || checkoutUser != wikispaces_username)) {
alert(checkoutMessage);
enableEditButton(document.getElementById('editButton'));
return false;
}
// Setup autosave
if (autosaveDetected) {
log('autosaveDetected');
if (typeof(Dialog) != 'undefined') {
if (typeof(showAutosavePopup) != 'undefined') {
log('showAutosavePopup');
showAutosavePopup();
} else {
log('ERROR: undefined showAutosavePopup');
redirectToEditPage(false);
return false;
}
} else {
log('ERROR: undefined Dialog');
redirectToEditPage(false);
return false;
}
} else {
//Only start the autosave loop after the modal autosave popup has closed or if it wasn't displayed
log('autosaveLoop setTimeout');
setTimeout("autosaveLoop()", 1000);
}
jQuery('#editor_wrap').show();
if (customEditorStart('WikispacesEditorContentHidden')) {
jQuery('#WikiTags').hide();
jQuery('#content_view').hide();
jQuery('#WikiAds').hide();
o = jQuery('#WikiAdMargin');
if (o) {
o.css('marginRight', 0);
}
return true;
} else {
log('customEditorStart failed');
}
}
// Something failed, and we're in a callback, so we have to change the page location to the edit page like this
redirectToEditPage(false);
}
function loadXMLData(xml) {
log('loadXMLData');
try {
var contentBlock = xml.getElementsByTagName('dump')[0].getElementsByTagName('content')[0];
var wikiPageData = '';
if (contentBlock && contentBlock.childNodes.length > 0) {
for (var i = 0; i < contentBlock.childNodes.length; i++) {
wikiPageData += contentBlock.childNodes[i].nodeValue;
}
}
var versionBlock = xml.getElementsByTagName('dump')[0].getElementsByTagName('version')[0]
if (versionBlock && versionBlock.firstChild) {
version = versionBlock.firstChild.nodeValue;
}
// If we got back a version, but not any data
if (!wikiPageData && version != 0) {
return false;
}
// Store loaded page data in the same place that the edit page would have it
if (wikiPageData) {
document.getElementById('WikispacesEditorContentHidden').innerHTML = wikiPageData;
}
checkoutStatus = xml.getElementsByTagName('checkout')[0].getElementsByTagName('checkoutStatus')[0].firstChild.nodeValue;
if (checkoutStatus == 'l