var settingsPage='<div id="settingsContent"></div><div id="tabs"><div class="tab" id="siteAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editSite()">'+set_Site+'</a></div><div class="tabright_inactive"></div></div><div class="tab" id="headerAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editHeader()">'+set_Header+'</a></div><div class="tabright_inactive"></div></div><div class="tab" id="menuAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editMenu()">'+set_Menu+'</a></div><div class="tabright_inactive"></div></div><div class="tab" id="settingspageAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editSettingsPage()">'+set_Page+'</a></div><div class="tabright_inactive"></div></div><div class="tab" id="linksAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editLinks()">'+set_Links+'</a></div><div class="tabright_inactive"></div></div><div id="emptytab"></div><div id="buttontab"><input type="button" class="wikiButton" value="'+str_Submit+'" onclick="submitForm()"/>&nbsp;&nbsp;<input type="button" class="wikiButton" value="'+str_Cancel+'" onclick="cancelForm()"/></div></div>';

var settingsWidth='100%';
var emptyWidth='100%';
var currentPage='';
var defaultTab='Site';
var backToTree='';

function hide(id) {
	var obj=document.getElementById(id);
	if (obj) obj.style.display="none";
}

function show(id,d) {
	if (!d) d="block";
	var obj=document.getElementById(id);
	if (obj) obj.style.display=d;
}

