	var outpostElement = new Array();
	var outpostElementType = new Array();
	function outpostSetShowUpdate(layer) { var style = document.getElementById(layer).style; style.display = "";	}

	function ajaxMoveDown(category_id, sub_category_id, item_id) {ajaxContentOrder(category_id, sub_category_id, item_id, "down");}
	function ajaxMoveUp(category_id, sub_category_id, item_id) {ajaxContentOrder(category_id, sub_category_id, item_id, "up");}

	function ajaxContentOrder(category_id, sub_category_id, item_id, direction) {
		new Ajax.Request(sys_site +"AJAX/changeContentOrder.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_category_id: category_id, sys_sub_category_id: sub_category_id, sys_item_id: item_id, sys_direction: direction },
			onSuccess: function(transport) {
				var form = window.document.adminForm;
				form.submit();
			},
			onFailure: function(transport, e) { alert("Failure :" + e); },
			onException: function(transport, e) { alert("Exception :" + e); }
		});
	}
	
	function ajaxDeleteBasketItem(options) {
		var sys_order_id = options.sys_order_id;
		var sys_item_id = options.sys_item_id;
		var sys_category = options.sys_category;
		var sys_sub_category = options.sys_sub_category;
		var sys_style = options.sys_style;
		var sys_colour = options.sys_colour;
		new Ajax.Request(sys_site +"manage/AJAX/deleteBasketItem.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_order_id: sys_order_id, sys_item_id: sys_item_id, sys_style: sys_style, sys_colour: sys_colour, sys_category: sys_category, sys_sub_category: sys_sub_category },
			onSuccess: function(transport) {},
			onFailure: function(transport, e) { alert(e); },
			onException: function(transport, e) { alert(e); }
		});
	}

	function ajaxGetSubCategoryList(sys_section, sys_category_id, sys_username) {
		new Ajax.Request(sys_site +"AJAX/showSubCategories.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_section: sys_section, sys_category_id: sys_category_id, sys_username: sys_username },
			onSuccess: function(transport) {document.getElementById("outpostSubCategoryList_" + sys_category_id).innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostSubCategoryList_" + sys_category_id).innerHTML = originalRequest.responseText; },
			onException: function(){ document.getElementById("outpostSubCategoryList_" + sys_category_id).innerHTML = transport.responseText; }
		});
	}

	function ajaxUpdateProduct(item_id, username) {
		var form = window.document.adminForm;
		
		var soldout = (form.elements["frm_soldout_" + item_id].checked ? "Y" : "N");
		var price = form.elements["frm_price_" + item_id].value;
		var discount = form.elements["frm_discount_" + item_id].value;
		var limit = form.elements["frm_limit_" + item_id].value;

		new Ajax.Request(sys_site +"AJAX/updateProduct.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_item_id: item_id, sys_soldout: soldout, sys_price: price, sys_discount: discount, sys_limit: limit, sys_username: username }
		});
		
		var style = document.getElementById('outpostUpdate_' + item_id).style; style.display = "none";
	}

	function ajaxPublishItem(item_id) {
		var form = window.document.adminForm;
		var sys_task = form.sys_task.value;
		var sys_username = form.sys_username.value;

		var sys_section = form.sys_section.value;
		var sys_catgeory_id = form.sys_category_id.options[form.sys_category_id.selectedIndex].value;
		var sys_sub_catgeory_id = form.sys_sub_category_id.options[form.sys_sub_category_id.selectedIndex].value;

		var sys_selection = new Array();
		var sys_link_content = form.sys_link_content.value;
		var count = form.count.value;
		
		if (sys_link_content == "Y") {
			sys_selection['catgeory'] = form.category.options[form.category.selectedIndex].value;
			sys_selection['sub_catgeory'] = form.sub_category.options[form.sub_category.selectedIndex].value;
			sys_selection['item'] = form.item.options[form.item.selectedIndex].value;
		}
		else {
			sys_selection['catgeory'] = "";
			sys_selection['sub_catgeory'] = "";
			sys_selection['item'] = "";
		}

		new Ajax.Request(sys_site +"AJAX/publishItem.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_section: sys_section, sys_category_id: sys_catgeory_id, sys_sub_category_id: sys_sub_catgeory_id, sys_item_id: item_id, sys_task: sys_task, sys_username: sys_username, sys_selection: sys_selection, sys_count: count },
			onSuccess: function(transport) {document.getElementById("outpostShowItems").innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostShowItems").innerHTML = originalRequest.responseText; },
			onException: function(){ document.getElementById("outpostShowItems").innerHTML = transport.responseText; }
		});
	}

	function ajaxDeleteCategory(section, task, username, category_id) {
		new Ajax.Request(sys_site +"AJAX/deleteCategory.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_section: section, sys_task: task, sys_username: username, sys_category_id: category_id },
			onSuccess: function(transport) {document.getElementById("outpostCategoryInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostCategoryInformation").innerHTML = originalRequest.responseText; }
		});
		
		new Ajax.Request(sys_site +"AJAX/redrawContentMenu.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_section: section, sys_task: task, sys_username: username, sys_category_id: category_id },
			onSuccess: function(transport) {document.getElementById("outpostMenuInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostMenuInformation").innerHTML = originalRequest.responseText; }
		});
	}


	function ajaxDeleteSubCategory(section, task, username, category_id, sub_category_id) {
		new Ajax.Request(sys_site +"AJAX/deleteSubCategory.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_section: section, sys_task: task, sys_username: username, sys_category_id: category_id, sys_sub_category_id: sub_category_id },
			onSuccess: function(transport) {document.getElementById("outpostSubCategoryInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostSubCategoryInformation").innerHTML = originalRequest.responseText; }
		});
		
		new Ajax.Request(sys_site +"AJAX/redrawContentMenu.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_section: section, sys_task: task, sys_username: username, sys_category_id: category_id, sys_sub_category_id: sub_category_id },
			onSuccess: function(transport) {document.getElementById("outpostMenuInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostMenuInformation").innerHTML = originalRequest.responseText; }
		});
	}


	function menuUP(parent, current) {
		var form = window.document.menuForm;
		if (current > 1) {
			new Ajax.Request(sys_site +"AJAX/moveMenuItemUp.php", {
				method: 'post',
				asynchronous: false,
				parameters : { sys_menu_name: form.sys_menu_name.value, sys_parent: parent, sys_current_item: current },
				onSuccess: function(transport) {document.getElementById("outpostMenu").innerHTML = unescape(transport.responseText);},
				onFailure: function(){ document.getElementById("outpostMenu").innerHTML = originalRequest.responseText; }
			});
		}
	}


	function ajaxSaveStylesheet(sys_path) {
		var form = window.document.adminForm;
		sys_path = form.sys_filename.value;
		var content = form.outpostInformation.value;
		
		new Ajax.Request(sys_site +"AJAX/saveCSSContents.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_path: sys_path, sys_content: content },
			onSuccess: function(transport) {document.getElementById("outpostInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
		});
		
		setHideSave();
	}

	function ajaxCreateFile() {
		var form = window.document.adminForm;
		var sys_file = form.frm_filename.value;
		var sys_path = form.sys_path.value;
		
		if (sys_file == "") {
			alert("Please enter a valid filename.");
			return;
		}
		
		document.getElementById("outpostLayerTitle").innerHTML = "<h1 class='outpostAdmin'>" + sys_path + sys_file + "</h1>";
		form.sys_filename.value = sys_path + sys_file;
		form.outpostInformation.value = "";
		
		new Ajax.Request(sys_site +"AJAX/createFile.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_path: sys_path, sys_file: sys_file },
			onSuccess: function(transport) {document.getElementById("outpostInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(){ document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
		});
		
		setHideEdit();
	}
	
	function ajaxEditStylesheet(sys_path) {
		var form = window.document.adminForm;
		form.sys_filename.value = sys_path;
		
		document.getElementById("outpostLayerTitle").innerHTML = "<h1 class='outpostAdmin'>" + sys_path + "</h1>";
		new Ajax.Request(sys_site +"AJAX/getCSSContents.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_path: sys_path },
			onSuccess: function(transport) {form.outpostInformation.value = unescape(transport.responseText);},
			onFailure: function(){  document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
		});

		setHideSave();
	}


	function saveCategory(sys_username) {
		var form = window.document.adminForm;

		var section = form.sys_section.value;
		var id = form.sys_category_id.value;
		var category = form.sys_category_id.value;
		var title = form.title.value;

		if (section != "Images") {
			var oEditor = FCKeditorAPI.GetInstance('description');
			var content = oEditor.GetXHTML();
			if (form.elements['feature']) {
				var feature = form.feature.options[form.feature.selectedIndex].value;
				var template_id = form.frm_template_id.options[form.frm_template_id.selectedIndex].value;
				var link_content = ((form.link_content.checked) ? "Y" : "N");
				var secure_content = ((form.secure_content.checked) ? "Y" : "N");
			}
			else {
				var feature = "N";
				var template_id = 0;
				var link_content = "N";
				var secure_content = "N";
			}
		}
		else {	
			var content = "";
			var link_content = "N";
			var secure_content = "N";

			var feature = "N";
			var template_id = 0;
		}
		if (title == "")  {alert('Please enter a title.'); return;}
		
		new Ajax.Request(sys_site +"AJAX/saveCategory.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_username: sys_username, section: section, category_id: category, title: title, content: content, link_content: link_content, secure_content: secure_content, feature: feature, template_id: template_id },
			onSuccess: function(transport) {document.getElementById("outpostInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(){  document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
		});
		setHideSave();
	}

	function saveContentItem(sys_username) {
		var form = window.document.adminForm;

		var section = form.sys_section.value;
		var sys_item_id = form.sys_item_id.value;
		var sys_sub_category_id = form.sys_sub_category_id.value;
		var sys_category_id = form.sys_category_id.value;
		var account_id = form.sys_account_id.value;
		
		var content = new Array();
		for (var i=0; i < outpostElement.length; i++) {
			switch (outpostElementType[i]) {
				case 'editor':
					var oEditor = FCKeditorAPI.GetInstance(outpostElement[i]);
					content[content.length] = oEditor.GetXHTML();
					break;
				case 'select':
					content[content.length] = form.elements[outpostElement[i]].options[form.elements[outpostElement[i]].selectedIndex].value;
					break;
				default:
					content[content.length] = form.elements[outpostElement[i]].value;
			}
		}

		var parameters = "";
		var keys = "";
		for (var i=0; i < content.length; i++) {
			parameters = parameters + content[i];
			if (i < content.length -1) parameters = parameters + String.fromCharCode(19);
			keys = keys + outpostElement[i];
			if (i < content.length -1) keys = keys + String.fromCharCode(19);
		}
		if (section == "Forms" || section == "Members" || section == "On-Line Forms") {
			var title = form.frm_title.value;
			if (title == "")  {alert('Please enter a title.');  return;}

			var frontpage = form.frontpage.options[form.frontpage.selectedIndex].value;
			var template_id = form.frm_template_id.options[form.frm_template_id.selectedIndex].value;
			if (template_id == "") template_id = 0;

			new Ajax.Request(sys_site +"AJAX/saveContentItem.php", {
				method: 'post',
				asynchronous: false,
				parameters : { sys_username: sys_username, sys_section: section, sys_category_id: sys_category_id, sys_sub_category_id: sys_sub_category_id, sys_item_id: sys_item_id, sys_account_id: account_id, title: title, frontpage: frontpage, template_id: template_id, parameters: parameters, keys: keys },
				onSuccess: function(transport) {document.getElementById("outpostInformation").innerHTML = unescape(transport.responseText);},
				onFailure: function(originalRequest){  document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
			});
		}
		else {
			var title = form.title_product.value;
			var discount = form.discount.value;
			var limit = form.limit.value;
			var price = form.price.value;

			var itemStyles = form.itemStyles.value;
			var itemColours = form.itemColours.value;

			var vendor = form.vendor.options[form.vendor.selectedIndex].value;
			var unit = form.metric.options[form.metric.selectedIndex].value;
			var specials = form.special.options[form.special.selectedIndex].value;
			var soldout = form.soldout.options[form.soldout.selectedIndex].value;
			var image;
			if (form.image.selectedIndex > 0) image = form.image.options[form.image.selectedIndex].value;

			var frontpage = ((form.frontpage.checked) ? "Y" : "N");

			if ((title == "") || (price <= 0) || (vendor == "")) {alert('Please complete all deltails, (title, price, vendor).');  return;}

			var linkProducts = new Array();
			var links = "";
			for (var i=0; i <  form.link_product_id.options.length; i++) if (form.link_product_id.options[i].selected) links = links + form.link_product_id.options[i].value + String.fromCharCode(19);
			new Ajax.Request(sys_site +"AJAX/saveContentItem.php", {
				method: 'post',
				asynchronous: false,
				parameters : { sys_username: sys_username, sys_section: section, sys_category_id: sys_category_id, sys_sub_category_id: sys_sub_category_id, sys_item_id: sys_item_id, sys_account_id: account_id, title: title, frontpage: frontpage, unit: unit, special: specials, soldout: soldout, discount: discount, price: price, image: image, limit: limit, vendor: vendor, itemStyles: itemStyles, itemColours: itemColours, parameters: parameters, keys: keys, product_links: links },
				onSuccess: function(transport) {document.getElementById("outpostInformation").innerHTML = unescape(transport.responseText);},
				onFailure: function(originalRequest){  document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
			});
		}
		setHideSave();
	}

	function saveSubCategory(sys_username) {
		var form = window.document.adminForm;

		var section = form.sys_section.value;
		var id = form.sys_sub_category_id.value;
		var category_id = form.sys_category_id.value;
		var title = form.title.value;
		var loyalty = "N";
		var loyalty_qty = 0;

		if (section != "Images") {
			var oEditor = FCKeditorAPI.GetInstance('description');
			var content = oEditor.GetXHTML();

			if (form.elements['feature']) {
				var feature = form.feature.options[form.feature.selectedIndex].value;
				var link_content = ((form.link_content.checked) ? "Y" : "N");
				var secure_content = ((form.secure_content.checked) ? "Y" : "N");
				
				if (section == "Shop") {
					var element = form.loyalty;
					loyalty_qty = form.loyalty_qty.value;
					for (var i = 0; i < element.length; i++) {
						if (element[i].checked) loyalty = element[i].value;
					}
				}
			}
			else {
				var feature = "A";
				var link_content = "N";
				var secure_content = "N";
			}
		}
		else {	
			var content = "";
			var link_content = "N";
			var secure_content = "N";

			var feature = "N";
		}
		if (title == "")  {alert('Please enter a title.'); return;}
		
		new Ajax.Request(sys_site +"AJAX/saveSubCategory.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_username: sys_username, sys_section: section, sys_category_id: category_id, sys_sub_category_id: id, title: title, content: content, link_content: link_content, secure_content: secure_content, feature: feature, loyalty: loyalty, loyalty_qty: loyalty_qty },
			onSuccess: function(transport) {document.getElementById("outpostInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){  document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
		});
		setHideSave();
	}

	function saveFormDetails() {
		var form = window.document.adminForm;
		
		var id = form.sys_item_id.value;
		var save_category = form.frm_save_category.value;
		var next_page = form.frm_next_page.options[form.frm_next_page.selectedIndex].value;
		var return_site = form.frm_return_site.value;
		var email_sender = form.frm_email_sender.value;
		var email_subject = form.frm_email_subject.value;
		var receiver_email = form.frm_receiver_email.value;
		var email_send_template = form.frm_email_send_template.options[form.frm_email_send_template.selectedIndex].value;
		var send_email = "no";
		for (var i=0; i< form.frm_send_email.length; i++) {
			if (form.frm_send_email[i].checked) send_email = form.frm_send_email[i].value;
		}
		var save_content = "no";
		for (var i=0; i< form.frm_save_content.length; i++) {
			if (form.frm_save_content[i].checked) save_content = form.frm_save_content[i].value;
		}

		var save_title = form.frm_save_title.value;
		var save_to_category = form.frm_save_to_category.options[form.frm_save_to_category.selectedIndex].value;
		var save_sub_category = form.frm_save_sub_category.options[form.frm_save_sub_category.selectedIndex].value;
		var save_message_category = form.frm_save_message_category.options[form.frm_save_message_category.selectedIndex].value;
		var save_message_sub_category = form.frm_save_message_sub_category.options[form.frm_save_message_sub_category.selectedIndex].value;
		var save_message = form.frm_save_message.options[form.frm_save_message.selectedIndex].value;
		var cancel_message_category = form.frm_cancel_message_category.options[form.frm_cancel_message_category.selectedIndex].value;
		var cancel_message_sub_category = form.frm_cancel_message_sub_category.options[form.frm_cancel_message_sub_category.selectedIndex].value;
		var cancel_message = form.frm_cancel_message.options[form.frm_cancel_message.selectedIndex].value;
		var error_colour = form.frm_error_colour.value;
		var normal_colour = form.frm_normal_colour.value;
		
		var auto_enabled = "";
		if (form.frm_auto_enabled.checked) auto_enabled = form.frm_auto_enabled.value;
		var allow_file_upload = "";
		if (form.frm_allow_file_upload.checked) allow_file_upload = form.frm_allow_file_upload.value;
		var account_form = "";
		if (form.frm_account_form.checked) account_form = form.frm_account_form.value;

		new Ajax.Request(sys_site +"AJAX/saveFormDetails.php", {
			method: 'post',
			asynchronous: false,
			parameters : {  sys_item_id: id, sys_save_category: save_category, sys_next_page: next_page, sys_return_site: return_site, sys_email_sender: email_sender,	sys_email_subject: email_subject, sys_receiver_email: receiver_email, sys_email_send_template: email_send_template,	sys_send_email: send_email, sys_save_content: save_content,	sys_save_title: save_title,	sys_save_to_category: save_to_category, sys_save_sub_category: save_sub_category, sys_save_message_category: save_message_category, sys_save_message_sub_category: save_message_sub_category, sys_save_message: save_message, sys_cancel_message_category: cancel_message_category, sys_cancel_message_sub_category: cancel_message_sub_category, sys_cancel_message: cancel_message, sys_error_colour: error_colour, sys_normal_colour: normal_colour, sys_auto_enabled: auto_enabled, sys_allow_file_upload: allow_file_upload, sys_account_form: account_form },
			onSuccess: function(transport) {document.getElementById("outpostInformation").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){  document.getElementById("outpostInformation").innerHTML = originalRequest.responseText; }
		});
		setHideSave();
	}


	function exitItemEdit(sys_username) {
		var form = window.document.adminForm;

		var sys_section = form.sys_section.value;
		var sys_category_id = form.sys_category_id.value;
		var sys_sub_category_id = form.sys_sub_category_id.value;
		var sys_item_id = form.sys_item_id.value;
		
		new Ajax.Request(sys_site +"AJAX/checkInItem.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_username: sys_username, sys_category_id: sys_category_id, sys_sub_category_id: sys_sub_category_id, sys_item_id: sys_item_id, sys_result: 'none' },
			onFailure: function(sys_username){ alert(originalRequest.responseText); }
		});
		autoAction(sys_section, '', 'show', sys_category_id, sys_sub_category_id, sys_item_id);
	}

	function exitSubCategoryEdit(sys_username) {
		var form = window.document.adminForm;

		var sys_section = form.sys_section.value;
		var sys_category_id = form.sys_category_id.value;
		var sys_sub_category_id = form.sys_sub_category_id.value;
		
		new Ajax.Request(sys_site +"AJAX/checkInSubCategory.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_user_name: sys_username, sys_category_id: sys_category_id, sys_sub_category_id: sys_sub_category_id, sys_result: 'none' },
			onFailure: function(sys_username){ alert(originalRequest.responseText); }
		});
		autoAction(sys_section, 'subcategories', 'show', sys_category_id, sys_sub_category_id, '');
	}

	function exitCategoryEdit(sys_username) {
		var form = window.document.adminForm;

		var sys_section = form.sys_section.value;
		var sys_category_id = form.sys_category_id.value;
		
		new Ajax.Request(sys_site +"AJAX/checkInCategory.php", {
			method: 'post',
			asynchronous: false,
			parameters : { sys_user_name: sys_username, sys_category_id: sys_category_id, sys_result: 'none' },
			onFailure: function(sys_username){ alert(originalRequest.responseText); }
		});
		autoAction(sys_section, 'categories', 'show', sys_category_id, '', '');
	}


	function detailsMessageChanged(object) {
		var form = window.document.adminForm;
		var sub_category_id = object.options[object.selectedIndex].value;
		switch (object.name) {
			case "frm_save_to_category":
				new Ajax.Request(sys_site +"AJAX/formDetailsCategoryChanged.php", {
					method: 'post',
					parameters : { category_id: sub_category_id, list_name: 'frm_save_to_sub_category' },
					onSuccess: function(transport) {document.getElementById("outpostSaveToCategory").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostSaveToCategory").innerHTML = originalRequest.responseText; }
				});

				break;
			case "frm_save_message_category":
				new Ajax.Request(sys_site +"AJAX/formDetailsCategoryChanged.php", {
					method: 'post',
					parameters : { category_id: sub_category_id, list_name: 'frm_save_message_sub_category' },
					onSuccess: function(transport) {document.getElementById("outpostSaveMessageCategory").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostSaveToCategory").innerHTML = originalRequest.responseText; }
				});

				break;
			case "frm_cancel_message_category":
				new Ajax.Request(sys_site +"AJAX/formDetailsCategoryChanged.php", {
					method: 'post',
					parameters : { category_id: sub_category_id, list_name: 'frm_cancel_message_sub_category' },
					onSuccess: function(transport) {document.getElementById("outpostCancelMessageCategory").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostSaveToCategory").innerHTML = originalRequest.responseText; }
				});

				break;
			case "frm_save_message_sub_category":
				var category_id = form.frm_save_message_category.options[form.frm_save_message_category.selectedIndex].value;
				new Ajax.Request(sys_site +"AJAX/formDetailsSubCategoryChanged.php", {
					method: 'post',
					parameters : { category_id: category_id, sub_category_id: sub_category_id, list_name: 'frm_save_message' },
					onSuccess: function(transport) {document.getElementById("outpostSaveMessageItem").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostSaveToCategory").innerHTML = originalRequest.responseText; }
				});
				break;
			case "frm_cancel_message_sub_category":
				var category_id = form.frm_cancel_message_category.options[form.frm_cancel_message_category.selectedIndex].value;
				var category_id = form.frm_save_message_category.options[form.frm_save_message_category.selectedIndex].value;
				new Ajax.Request(sys_site +"AJAX/formDetailsSubCategoryChanged.php", {
					method: 'post',
					parameters : { category_id: category_id, sub_category_id: sub_category_id, list_name: 'frm_cancel_message' },
					onSuccess: function(transport) {document.getElementById("outpostCancelMessageItem").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostSaveToCategory").innerHTML = originalRequest.responseText; }
				});
				break;
		} 
		setSave();
	}

	function deleteDetails() {
		var form = window.document.adminForm;
		new Ajax.Request(sys_site +"AJAX/deleteFormDetails.php", {
			method: 'post',
			parameters : { sys_category_id:form.sys_category_id.value, sys_sub_category_id: form.sys_sub_category_id.value , sys_item_id: form.sys_item_id.value },
			onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
		});

		var style = document.getElementById("outpostDelete").style;
		style.display = style.display = "none";		
	}

	function menuChanged(object) {
		new Ajax.Request(sys_site +"AJAX/menuMenuChange.php", {
			method: 'post',
			parameters : { menu_id: object.options[object.selectedIndex].value},
			onSuccess: function(transport) {document.getElementById("outpostMenuItem").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostMenuItem").innerHTML = originalRequest.responseText; }
		});
	}

	function addMenuLink() {
		var form = window.document.adminForm;
		var menu_id = form.menu_name.options[form.menu_name.selectedIndex].value;
		var menu_item_id = form.menu_item.options[form.menu_item.selectedIndex].value;
		
		var sys_item_id = form.sys_item_id.value;
		var sys_category_id = form.sys_category_id.value;
		var sys_sub_category_id = form.sys_sub_category_id.value;
		
		if (form.sys_task.value == "subcategories") sys_item_id = -1;
		if (form.sys_task.value == "categories") {
			sys_item_id = -1;
			sys_sub_category_id = -1;
		}

		new Ajax.Request(sys_site +"AJAX/menuAddMenuLink.php", {
			method: 'post',
			parameters : { sys_category_id:sys_category_id, sys_sub_category_id:sys_sub_category_id, sys_item_id:sys_item_id, menu_id:menu_id, menu_item:menu_item_id },
			onSuccess: function(transport) {document.getElementById("outpostMenuLinks").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostMenuLinks").innerHTML = originalRequest.responseText; }
		});
	}
	
	function delMenuLink(menu_id, menu_item_id) {
		var form = window.document.adminForm;
		var sys_item_id = form.sys_item_id.value;
		var sys_category_id = form.sys_category_id.value;
		var sys_sub_category_id = form.sys_sub_category_id.value;
		if (form.sys_task.value == "subcategories") sys_item_id = -1;
		if (form.sys_task.value == "categories") {
			sys_item_id = -1;
			sys_sub_category_id = -1;
		}
		new Ajax.Request(sys_site +"AJAX/menuDeleteMenuLink.php", {
			method: 'post',
			parameters : { sys_category_id:sys_category_id, sys_sub_category_id:sys_sub_category_id, sys_item_id:sys_item_id, menu_id:menu_id, menu_item:menu_item_id },
			onSuccess: function(transport) {document.getElementById("outpostMenuLinks").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostMenuLinks").innerHTML = originalRequest.responseText; }
		});
	}
	
	function insertItem(sys_menu_name, sys_menu_parent, sys_menu_index) {
		new Ajax.Request(sys_site +"AJAX/menuInsertMenuItem.php", {
			method: 'post',
			parameters : { sys_menu_name:sys_menu_name, sys_menu_parent:sys_menu_parent, sys_menu_index:sys_menu_index },
			onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostMenuLinks").innerHTML = originalRequest.responseText; }
		});
	}

	function deleteItem(sys_menu_name, sys_menu_parent, sys_menu_index) {
		new Ajax.Request(sys_site +"AJAX/menuDeleteMenuItem.php", {
			method: 'post',
			parameters : { sys_menu_name:sys_menu_name, sys_menu_parent:sys_menu_parent, sys_menu_index:sys_menu_index },
			onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
		});
	}

	function insertGapItem(sys_menu_name, sys_menu_parent, sys_menu_index) {
		new Ajax.Request(sys_site +"AJAX/menuInsertMenuGap.php", {
			method: 'post',
			parameters : { sys_menu_name:sys_menu_name, sys_menu_parent:sys_menu_parent, sys_menu_index:sys_menu_index },
			onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
		});
	}


	function insertSubMenu(sys_menu_name, sys_menu_parent) {
		new Ajax.Request(sys_site +"AJAX/menuInsertSubMenu.php", {
			method: 'post',
			parameters : { sys_menu_name:sys_menu_name, sys_menu_parent:sys_menu_parent, sys_menu_index: 0 },
			onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
		});
	}


	function showMenuItems(menu_item_id) {
		new Ajax.Request(sys_site +"AJAX/menuShowMenuItem.php", {
			method: 'post',
			parameters : { sys_menu_name: menu_item_id, sys_menu_parent: '', sys_menu_index: '' },
			onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
			onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
		});
	}
	
	function outpostCheckin(sys_username, sys_section, sys_category_id, sys_sub_category_id, sys_item_id, search_term) {
		switch (sys_section) {
			case "category":
				new Ajax.Request(sys_site +"AJAX/checkInCategory.php", {
					method: 'post',
					parameters : { user_name: sys_username, sys_category_id: sys_category_id },
					onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
				});
				break;
			case "sub_category":
				new Ajax.Request(sys_site +"AJAX/checkInSubCategory.php", {
					method: 'post',
					parameters : { user_name: sys_username, sys_category_id: sys_category_id, sys_sub_category_id: sys_sub_category_id },
					onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
				});
				break;
			case "item":
				new Ajax.Request(sys_site +"AJAX/checkInSubCategory.php", {
					method: 'post',
					parameters : { user_name: sys_username, sys_category_id: sys_category_id, sys_sub_category_id: sys_sub_category_id, sys_item_id: sys_item_id },
					onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
				});
				break;
			case "searchitem":
				new Ajax.Request(sys_site +"AJAX/checkinSearchItem.php", {
					method: 'post',
					parameters : { user_name: sys_username, sys_category_id: sys_category_id, sys_sub_category_id: sys_sub_category_id, sys_item_id: sys_item_id, sys_search_term: search_term },
					onSuccess: function(transport) {document.getElementById("outpostShowPage").innerHTML = unescape(transport.responseText);},
					onFailure: function(originalRequest){ document.getElementById("outpostShowPage").innerHTML = originalRequest.responseText; }
				});
				break;
		}
	}

	function setSave(editorInstance) {
		if (document.getElementById("outpostSave")) {
			var style = document.getElementById("outpostSave").style;
			style.display = style.display = "";		
		}
	}

	function showOutPostEdit() {
		var style = document.getElementById("outpostEditLayer").style;
		style.display = style.display = "";		
	}

	function setDelete() {
		var style = document.getElementById("outpostDelete").style;
		style.display = style.display = "none";		
	}

	
	function grayOut(vis, options) {
	  // Pass true to gray out screen, false to ungray
	  // options are optional.  This is a JSON object with the following (optional) properties
	  // opacity:0-100         // Lower number = less grayout higher = more of a blackout 
	  // zindex: #             // HTML elements with a higher zindex appear on top of the gray out
	  // bgcolor: (#xxxxxx)    // Standard RGB Hex color code
	  // grayOut(true, {'zindex':'50', 'bgcolor':'#0000FF', 'opacity':'70'});
	  // Because options is JSON opacity/zindex/bgcolor are all optional and can appear
	  // in any order.  Pass only the properties you need to set.
	  var options = options || {}; 
	  var zindex = options.zindex || 50;
	  var opacity = options.opacity || 70;
	  var opaque = (opacity / 100);
	  var bgcolor = options.bgcolor || '#000000';
	  var dark=document.getElementById('darkenScreenObject');
	  if (!dark) {
		// The dark layer doesn't exist, it's never been created.  So we'll
		// create it here and apply some basic styles.
		// If you are getting errors in IE see: http://support.microsoft.com/default.aspx/kb/927917
		var tbody = document.getElementsByTagName("body")[0];
		var tnode = document.createElement('div');           // Create the layer.
			tnode.style.position='absolute';                 // Position absolutely
			tnode.style.top='0px';                           // In the top
			tnode.style.left='0px';                          // Left corner of the page
			tnode.style.overflow='hidden';                   // Try to avoid making scroll bars            
			tnode.style.display='none';                      // Start out Hidden
			tnode.id='darkenScreenObject';                   // Name it so we can find it later
		tbody.appendChild(tnode);                            // Add it to the web page
		dark=document.getElementById('darkenScreenObject');  // Get the object.
	  }
	  if (vis) {
		// Calculate the page width and height 
		if( document.body && ( document.body.scrollWidth || document.body.scrollHeight ) ) {
			var pageWidth = document.body.scrollWidth+'px';
			var pageHeight = document.body.scrollHeight+'px';
		} else if( document.body.offsetWidth ) {
		  var pageWidth = document.body.offsetWidth+'px';
		  var pageHeight = document.body.offsetHeight+'px';
		} else {
		   var pageWidth='100%';
		   var pageHeight='100%';
		}   
		//set the shader to cover the entire page and make it visible.
		dark.style.opacity=opaque;                      
		dark.style.MozOpacity=opaque;                   
		dark.style.filter='alpha(opacity='+opacity+')'; 
		dark.style.zIndex=zindex;        
		dark.style.backgroundColor=bgcolor;  
		dark.style.width= pageWidth;
		dark.style.height= pageHeight;
		dark.style.display='block';                          
	  } else {
		 dark.style.display='none';
	  }
	}	
	
	function grayOutLayer(layer, vis, options) {
	  // Pass true to gray out screen, false to ungray
	  // options are optional.  This is a JSON object with the following (optional) properties
	  // opacity:0-100         // Lower number = less grayout higher = more of a blackout 
	  // zindex: #             // HTML elements with a higher zindex appear on top of the gray out
	  // bgcolor: (#xxxxxx)    // Standard RGB Hex color code
	  // grayOut(true, {'zindex':'50', 'bgcolor':'#0000FF', 'opacity':'70'});
	  // Because options is JSON opacity/zindex/bgcolor are all optional and can appear
	  // in any order.  Pass only the properties you need to set.
	  var options = options || {}; 
	  var zindex = options.zindex || 50;
	  var opacity = options.opacity || 70;
	  var opaque = (opacity / 100);
	  var bgcolor = options.bgcolor || '#000000';
	  var dark=document.getElementById('darkenScreenObject');

		var _layer = outpostGetLayer(layer);

	  if (!dark) {
		var tnode = document.createElement('div');           // Create the layer.
			tnode.style.position='absolute';                 // Position absolutely
//			tnode.style.top='0px';                           // In the top
//			tnode.style.left='0px';                          // Left corner of the page
			tnode.style.overflow='hidden';                   // Try to avoid making scroll bars            
			tnode.style.display='none';                      // Start out Hidden
			tnode.id='darkenScreenObject';                   // Name it so we can find it later
		_layer.appendChild(tnode);                            // Add it to the web page
		dark=document.getElementById('darkenScreenObject');  // Get the object.
	  }
	  if (vis) {
		// Calculate the page width and height 
		if( _layer && ( _layer.scrollWidth || _layer.scrollHeight ) ) {
			var pageWidth = _layer.scrollWidth+'px';
			var pageHeight = _layer.scrollHeight+'px';
		} else if( _layer.offsetWidth ) {
		  var pageWidth = _layer.offsetWidth+'px';
		  var pageHeight = _layer.offsetHeight+'px';
		} else {
		   var pageWidth='100%';
		   var pageHeight='100%';
		}   
		//set the shader to cover the entire page and make it visible.
		dark.style.opacity=opaque;                      
		dark.style.MozOpacity=opaque;                   
		dark.style.filter='alpha(opacity='+opacity+')'; 
		dark.style.zIndex=zindex;        
		dark.style.backgroundColor=bgcolor;  
		dark.style.width= pageWidth;
		dark.style.height= pageHeight;
		dark.style.display='block';                          
	  } else {
		 dark.style.display='none';
	  }
	}	

