var win;

function check(all, name)
{
	for(i=0;i<document.getElementsByName(name+"[]").length;i++)
		document.getElementsByName(name+"[]")[i].checked = all;
}

function check_form()
{
	var firma	= strip(document.getElementsByName('firma')[0].value);
	var vname	= strip(document.getElementsByName('vname')[0].value); 
	var name	 = strip(document.getElementsByName('name')[0].value);
	var plz		= strip(document.getElementsByName('plz')[0].value);
	var ort		= strip(document.getElementsByName('ort')[0].value);
	var mail	 = strip(document.getElementsByName('mail')[0].value);
	var domain = strip(document.getElementsByName('domain')[0].value);
	var usr		= strip(document.getElementsByName('usr')[0].value);
	var pw1		= document.getElementsByName('pw1')[0].value;
	var pw2		= document.getElementsByName('pw2')[0].value;

	if(firma == '') document.getElementsByName('firma')[0].value = '-';
	if(vname == '' || name == '' || plz == '' || ort == '' || mail == '' || domain == '' || usr == '' || pw1	== '' || pw2	== '')
	{
		alert("Es traten Fehler auf.\nBitte ueberpruefen Sie Ihre Eingaben");
		return false;
	}
	else if(pw2 != pw1)
	{
		alert("Die Passwoerter stimmen nicht ueberein!");
		return false;
	}
	else if(pw1.length < 6)
	{
		alert("Das Passwort muss mindestens 6 Zeichen lang sein");
		return false;
	}
	else if(mail.indexOf("@") < 2 || mail.lastIndexOf(".") < 6 || mail.length < 9)
	{
		alert("Bitte pruefen Sie die Email-adresse!");
		return false;
	}
	else if(domain.indexOf(".") < 2 || domain.length < 5)
	{
		alert("Bitte pruefen Sie die Web-adresse!");
		return false;
	}
	else if(isNaN(plz))
	{
		alert("Bitte pruefen Sie die PLZ!");
		return false;
	}
	else
	{
		return true;
	}
}

function strip(str)
{
	while(str.search("  ") > -1)
		str = str.replace(" ", "");
	if(str.indexOf(" ") == 0)
		str = str.replace(" ", "");
	if(str.lastIndexOf(" ") == str.length-1)
		str = str.substring(0,str.length-1);
	return str;
}

function change_action(obj)
{
	if(obj.checked)
		document.forms[0].action = 'index.php?page=kunden&action=show&noerr=1';
	else
		document.forms[0].action = 'index.php?page=kunden&action=show';
}

function loeschen(id, ary, isp_id)
{
	if(window.confirm("Wollen sie diesen Kunden wirklich löschen?"))
		window.location = "index.php?page=kunden&action=show&del=" + id + "&ary=" + ary + (isp_id?"&isp_id="+isp_id:"");
}

function charea()
{
	document.getElementsByName('grund')[0].disabled = !document.getElementById('n').checked;
}

function chkv(obj)
{
	if(obj)
		document.getElementById('kv_i').value = obj.options[obj.selectedIndex].value;
	else
	{
		document.getElementById('kv').selectedIndex = 0;
		document.getElementById('kv_i').value = document.getElementById('kv').options[0].value;
		document.getElementById('kv').disabled = true;
	}
}

function attach(was, name)
{
/*
	var obj = document.getElementsByName(name)[0];

	if(was == 'link')
		was = "url]" + window.prompt("Bitte geben Sie das Ziel ein:") + "[/url";

	obj.focus();

  if(typeof document.selection != 'undefined')					// Internet Explorer
	{
    var range = document.selection.createRange();
    range.text = "[" + was + "] ";
	}
	else if(typeof obj.selectionStart != 'undefined')		// Gecko
  {
    var start = obj.selectionStart;
    var end = obj.selectionEnd;
    obj.value = obj.value.substr(0, start) + "[" + was + "] " + obj.value.substr(end);

		var pos = start + was.length + 3;
		obj.selectionStart = pos;
		obj.selectionEnd = pos;
  }
	else
	{ // Andere Browser (z.B. Safari) Notloesung
		obj.value += "[" + was + "]";
	}
*/
	var editor = FCKeditorAPI.GetInstance(name);
	editor.InsertHtml("[" + was + "] ");
}

