// OWN STUFF

function insertTable(formname,fieldname) {
	id = prompt('Bitte geben Sie die Referenznummer der Tabelle ein');
	insert('[tabelle]' + id,'[/tabelle]',formname,fieldname);
}

function insertImage(bildid, formname,fieldname) {
	referenz = prompt('Bitte geben Sie die Referenz für das Bild ein (leerlassen für Original)');
	if(referenz) toInsert = '=' + referenz; else toInsert = referenz;
	insert('[bild' + toInsert + ']' + bildid,'[/bild]',formname,fieldname);
}

function toggleImageCat(id,idStr,bdivprefix) {
	handler = document.getElementById(id);
	splited = idStr.split("-");
	for(i=0;i<splited.length;i++) {
		document.getElementById(bdivprefix + splited[i]).style.display = 'none';
	}
	document.getElementById(bdivprefix + handler.value).style.display = 'block';
}

function makeBorder(id,idStr,imgPrefix,idForHidden) {
		handler = document.getElementById(id);
		hiddenhandler = document.getElementById(idForHidden);
		splited = idStr.split("-");
		for(i=0;i<splited.length;i++) {
			if(document.getElementById(imgPrefix + splited[i])) {
				document.getElementById(imgPrefix + splited[i]).style.border = 'none';
			}
		}
		handler.style.border = '1px solid red';
		document.getElementById('tomedia').value = idForHidden
}

function confirmLink(mylink,text) {
  	stat = confirm(decodeURI(text));
	if(stat) {
		window.location.href = mylink;
	}
}

function showByName(name) {
	ary = document.getElementsByName(name);
	for(i=0;i<ary.length;i++) {
		document.getElementsByName(name)[i].style.display = 'block';
	}
}

function removeByName(name) {
	ary = document.getElementsByName(name);
	for(i=0;i<ary.length;i++) {
		document.getElementsByName(name)[i].style.display = 'none';
	}
}

function showByNameV(name) {
	ary = document.getElementsByName(name);
	for(i=0;i<ary.length;i++) {
		document.getElementsByName(name)[i].style.display = 'inline';
	}
}

function removeByNameV(name) {
	ary = document.getElementsByName(name);
	for(i=0;i<ary.length;i++) {
		document.getElementsByName(name)[i].style.display = 'none';
	}
}

function show(id) {
	document.getElementById(id).style.display = 'block';
}

function remove(id) {
	document.getElementById(id).style.display = 'none';
}

function popup(site,name,w,h) {
	x = screen.availWidth/2-w/2;
	y = screen.availHeight/2-h/2;
	var popupWindow = window.open(site,name,'scrollbars=yes,resizeable=yes,width='+w+',height='+h+',left='+x+',top='+y+',screenX='+x+',screenY='+y);
}

/* Macromedia-Stuff */
function MM_swapImgRestore() { //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
	var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
	var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

// IRGENDWAS
function toggleBox(szDivID, iState) // 1 visible, 0 hidden
{
   var obj = document.layers ? document.layers[szDivID] :
   document.getElementById ?  document.getElementById(szDivID).style :
   document.all[szDivID].style;
   obj.visibility = document.layers ? (iState ? "show" : "hide") :
   (iState ? "visible" : "hidden");
}


// EINFÃœGEN IN TEXTAREA JS
function insert(aTag, eTag, formname, textareaname) {
	var input = document.forms[formname].elements[textareaname];
	input.focus();
	/* fÃ¼r Internet Explorer */
	if(typeof document.selection != 'undefined') {
		/* EinfÃ¼gen des Formatierungscodes */
		var range = document.selection.createRange();
		var insText = range.text;
		range.text = aTag + insText + eTag;
		/* Anpassen der Cursorposition */
		range = document.selection.createRange();
		if (insText.length == 0) {
			range.move('character', -eTag.length);
		} else {
			range.moveStart('character', aTag.length + insText.length + eTag.length);      
		}
		range.select();
	}
	/* fÃ¼r neuere auf Gecko basierende Browser */
	else if(typeof input.selectionStart != 'undefined')
		{
		/* EinfÃ¼gen des Formatierungscodes */
		var start = input.selectionStart;
		var end = input.selectionEnd;
		var insText = input.value.substring(start, end);
		input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
		/* Anpassen der Cursorposition */
		var pos;
		if (insText.length == 0) {
			pos = start + aTag.length;
		} else {
			pos = start + aTag.length + insText.length + eTag.length;
		}
		input.selectionStart = pos;
		input.selectionEnd = pos;
	}
	/* fÃ¼r die Ã¼brigen Browser */
	else
	{
		/* Abfrage der EinfÃ¼geposition */
		var pos;
		var re = new RegExp('^[0-9]{0,3}$');
		while(!re.test(pos)) {
			pos = prompt("EinfÃ¼gen an Position (0.." + input.value.length + "):", "0");
		}
		if(pos > input.value.length) {
			pos = input.value.length;
		}
		/* EinfÃ¼gen des Formatierungscodes */
		var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
		input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos);
	}
}