function findPos(id) {
	obj=document.getElementById(id);
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

function center(text) {
	var ret='<br/><div align="left"><table cellpadding="0" cellspacing="0" border="0"><tr><td>';
	ret+=text;
	ret+='</td></tr></table></div>';
	return ret;
}

function setActive(tabName) {
	currentPage=tabName;
	tabName=tabName.toLowerCase();
	document.getElementById('content').innerHTML=settingsPage;
	document.getElementById('settingsContent').style.width=settingsWidth;
	if (!ie) {
		settingsWidth=document.getElementById('tabs').offsetWidth-1+"px";
	}
	document.getElementById('settingsContent').style.width=settingsWidth;
	resizeEmptyTab();
	var obj=document.getElementById(tabName+"Appearance");
	if (obj) {
		var cont=obj.innerHTML;
		obj.innerHTML=cont.replace(/inactive/g,'active');
	}
}

function cancelForm() {
	reloadTree(backToTree);
}

function resizeEmptyTab() {
	var rep=true;
	if (document.getElementById('emptytab')) {
		var startPos=findPos('emptytab');
		var endPos=findPos('buttontab');
		emptyWidth=(endPos[0]-startPos[0])+"px";
		if (parseInt(emptyWidth)>0) {
			rep=false;
			resizeRealEmpty();
		}
	}
	if (rep) setTimeout("resizeEmptyTab()",1000);
}

function resizeRealEmpty() {
	if (document.getElementById('emptytab')) document.getElementById('emptytab').style.width=emptyWidth;
}

function showSettings(treeId) {
	currentPage=defaultTab;
	backToTree=treeId;
	if (superadmin) {
		var inner=settingsPage;
		document.getElementById('content').innerHTML=inner;
		closePage();	
	} else {
		var inner="You must be logged in as SuperAdmin to access settings";
		document.getElementById('content').innerHTML=inner;
		setTimeout('cancelForm()',3000);
	}
}

function editSite() {
	setActive('Site');
		var hp = new HTTPPost();
		if (ajaxFolder == false) var pre = "";
		else var pre = "ajax/";
		hp.postData(pre + 'editSite.php', '', sitePage, true);
}

function editHeader() {
	setActive('Header');
		var hp = new HTTPPost();
		if (ajaxFolder == false) var pre = "";
		else var pre = "ajax/";
		hp.postData(pre + 'editHeader.php', '', headerPage, true);
}

function editMenu() {
	setActive('Menu');
		var hp = new HTTPPost();
		if (ajaxFolder == false) var pre = "";
		else var pre = "ajax/";
		hp.postData(pre + 'editMenu.php', '', menuPage, true);
}

function editSettingsPage() {
	setActive('SettingsPage');
		var hp = new HTTPPost();
		if (ajaxFolder == false) var pre = "";
		else var pre = "ajax/";
		hp.postData(pre + 'editPage.php', '', pagePage, true);
}

function editLinks() {
	setActive('Links');
		var hp = new HTTPPost();
		if (ajaxFolder == false) var pre = "";
		else var pre = "ajax/";
		hp.postData(pre + 'editLinks.php', '', linksPage, true);
}

function sitePage(req) {
	if (req.readyState == 4)	{
		if (req.status == 200)	{
			document.getElementById('settingsContent').innerHTML=center(req.responseText);
			attachColorPicker(document.getElementById('searchBoxFontColor'));
			attachColorPicker(document.getElementById('searchBoxFieldBack'));
			attachColorPicker(document.getElementById('searchBoxFieldBorder'));
			attachColorPicker(document.getElementById('searchBoxButtonBack'));
			attachColorPicker(document.getElementById('searchBoxButtonColor'));
			attachColorPicker(document.getElementById('signBoxFontColor'));
			attachColorPicker(document.getElementById('signBoxFieldBack'));
			attachColorPicker(document.getElementById('signBoxFieldBorder'));
			attachColorPicker(document.getElementById('signBoxButtonBack'));
			attachColorPicker(document.getElementById('signBoxButtonColor'));
		}
	}
}

function headerPage(req) {
	if (req.readyState == 4)	{
		if (req.status == 200)	{
			document.getElementById('settingsContent').innerHTML=center(req.responseText);
			attachColorPicker(document.getElementById('headerBackColor'));
			attachColorPicker(document.getElementById('headerBorderColor'));
		}
	}
}

function menuPage(req) {
	if (req.readyState == 4)	{
		if (req.status == 200)	{
			document.getElementById('settingsContent').innerHTML=center(req.responseText);
			attachColorPicker(document.getElementById('menuFontColor'));
			attachColorPicker(document.getElementById('menuBackColor'));
			attachColorPicker(document.getElementById('menuBorderColor'));
			attachColorPicker(document.getElementById('nodeBackColor'));
			attachColorPicker(document.getElementById('nodeBorderColor'));
			attachColorPicker(document.getElementById('nodeOverBackColor'));
			attachColorPicker(document.getElementById('nodeOverFontColor'));
			attachColorPicker(document.getElementById('contFontColor'));
			attachColorPicker(document.getElementById('contBackColor'));
			attachColorPicker(document.getElementById('contBorderColor'));
		}
	}
}

function pagePage(req) {
	if (req.readyState == 4)	{
		if (req.status == 200)	{
			document.getElementById('settingsContent').innerHTML=center(req.responseText);
			attachColorPicker(document.getElementById('pageFontColor'));
			attachColorPicker(document.getElementById('pageBackColor'));
			attachColorPicker(document.getElementById('printLinkFontColor'));
			attachColorPicker(document.getElementById('printLinkMoFontColor'));
			attachColorPicker(document.getElementById('printLinkMoBackgroundColor'));
			attachColorPicker(document.getElementById('bookmarkLinkFontColor'));
			attachColorPicker(document.getElementById('bookmarkLinkMoFontColor'));
			attachColorPicker(document.getElementById('bookmarkLinkMoBackgroundColor'));
		}
	}
}

function linksPage(req) {
	if (req.readyState == 4)	{
		if (req.status == 200)	{
			document.getElementById('settingsContent').innerHTML=center(req.responseText);
			attachColorPicker(document.getElementById('textLinksFontColor'));
			attachColorPicker(document.getElementById('textLinksMoFontColor'));
			attachColorPicker(document.getElementById('textLinksMoBackgroundColor'));
			attachColorPicker(document.getElementById('linksInTextFontColor'));
			attachColorPicker(document.getElementById('linksInTextMoFontColor'));
			attachColorPicker(document.getElementById('linksInTextMoBackgroundColor'));
			attachColorPicker(document.getElementById('versionNumberFontColor'));
			attachColorPicker(document.getElementById('loginLinkFontColor'));
			attachColorPicker(document.getElementById('loginLinkMoFontColor'));
			attachColorPicker(document.getElementById('loginLinkMoBackgroundColor'));
		}
	}
}

function showDetails(text) {
	var id="details_"+text.replace(/ /g,"_");
	var obj=document.getElementById(id);
	if (obj) {
		obj.style.display="block";	
	}
}

function hideDetails(text) {
	var id="details_"+text.replace(/ /g,"_");
	var obj=document.getElementById(id);
	if (obj) {
		obj.style.display="none";	
	}
}

function waitForSubmit() {
try {
	var submitted=document.getElementById('submitTarget').contentWindow.document.getElementById('submitted').innerHTML;
	if (submitted=="") {
		working();
		setTimeout("waitForSubmit()",1000);
	} else {
		notworking();
		submitted=document.getElementById('submitTarget').contentWindow.document.getElementById('submittedJS').innerHTML;
		eval(submitted.replace(/&lt;/g,'<').replace(/&gt;/g,'>'));
		var qs = '?' + new Date().getTime(),l,i = 0;
		while (l = document.getElementsByTagName('link')[i++]) {
			if (l.rel && 'stylesheet' == l.rel.toLowerCase()) {
				if (!l._h) {
					l._h = l.href;
				}
				l.href = l._h + qs;
			}
		}
		closePage();
	}
} catch(e) {
	working();
	setTimeout("waitForSubmit()",1000);
}
}

function closePage() {
	if (ajaxFolder == false) var pre = "";
	else var pre = "ajax/";
	var obj=document.getElementById('submitTarget');
	if (obj) obj.src=pre+'empty.html';
	setTimeout('edit'+currentPage+'()',1);
}

function updateTreeImages() {
	var imgs=document.images;
	for (var i=0; i<imgs.length; i++) {
		var s=imgs[i].src;
		if ((s.indexOf("books_open.gif")!=-1) || (s.indexOf("books_close.gif")!=-1) || (s.indexOf("leaf_open.gif")!=-1) || (s.indexOf("leaf_closed.gif")!=-1)) {
			imgs[i].src=s;
		}
	}
	if (oldTrees=="YES") {
		var hp = new HTTPPost();
		if (ajaxFolder == false) var pre = "";
		else var pre = "ajax/";
		hp.postData(pre + 'updateOldTrees.php', '', oldTreesUpdated, true);
	}
}

function oldTreesUpdated() {
	oldTrees="NO";
}

function submitForm() {
	document.getElementById('ajaxForm').submit();
	waitForSubmit();
}