function add_grp()
{
	var obj = document.getElementById('gruppen');
	var neu = window.prompt("Bitte geben Sie die Neue Gruppe ein:");
	if(neu)
		obj.options[obj.options.length] = new Option(neu, "-1:0:"+neu);
}

function alt_grp()
{
	var txt;
	var obj = document.getElementById('gruppen');
	if(obj.selectedIndex > 0)
		obj.options[obj.selectedIndex].text = document.getElementById('gname').value;
	txt = obj.options[obj.selectedIndex].value;
	obj.options[obj.selectedIndex].value = txt.substring(0, txt.lastIndexOf(":")) + ":" + document.getElementById('gname').value;
}

function del_grp()
{
	var obj = document.getElementById('gruppen');
	if(obj.selectedIndex > 0)
		{
		var txt = "Alle zugehoerigen Empfaenger werden in Abonnenten verschoben!\n\nSoll die Gruppe wirklich geloescht werden?";
		if(window.confirm(txt))
			{
			var val = obj.options[obj.selectedIndex].value;
			if(document.getElementById('delete').value != "")
				document.getElementById('delete').value += "," + val.substring(0, val.indexOf(":"));
			else
				document.getElementById('delete').value = val.substring(0, val.indexOf(":"));
			obj.options[obj.selectedIndex] = null;
			}
		}
	else if(obj.selectedIndex == 0)
	{ alert("Diese Gruppe kann nicht geloescht werden!"); }
	obj.selectedIndex = 0;
	ans(obj);
}

function sperren()
{
	var obj = document.getElementById('gruppen');
	if(obj.selectedIndex != 0)
	{
		var txt = obj.options[obj.selectedIndex].value;
		var gesperrt = parseInt(txt.substring(txt.indexOf(":")+1, txt.lastIndexOf(":")));
		if(gesperrt)
			txt = txt.substring(0, txt.indexOf(":")) + ":0" + txt.substring(txt.lastIndexOf(":"), txt.length);
		else
			txt = txt.substring(0, txt.indexOf(":")) + ":1" + txt.substring(txt.lastIndexOf(":"), txt.length);
		obj.options[obj.selectedIndex].value = txt;
	}
	else
	{ document.getElementById('gesperrt').checked = 0; }
}

function ans(obj)
{
	var txt = obj.options[obj.selectedIndex].value;
	document.getElementById('gesperrt').checked = parseInt(txt.substring(txt.indexOf(":")+1, txt.lastIndexOf(":")));
	document.getElementById('gname').value = obj.options[obj.selectedIndex].text
}

function sel_all(id)
{
	var obj = document.getElementById(id);
	obj.multiple = true;
	for(i=0;i<obj.options.length;i++)
		obj.options[i].selected = true;
}

function popup(url, x, y)
{
	var left = (screen.width-x)/2;
	var top = (screen.height-y)/2;
	if(win)
	{
		if(!win.closed)
			win.close();
	}
	win = window.open("popup/"+url,'',"width="+x+",height="+y+",left="+left+",top="+top+",scrollbars=yes");
}

function seite(seite)
{
	document.getElementsByName("seite")[0].value = seite;
	document.forms[0].submit();
}

function stop_search()
{
	document.getElementsByName("suche")[0].value = "";
	document.getElementsByTagName("form")[0].submit();
}

function explode(string)
{
	var tmp = new Array();
	var cnt = 0;
	while (string.search(":") > -1)
	{
		tmp[cnt] = string.substring(0, string.indexOf(":"));
		string = string.substring(string.indexOf(":")+1, string.length);
		cnt++;
	}
	tmp[cnt] = string;
	return tmp;
}

function implode(array)
{
	var string = "";
	for(i=0;i<array.length-1;i++)
		string += array[i] + ":";
	string += array[array.length-1];
	return string;
}

