var dropdowntimeout;
var amadd = function(id) {
	$(id).value = parseInt($(id).value) + 1;
	if($(id) < 0) $(id).value = 0;
}
var amsub = function(id) {
	$(id).value = parseInt($(id).value) - 1;
	if($(id).value < 0) $(id).value = 0;
}
var ajaxDropdown = function(name, file, noquery) {
	clearTimeout(dropdowntimeout);
	start = function() {
		if(!noquery) { var q = $(name + "_input").value; }
		new Ajax.Updater(name + "_list", file, {
			method: 'post',
			evalScripts: true,
			parameters: { q: q },
			onCreate: function() { wait($(name + "_list"), "<p>Liste wird geladen...</p>"); $(name + "_list").show(); }
		});
	}
	dropdowntimeout = setTimeout("start()", 500);
}
var ajaxDropdownBlur = function(name) {
	clearTimeout(dropdowntimeout);
	dropdowntimeout = setTimeout("ajaxDropdownSelect('" + name + "', $('" + name + "_input').value, $('" + name + "_input').value)", 100);
}
var ajaxDropdownSelect = function(name, value, label) {
	if($(name + "_hidden")) { $(name + "_hidden").value = value; }
	$(name + "_input").value = label;
	$(name + "_list").hide();
}
var calendar = function(target, y, m, d, doafter) {
	new Ajax.Updater("overlaybox", "snippets/tools/calendar.php", {
			method: 'post',
			evalScripts: true,
			parameters: { target: target, doafter: doafter, y: y, m: m, d: d },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "436px"; }
		});
}
var clearOverlay = function() { $("overlay").style.display = "none"; }
var composeMessage = function(to) {
	new Ajax.Updater("overlaybox", "snippets/community/messages/compose.php", {
			method: 'get',
			evalScripts: true,
			parameters: { to: to },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "600px"; }
		});
}
var editImageText = function(id) {
	new Ajax.Updater("overlaybox", "snippets/tools/imageadder/edittext.php", {
			method: 'post',
			evalScripts: true,
			parameters: { id: id },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "600px"; },
			onCreate: function() { wait("overlaybox"); }
		});
}
var editText = function(id) {
	new Ajax.Updater("overlaybox", "snippets/tools/texts/edit.php", {
			method: 'post',
			evalScripts: true,
			parameters: { id: id },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "600px"; },
			onCreate: function() { wait("overlaybox"); }
		});
}
var editTextHTML = function(id) {
	new Ajax.Updater("text_" + id, "snippets/tools/texts/edithtml.php", {
			method: 'post',
			evalScripts: true,
			parameters: { id: id },
			onCreate: function() { wait("text_" + id); }
		});
}
var featuredetails = function(featureid, packageid) {
	new Ajax.Updater("overlaybox", "snippets/products/product/features/combfulldetails.php", {
			method: 'post',
			evalScripts: true,
			parameters: { featureid: featureid, packageid: packageid },
			onCreate: function() { wait($("overlaybox")); $("overlay").style.display = "block"; }
		});
}
var friendrq = function(to) {
	new Ajax.Updater("overlaybox", "snippets/community/friends/request.php", {
			method: 'get',
			evalScripts: true,
			parameters: { to: to },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "400px"; }
		});
}
var geoSetPos = function(q, target) {
	new Ajax.Updater("overlaybox", "snippets/tools/geo/setpos.php", {
			method: 'get',
			evalScripts: true,
			parameters: { q: q, target: target },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "600px"; }
		});
}
var geoShowPos = function(q, header) {
	new Ajax.Updater("overlaybox", "snippets/tools/geo/showpos.php", {
			method: 'get',
			evalScripts: true,
			parameters: { q: q, header: header },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "600px"; }
		});
}
var myPresenceUi = function(eventid) {
	new Ajax.Updater("mypresence[" + eventid + "]", "snippets/tools/presence/ui.php", {
			method: 'post',
			evalScripts: true,
			parameters: { eventid: eventid }
		});
}
var keepOnline = function() {
	new Ajax.Updater("test", "snippets/community/keep_online.php", {
			method: 'post',
			evalScripts: true
		});
}
var offer_additem = function(tableid, itemid, field) {
	new Ajax.Request("snippets/tools/offers/additem.php", {
			method: 'post',
			evalScripts: true,
			parameters: { tableid: tableid, itemid: itemid, field: field },
			onComplete: function() { offer_cart(); },
			onCreate: function() { wait($("offer_cart"), "Wird hinzugefügt..."); }
		});
}
var offer_remitem = function(tableid, itemid, field) {
	new Ajax.Request("snippets/tools/offers/remitem.php", {
			method: 'post',
			evalScripts: true,
			parameters: { tableid: tableid, itemid: itemid, field: field },
			onComplete: function() { offer_cart(); },
			onCreate: function() { wait($("offer_cart"), "Wird entfernt..."); }
		});
}
var offer_cart = function() {
	new Ajax.Updater("offer_cart", "snippets/tools/offers/cart.php", {
			method: 'post',
			evalScripts: true
		});
	$("offer_cart").show();
}
var offer_hidecart = function() {
	$("offer_cart").hide();
}
var offer_submit = function() {
	new Ajax.Updater("offer_cart", "snippets/tools/offers/submit.php", {
			method: 'post',
			evalScripts: true,
			onCreate: function() { wait($("offer_cart"), "Wird gesendet..."); }
		});
}
var previewText = function(text) {
	new Ajax.Updater("overlaybox", "snippets/tools/previewtext.php", {
			method: 'post',
			evalScripts: true,
			parameters: { text: text },
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "400px"; }
		});
}
var rate = function(table, id, rating) {
	new Ajax.Updater("test", "snippets/tools/rating/rate.php", {
			method: 'post',
			evalScripts: true,
			parameters: { table: table, id: id, rating: rating },
			onSuccess: function() { ratingBox(table, id); }
		});
}
var ratingHover = function(table, id, rating, icon) {
	for(i = 1; i <= 5; i++) {
		$("rate_" + table + "_" + id + "_" + i).src = "imgs/icons/" + icon + ".dimmed";
	}
	for(i = 1; i <= rating; i++) {
		$("rate_" + table + "_" + id + "_" + i).src = "imgs/icons/" + icon;
	}
}
var ratingBox = function(table, id) {
	new Ajax.Updater("rbox_" + table + "_" + id, "snippets/tools/rating/ratingbox.php", {
			method: 'post',
			evalScripts: true,
			parameters: { table: table, id: id }
		});
}
var replaceHeaders = function() {
	var headers = $$('h1');
	for(i = 0; i < headers.length; i++) {
		var label = headers[i].innerHTML;
		headers[i].replace("<img src=\"php/imgs/h1.php?t=" + escape(label) + "\" class=\"h1\" alt=\"" + label + "\" />");
	}
}
var savePresence = function(eventid) {
	new Ajax.Request("snippets/tools/presence/save.php", {
			method: 'post',
			evalScripts: true,
			parameters: $("presenceform[" + eventid + "]").serialize(),
			onCreate: function() { $("presencecheckbox[" + eventid + "]").replace("<img src=\"imgs/icons/wait16trans.gif\" class=\"ajaxWait\" />"); },
			onComplete: function() { myPresenceUi(eventid); }
		});
}
var showImage = function(file, text) {
	new Ajax.Updater("overlaybox", "snippets/tools/image.php", {
			method: 'get',
			evalScripts: true,
			parameters: { file: file, text: text },
			onCreate: function() { $("overlay").style.display = "block"; $("overlaybox").innerText = "Lade..."; },
			onComplete: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "600px"; }
		});
}
var wait = function(elementid, text) {
	$(elementid).innerHTML = "<span class=\"wait\"><img src=\"imgs/icons/wait16trans.gif\" /> " + text + "</span>";
}
var writeNews = function() {
	new Ajax.Updater("overlaybox", "snippets/news/compose.php", {
			method: 'get',
			evalScripts: true,
			onSuccess: function() { $("overlay").style.display = "block"; $("overlaybox").style.width = "400px"; }
		});
}
