var fn = {

	container: null,
	text: null,
	button: null,
	ajax: false,
	
	erzeugen: function(str) {
	
		fn.container	=	document.createElement("div");
		fn.container.id	=	"editbox";
		
		if (str != "Bild") {
		
			fn.text			=	document.createElement("textarea");
		
		} else {
		
			fn.text			=	document.createElement("select");
		
		}
		
		fn.button		=	document.createElement("button");
		
		var ueber		=	document.createElement("h1");
		
		var link		=	document.createElement("a");
		link.setAttribute("href", "javascript:fn.schliessen()");
		
		ueber.appendChild(document.createTextNode(str+" Text hinzuf?gen"));
		ueber.appendChild(link);
		
		var type		=	document.createAttribute("type");
		var click		=	document.createAttribute("onClick");
		type.nodeValue	=	"button";
		click.nodeValue	=	"append('"+str+"')";
		
		fn.button.setAttributeNode(type);
		fn.button.appendChild(document.createTextNode("OK"));
		fn.button.setAttributeNode(click);
		
		//fn.button.type	=	"button";
		
		fn.container.appendChild(ueber);
		fn.container.appendChild(fn.text);
		fn.container.appendChild(document.createElement("br"));
		fn.container.appendChild(fn.button);
		
		//fn.container.style.right	=	document.documentElement.scrollRight + 150;
		fn.container.style.top		=	document.documentElement.scrollTop + 200 + "px";
		
		return fn.container;
	
	},
	
	schliessen: function() {
	
		document.getElementsByTagName("body")[0].removeChild(fn.container);
		fn.container	=	null;
	
	},
	
	holen: function() {
	
		try {
		
			fn.ajax	=	new XMLHttpRequest();
		
		} catch (w3c) {
		
			try {
			
			fn.ajax =	new ActiveXObject("Msxml2.XMLHTTP");
		
			} catch (msie) {
		
				try {
			
					fn.ajax =	new ActiveXObject("Microsoft.XMLHTTP");
			
				} catch (msie_alt) {
			
					alert("Klappt nicht.");
					return false;
			
				}
				
			}
		
		}
		
		fn.ajax.open('GET', 'xmlbilder.php', true);
		
		//fn.ajax.setRequestHeader('Content-Type', 'text/xml');
  // umgeht Internet Explorers Caching von GET-Anfragen
  		fn.ajax.setRequestHeader('If-Modified-Since', 'Sat, 1 Jan 2000 00:00:00 GMT');
		
		
		fn.ajax.send(null);
		
		fn.ajax.onreadystatechange = function() {
		
			if (fn.ajax.readyState == 4) {
			
				if (fn.ajax.status != 200 && fn.ajax.status != 0) {
				
					alert("Problem: "+ fn.ajax.statusText);
					return false;
				
				}
				
				var bild	=	fn.ajax.responseXML.getElementsByTagName("bild");
				
				for (i = 0; i < bild.length; i++) {
				
					var option	=	document.createElement("option");
					var name	=	bild[i].getElementsByTagName("name")[0].firstChild.nodeValue;
			//		alert(bild[i].getElementsByTagName("desc").length);
					var desc	=	bild[i].getElementsByTagName("desc")[0].firstChild.nodeValue;
					var img		=	bild[i].getElementsByTagName("image")[0].firstChild.nodeValue;
					//var value	=	document.createAttribute("value");
					
					//value.nodeValue	=	img;
					
					option.value =	img;
				//	alert(img);
				//	alert(name);
				//	alert(desc.length);
					
					if (desc.length <= 1) {
					
						option.text	=	name;
				//		alert(name);
					
					} else {
					
						option.text	=	desc;
					//	alert(desc);
					
					}
					
					fn.text.appendChild(option);
				
				}
			
			}
		
		}
	
	}

}

function textType(str) {
	
	if (fn.container) fn.schliessen();
	
	document.getElementsByTagName("body")[0].appendChild(fn.erzeugen(str));
	fn.holen();

}

function append(str) {
	
	if (str != "Bild") {
	
		var text	=	fn.text.value;
	
	} else {
	
		for (i = 0; i < fn.text.childNodes.length; i++) {
		
			if (fn.text.childNodes[i].selected == true) {
			
				var text	=	fn.text.childNodes[i].value;
				break;
			
			} 
		
		}
	
	}
	
	var oldText	=	document.getElementById("textFeld").value;
	
	if (str == "Kursive") {
	
		var newText	=	oldText + "[i]" + text + "[/i]";
	
	} else if (str == "Fett") {
	
		var newText	=	oldText + "[b]" + text + "[/b]";
	
	} else if (str == "Bild") {
	
		var newText	=	oldText + "[img]" + text + "[/img]";
	
	} else if (str == "Link") {
	
		var newText	=	oldText + "[url]" + text + "[/url]";
	
	}
	
	document.getElementById("textFeld").value	=	newText;
	
	fn.schliessen();

}