function f_preis()
{
	var obj = document.getElementsByName('kunden[]')[0];
	var daten;
	if(obj.selectedIndex)
	{
		daten = explode(obj.options[obj.selectedIndex].value);
		document.getElementById('reseller').checked = parseInt(daten[1]);
		document.getElementById('standard').checked = parseInt(daten[2]);

		document.getElementById('grund').value = daten[4];
		document.getElementById('profi').value = daten[5];
		document.getElementById('kraft').value = daten[6];
		document.getElementById('neu_grp').value = daten[7];
		document.getElementById('neu_usr').value = daten[8];
		document.getElementById('overtraffic').value = daten[9];

		document.getElementById('standard').disabled = 0;
		document.getElementById('neu_usr').disabled = !parseInt(daten[1]);
		document.getElementById('grund').disabled = parseInt(daten[2]);
		document.getElementById('profi').disabled = parseInt(daten[2]);
		document.getElementById('kraft').disabled = parseInt(daten[2]);
		document.getElementById('neu_grp').disabled = parseInt(daten[2]);
		document.getElementById('neu_usr').disabled = parseInt(daten[2]) || !parseInt(daten[1]);
		document.getElementById('overtraffic').disabled = parseInt(daten[2]);
	}
	else
	{
		daten = explode(obj.options[0].value);
		document.getElementById('grund').value = daten[1];
		document.getElementById('profi').value = daten[2];
		document.getElementById('kraft').value = daten[3];
		document.getElementById('neu_grp').value = daten[4];
		document.getElementById('neu_usr').value = daten[5];
		document.getElementById('overtraffic').value = daten[6];

		document.getElementById('grund').disabled = 0;
		document.getElementById('profi').disabled = 0;
		document.getElementById('kraft').disabled = 0;
		document.getElementById('neu_grp').disabled = 0;
		document.getElementById('neu_usr').disabled = 0;
		document.getElementById('overtraffic').disabled = 0;
		document.getElementById('standard').checked = 1;
		document.getElementById('reseller').checked = 0;
		document.getElementById('standard').disabled = 1;
	}
	document.getElementById('stat').innerHTML = "<br><br>";
}

function chfpreis()
{
	var obj = document.getElementsByName('kunden[]')[0];
	var daten = explode(obj.options[obj.selectedIndex].value)[1];
	document.getElementById('grund').disabled = document.getElementById('standard').checked;
	document.getElementById('profi').disabled = document.getElementById('standard').checked;
	document.getElementById('kraft').disabled = document.getElementById('standard').checked;
	document.getElementById('neu_grp').disabled = document.getElementById('standard').checked;
	document.getElementById('neu_usr').disabled = !parseInt(daten) || document.getElementById('standard').checked;
	document.getElementById('overtraffic').disabled = document.getElementById('standard').checked;
	document.getElementById('stat').innerHTML = "<br><br>";
}

function chk_preise(felder)
{
	var fehler = 0;
	felder = explode(felder);
	for(i=0;i<felder.length;i++)
	{
		if(isNaN(document.getElementById(felder[i]).value))
		{
			alert("Bitte ueberpruefen Sie Ihre Eingaben!");
			fehler = 1;
			break;
		}
		if(strip(document.getElementById(felder[i]).value) == "")
			document.getElementById(felder[i]).value = 0;
	}
	if(fehler)
		return false;
	else
		return true;
}

