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 class="tab" id="groupsAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editGroups()">'+set_Groups+'</a></div><div class="tabright_inactive"></div></div><div class="tab" id="usersAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editUsers()">'+set_Users+'</a></div><div class="tabright_inactive"></div></div><div class="tab" id="seoAppearance"><div class="tableft_inactive"></div><div class="tab_inactive"><a href="#" onclick="editSeo()">'+set_Seo+'</a></div><div class="tabright_inactive"></div></div><div id="emptytab"></div><div id="buttontab">&nbsp;</div></div>';
var buttonTab='<div id="buttontab2" align="right" style="padding: 10px; border: transparent none 0px"><input type="button" class="wikiButton" id="submit_button" value="'+str_Submit+'" onclick="submitForm()"/>  <input type="button" class="wikiButton" value="'+str_Cancel+'"; onclick="cancelForm()"/></div>';

var settingsWidth='100%';
var emptyWidth='100%';
var currentPage='';
var defaultTab='Site';
var backToTree='';
var message='';
var messageColor="green";
var messageTimeout=0;

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=buttonTab+'<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]);
		if (parseInt(emptyWidth)>0) {
			rep=false;
			resizeRealEmpty();
		}
	}
	if (rep) setTimeout("resizeEmptyTab()",1000);
}

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

function showSettings(treeId) {
try {
	ismenucalled=false;
	currentPage=defaultTab;
	backToTree=treeId;
	if (superadmin) {
		var inner=settingsPage;
		document.getElementById('content').innerHTML=inner;
		closePage();	
	} else {
		var inner=str_must_login_settings;
		document.getElementById('content').innerHTML=inner;
		setTimeout('cancelForm()',3000);
	}
} catch (e) {
	setTimeout("showSettings('"+treeId+"')",defaultTime);
}
}

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);
			document.getElementById('submit_button').style.visibility="visible";
			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);
			document.getElementById('submit_button').style.visibility="visible";
			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);
			document.getElementById('submit_button').style.visibility="visible";
			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);
			document.getElementById('submit_button').style.visibility="visible";
			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);
			document.getElementById('submit_button').style.visibility="visible";
			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 {
		var rld=true;
		if (submitted=="dont reload") rld=false;
		notworking();
		submitted=document.getElementById('submitTarget').contentWindow.document.getElementById('submittedJS').innerHTML;
		eval(submitted.replace(/&lt;/g,'<').replace(/&gt;/g,'>'));
		if (rld) {
	 		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();
}

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

function seoPage(req) {
	if (req.readyState == 4)	{
		if (req.status == 200)	{
			var showMessage='';
			if (message!='' && req.responseText.indexOf("messageDiv")==-1) showMessage='<div align="center" style="color: '+messageColor+'; font-weight: bold" id="messageDiv">'+message+'</div>';
			document.getElementById('settingsContent').innerHTML=center(showMessage+req.responseText);
			document.getElementById('submit_button').style.visibility="visible";
			if (message!='' && req.responseText.indexOf("messageDiv")!=-1) document.getElementById("messageDiv").innerHTML=message;
			if (message!='' && messageTimeout>0) setTimeout('document.getElementById("messageDiv").style.visibility="hidden"',messageTimeout*1000);
			message='';
			messageColor="green";
			messageTimeout=0;
		}
	}
}