var bid	= {

	abid: "",
	dbid: "",
	fname: "",
	
	addBid: function(id) {
	
		var checkArr	=	document.getElementsByName("bid[]");
		var regex		=	new RegExp(id, "i");
		var repex		=	new RegExp(id+";", "i");
		
		for (i = 0; i < checkArr.length; i++) {
			
			//alert("Checked: "+checkArr[i].checked+"\nId: "+id+"\nValue: "+checkArr[i].value);
			
			if (checkArr[i].checked == true && checkArr[i].value == id) {
				
				//alert("checked and id");
				
				if (bid.abid.search(regex) == -1 && bid.dbid.search(regex) != -1) {
				
					bid.dbid	=	bid.dbid.replace(repex, "");
					bid.abid	=	bid.abid + id + ";";
				
				} else if (bid.abid.search(regex) == -1) {
				
			//		alert("hallo");
					bid.abid	=	bid.abid + id + ";";
				
				}
			
			} else if (checkArr[i].value == id) {
				
				//alert("die id passt");
			
				if (bid.dbid.search(regex) == -1 && bid.abid.search(regex) != -1) {
				
			//		alert("Das Andere Hallo");
					bid.abid	=	bid.abid.replace(repex, "");
					bid.dbid	=	bid.dbid + id +";";
				
				} else if (bid.dbid.search(regex) == -1) {
				
					bid.dbid	=	bid.dbid + id +";";
				
				}
			
			}
		
		}
		
		//alert(bid.abid+"\n"+bid.dbid);
		bid.addBidToSession();
	
	},
	
	addTitle: function () {
		
		var name	=	document.getElementById("groupName");
		
		//alert("Hallo\n"+name.value);
		
		bid.fname	=	name.value;
		
		bid.addTitleToSession();
		
	},
	
	addTitleToSession: function() {
		
		var ajax	=	false;
		var sessid	=	document.getElementById("phpSessid");
		//alert(sessid.value);
	
		try {
			
			ajax	=	new XMLHttpRequest();
		
		} catch (w3c) {
		
			try {
			
			ajax =	new ActiveXObject("Msxml2.XMLHTTP");
	
			} catch (msie) {
		
				try {
			
					ajax =	new ActiveXObject("Microsoft.XMLHTTP");
			
				} catch (msie_alt) {
			
					alert("Klappt nicht.");
					return false;
			
				}
				
			}
		
		}
		
		ajax.onreadystatechange	=	function() {
		
			if (ajax.readyState	==	1) {
				
				ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
				ajax.send("nobid=1&title="+bid.fname+"&sessid="+sessid.value);
				//alert("abid="+bid.abid+"&dbid="+bid.dbid+"&sessid="+sessid.value);
			
			} else if (ajax.readyState == 3 || ajax.readyState == 4) {
			
				//alert("Status: "+ajax.status+"\n"+ajax.statusText);
			
			}
		
		}
		
		ajax.open("POST", "appendBid.php", true);
		
	},

	addBidToSession: function () {
	
		var ajax	=	false;
		var sessid	=	document.getElementById("phpSessid");
		//alert(sessid.value);
	
		try {
			
			ajax	=	new XMLHttpRequest();
		
		} catch (w3c) {
		
			try {
			
			ajax =	new ActiveXObject("Msxml2.XMLHTTP");
	
			} catch (msie) {
		
				try {
			
					ajax =	new ActiveXObject("Microsoft.XMLHTTP");
			
				} catch (msie_alt) {
			
					alert("Klappt nicht.");
					return false;
			
				}
				
			}
		
		}
		
		ajax.onreadystatechange	=	function() {
		
			if (ajax.readyState	==	1) {
				
				ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
				ajax.send("abid="+bid.abid+"&dbid="+bid.dbid+"&sessid="+sessid.value);
			
			} else if (ajax.readyState == 3 || ajax.readyState == 4) {
			
			//	alert("Status: "+ajax.status+"\n"+ajax.statusText);
			
			}
		
		}
		
		ajax.open("POST", "appendBid.php", true);
		
	
	}

}