function aendern()
{
	var felder = "grund:profi:kraft:neu_grp:neu_usr:overtraffic";
	if(chk_preise(felder))
	{
		var obj = document.getElementsByName('kunden[]')[0];
		var daten = explode(obj.options[obj.selectedIndex].value);
		var string;
		komma2punkt(felder);
		if(obj.selectedIndex)
		{
			string = daten[0] + ":" + daten[1] + ":";
			if(document.getElementById('standard').checked)
			{
				var standard = explode(obj.options[0].value);
				string += "1:" + daten[3] + ":" + standard[1] + ":" + standard[2] + ":" + standard[3] + ":" + standard[4] + ":";
				string += standard[5] + ":" + standard[6] + ":1:" + daten[11];
			}
			else
			{
				string += "0:" + daten[3] + ":" + document.getElementById('grund').value + ":" + document.getElementById('profi').value;
				string += ":" + document.getElementById('kraft').value + ":" + document.getElementById('neu_grp').value + ":";
				string += document.getElementById('neu_usr').value + ":" + document.getElementById('overtraffic').value;
				string += ":1:" + daten[11];
			}
		}
		else
		{
			string = "-1:" + document.getElementById('grund').value + ":" + document.getElementById('profi').value + ":";
			string += document.getElementById('kraft').value + ":" + document.getElementById('neu_grp').value + ":";
			string += document.getElementById('neu_usr').value + ":" + document.getElementById('overtraffic').value + ":1";
		}
		obj.options[obj.selectedIndex].value = string;
		document.getElementById('stat').innerHTML = "&Auml;nderung<br>&uuml;bernommen!";
	}
	else
	{ document.getElementById('stat').innerHTML = "Fehler!<br><br>"; }
}

function komma2punkt(str)
{
	str = explode(str);
	for(i=0;i<str.length;i++)
		document.getElementById(str[i]).value = String(document.getElementById(str[i]).value).replace(",", ".");
}

function test_form()
{
	var action = document.getElementsByTagName('form')[0].action;
	var target = document.getElementsByTagName('form')[0].target;
	document.getElementsByTagName('form')[0].target = 'blank';
	document.getElementsByTagName('form')[0].action = 'popup/test.pop.php';
	if(check_nl_form())
		document.getElementsByTagName('form')[0].submit();
	document.getElementsByTagName('form')[0].target = target;
	document.getElementsByTagName('form')[0].action = action;
}

function check4html()
{
	if(!document.getElementById("html").checked)
	{
		if(window.confirm("Um Bilder einfügen können, muss HTML aktiviert sein.\nHTML aktivieren und fortfahren?"))
		{
		document.getElementById('html').checked = true;
		popup("bilder.pop.php", 300, 300);
		}
	}
	else
	{ popup("bilder.pop.php", 300, 300); }
}

function check_preise()
{
	komma2punkt("grund:neu_grp");
	if(isNaN(document.getElementById('grund').value) || isNaN(document.getElementById('neu_grp').value))
	{
		alert("Es traten Fehler auf!\nBitte überprüfen Sie Ihre Eingaben.");
		return false;
	}
	else
	{ return true; }
}

function hash_data()
{
	var hash, user, pw, time, rnd, pruef;
	user = document.getElementById('usr').value;
	pw = MD5(document.getElementById('passwd').value);
	time = document.getElementById('rnd').value;
	rnd = Math.round(Math.random()*(time.length-1));
	hash = MD5(pw.charAt(0)+user+user.charAt(1)+pw+time.charAt(time.length-1)+time+String(rnd)+time.charAt(rnd));
	document.getElementById('rnd').value = String(rnd) + time;
	document.getElementById('hash').value = hash;
}

function lock(id, bool)
{
	document.getElementById('lock').value = bool;
	document.getElementById('lock').name = "lock";
	document.getElementById('empf').value = id;
	document.getElementById('empf').name = "empf";
	document.getElementsByTagName("form")[0].submit();
}

function del_empf(id)
{
	var msg;
	var fehler = 1;
	if(id > -1)
	{ msg = "Soll dieser Empfänger wirklich gelöscht werden?"; }
	else
	{
		for(i=0;i<document.getElementsByName('cbx[]').length;i++)
		{
			if(document.getElementsByName('cbx[]')[i].checked)
			{
				fehler = 0;
				break;
			}
		}
		if(!fehler)
			msg = "Sollen diese Empfänger wirklich gelöscht werden?";
		else
			return false;
	}
	if(window.confirm(msg))
	{
		document.getElementById('empf').value = id;
		document.getElementById('empf').name = "del";
		document.getElementsByTagName("form")[0].submit();
	}
	else
	{	}
}

