// JavaScript Document
var xmlHttp;

function GetXmlHttpObject() {
	var xmlHttp = null;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp = new XMLHttpRequest();
		xmlHttp.overrideMimeType('text/html');
	} catch (e) {
		// Internet Explorer
		try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			xmlHttp = new ActiveXObject("Microsoft.KMLHTTP");
		}
	}
	return xmlHttp;
}

function stateChanged() {
	var r = document.getElementById('subCatList');
	var r2 = document.getElementById('upload_form');

	if (xmlHttp.readyState == 4) {
		r.innerHTML = xmlHttp.responseText;
		r2.innerHTML = "&nbsp;";
	} else {
		r.innerHTML = "<img src=\"images/crazy.gif\" border=\"0\" />";
	}
}
function updateForm() {
	var r2 = document.getElementById('upload_form');

	if (xmlHttp.readyState == 4) {
		r2.innerHTML = xmlHttp.responseText;
	} else {
		r2.innerHTML = "<img src=\"images/crazy.gif\" border=\"0\" />";
	}
}
function GetCategories(gallery) {
	var url = "lib/functions.php?action=gallery&";
	url += "gallery=" + gallery;
	xmlHttp = GetXmlHttpObject();

	if (xmlHttp == null) {
		alert("Your browser does not support AJAX!");
		return;
	}

	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
		xmlHttp.overrideMimeType('text/html');
		xmlHttp.open("GET", url, true);
		xmlHttp.onreadystatechange = stateChanged;
		xmlHttp.send(null);
	}

	document.getElementById('content').style.height = "377px";

}

function GetForm(gallery, category) {
	var url = "lib/functions.php?action=form&";
	url += "gallery=" + gallery + "&category=" + category;
	xmlHttp = GetXmlHttpObject();

	if (xmlHttp == null) {
		alert("Your browser does not support AJAX!");
		return;
	}

	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
		xmlHttp.open("GET", url, true);
		xmlHttp.onreadystatechange = updateForm;
		xmlHttp.send(null);
	}

	var d_content = document.getElementById('content');
	var d_uploadFrm = document.getElementById('upload_form');

	d_content.style.height = "600px";
	// alert(d_content.style.height);

}

// FBN: Add function to load page with info from database
function getGalleryItem(gallery, category, list, prev) {
	var lstbox1 = document.getElementById(list);

	if (prev == ''
			|| ((prev != '') && (confirm('Do you want to discard changes and load new gallery?')))) {

		var url = "lib/functions.php?action=form&";
		url += "gallery=" + gallery + "&category=" + category;
		if (lstbox1.value != '')
			url += "&dbload=" + lstbox1.value;
		xmlHttp = GetXmlHttpObject();

		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}

		if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
			xmlHttp.open("GET", url, true);
			xmlHttp.onreadystatechange = updateForm;
			xmlHttp.send(null);
		}

		var d_content = document.getElementById('content');
		var d_uploadFrm = document.getElementById('upload_form');

		d_content.style.height = "600px";
	} else {
		for ( var i = 0; i < lstbox1.size; i++) {
			if (lstbox1.options[i].defaultSelected)
				lstbox1.selectedIndex = i;
		}
	}
}

function GoEditCats(page) {
	var url = "lib/editCats.php?action=" + page;

	xmlHttp = GetXmlHttpObject();
	if (xmlHttp == null) {
		alert("Your browser does not support AJAX!");
		return;
	}
	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
		xmlHttp.open("GET", url, true);
		xmlHttp.onreadystatechange = GetPage;
		xmlHttp.send(null);
	}

	var x = r.getElementsByTagName("script");
	for ( var i = 0; i < x.length; i++) {
		eval(x[i].text);
	}

	document.getElementById('content').style.height = "377px";

}

function trim(s) {
	s = s.replace(/(^\s*)|(\s*$)/gi, "");
	s = s.replace(/[ ]{2,}/gi, " ");
	s = s.replace(/\n /, "\n");
	return s;
}

function ManageEditCats(form, action) {
	frm = document.forms[form];
	if (action == 'galclicked') {
		GoEditCats('loadgallery&gallery_curr=' + frm.gallery_curr.value);
	} else if (action == 'catclicked') {
		frm.category_text.value = frm.category_curr.value;
		frm.rep_button.disabled = false;
		frm.rem_button.disabled = false;
	} else if (action == 'removecat') {
		if (confirm('Are you sure you want to delete the selected category?')) {
			var vars = 'removecat&gallery_curr=' + frm.gallery_curr.value;
			vars += '&category_curr=' + frm.category_curr.value;
			GoEditCats(vars);
		}
	} else if (action == 'addcat') {
		if ((trim(frm.gallery_text.value) != "")
				&& (trim(frm.category_text.value) != "")) {
			var vars = 'addcat&gallery_text=' + trim(frm.gallery_text.value);
			vars += '&category_text=' + trim(frm.category_text.value);
			vars += '&gallery_curr=' + frm.gallery_curr.value;
			GoEditCats(vars);
		} else {
			alert('Must have both Gallery and Category to add');
		}
	} else if (action == 'replacecat') {
		if (confirm('Are you sure you want to replace the selected category?')) {
			if ((trim(frm.gallery_text.value) != "")
					&& (trim(frm.category_text.value) != "")) {
				var vars = 'replacecat&gallery_text=' + trim(frm.gallery_text.value);
				vars += '&category_text=' + trim(frm.category_text.value);
				vars += '&gallery_curr=' + frm.gallery_curr.value;
				vars += '&category_curr=' + frm.category_curr.value;
				GoEditCats(vars);
			} else {
				alert('Must have both Gallery and Category to replace');
			}
		}
	}
}
// FBN

function GetPage() {
	r = document.getElementById('content');

	if (xmlHttp.readyState == 4) {
		r.innerHTML = xmlHttp.responseText;
	} else {
		r.innerHTML = "<img src=\"images/crazy.gif\" border=\"0\" />";
	}
}
function GoPage(page) {
	var url = "lib/pages.php?action=" + page;

	xmlHttp = GetXmlHttpObject();

	if (xmlHttp == null) {
		alert("Your browser does not support AJAX!");
		return;
	}

	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0) {
		xmlHttp.open("GET", url, true);
		xmlHttp.onreadystatechange = GetPage;
		xmlHttp.send(null);
	}

	var x = r.getElementsByTagName("script");
	for ( var i = 0; i < x.length; i++) {
		eval(x[i].text);
	}

	document.getElementById('content').style.height = "377px";

}

// extra functions
// Extra Functions
function ResizeIframe(height) {
	var current_height = document.getElementById('b_iframe').offsetHeight;

	document.getElementById('b_iframe').style.height = height + 75 + "px";
	document.getElementById('content').style.height = document
			.getElementById('b_iframe').style.height;
}

function ResizeForm() {
	var d_container = document.getElementById('container');
	var d_uploadFrm = document.getElementById('upload_form');

	alert(d_container.offsetHeight + "\n" + d_uploadFrm.offsetHeight);
	// alert(d_content.style.height);
}