function edit_empf(id)
{
	document.getElementById('empf').value = id;
	document.getElementById('empf').name = "edit";
	document.getElementsByTagName("form")[0].submit();
}

function check_nl_form()
{
	var send = false;
	var msg = "";

	if(document.getElementById('gruppen').selectedIndex < 0)
		msg = "\nEs wurde keine Gruppe ausgewählt.";
	if(strip(document.getElementById('subject').value) == "")
		msg+= "\nEs wurde kein Betreff angegeben.";
	if(strip(FCKeditorAPI.GetInstance('msg').GetXHTML()) == "")
		msg+= "\nEs ist kein Text vorhanden.";

	if(msg != "")
	{ alert("Es traten Fehler auf:\n"+msg); }
	else
	{
		var anzahl = 0;

		for(i=0;i<document.getElementById('gruppen').options.length;i++)
		{
			if(document.getElementById('gruppen').options[i].selected)
				anzahl += anz[i];
		}

		if(gesamt+anzahl > limit && limit != 0)
			send = window.confirm("Das Versenden dieses Newsletters übersteigt Ihr Mail-Limit!\nTrotzdem versenden?");
		else
			send = true;
	}

	if(send && document.getElementById("nl_form").action.indexOf("popup/test.pop.php") < 0)
		return window.confirm("Newsletter jetzt versenden?");
	else
		return send;
}

function sortby(was)
{
	if(was == "vorname")
		was = "vname";
	document.getElementById('sort').value = was;
	document.forms[0].submit();
}

function setToolbar(toolbarName)
{
	// Get the editor instance that we want to interact with
	var editor = FCKeditorAPI.GetInstance('msg');

	var toolbar = editor.ToolbarSet;
	var editorContent;

	if(toolbar.Name == toolbarName)
		return;

/*
	//if(editor.EditMode != FCK_EDITMODE_WYSIWYG)
		//editor.SwitchEditMode();

	// Reset the state of all items in the current toolbar
	for(i=0;i<toolbar.Toolbars.length;i++)
	{
		if (toolbar.Toolbars[i].Items)
		{
			for(j=0;j<toolbar.Toolbars[i].Items.length;j++)
				toolbar.Toolbars[i].Items[j].State = FCK_UNKNOWN;
		}
	}

	// Reset the array of toolbar items that are active only on WYSIWYG mode
	toolbar.ItemsWysiwygOnly = new Array();

	// Reset the array of toolbar items that are sensitive to the cursor position
	toolbar.ItemsContextSensitive = new Array();

	// Remove all items from the DOM
	toolbar.DOMElement.innerHTML = '';
*/

	// Load the new toolbar
	toolbar.Name = toolbarName;
	toolbar.Load(toolbarName);

	// replace < and > by &lt; and  &gt; and in turn
	editorContent = editor.GetHTML();
	if(toolbarName == "text")
	{
		while(editorContent.indexOf("<") > -1)
			editorContent = editorContent.replace("<", "&lt;");

		while(editorContent.indexOf(">") > -1)
			editorContent = editorContent.replace(">", "&gt;");

		while(editorContent.indexOf("&lt;br&gt;") > -1)
			editorContent = editorContent.replace("&lt;br&gt;", "<br>");
	}
	else
	{
		while(editorContent.indexOf("&lt;") > -1)
			editorContent = editorContent.replace("&lt;", "<");

		while(editorContent.indexOf("&gt;") > -1)
			editorContent = editorContent.replace("&gt;", ">");
	}
	editor.SetHTML(editorContent);

/*
	window.frames[0].document.getElementById('eEditorArea').style.height = "100%";
	// switch edit mode
	window.frames[0].document.getElementById('eWysiwyg').style.display = (toolbarName=="text"?'none':'');
	window.frames[0].document.getElementById('eSource').style.display = (toolbarName=="text"?'':'none');


	if(toolbarName == "text")
		window.frames[0].document.getElementById('eSourceField').value = editor.GetHTML();
	else
		editor.SetHTML(window.frames[0].document.getElementById('eSourceField').value, true);
*/
}

