//					 JavaScript Functions									  
//					  Author: Alex Kvak									  /////////////////////////////////////////////////////////////////////////
// initializing a browser
var aks_isIE=0,aks_isNN=0, aks_isMF=0;
if (navigator.userAgent.indexOf("Firefox")!=-1) aks_isMF=1;
if	(document.all) 
	aks_isIE=1;
else 
	if(document.layers) 
		aks_isNN=1;
var aks_isOpera = (navigator.userAgent.indexOf("Opera") > 0);
/////////////////////////////////////////////////////////////////////////

//////////////////////////////////////
/*
	Sets active OPTION in SELECT element
	@param tag_id 	id of the SELECT element
	@param value 	value of OPTION element to be selected
*/
//////////////////////////////////////
function aks_set_select_value(tag_id,value)
{
	if (!(obj = $(tag_id))) return false;
	var lo_len = obj.options.length;
	var lo = obj.options;

	for(i=lo_len-1;i>=0;i--)
		if (lo[i].value == value)
		{
			try {
				lo[i].selected = true;
			break;
			} catch (oError) {}
		}
	return true;
}
//////////////////////////////////////

function aks_clearSelection(tag_id) {
	if (!(obj = $(tag_id))) return false;
	var lo_len = obj.options.length;
	var lo = obj.options;

	for(i=lo_len-1;i>=0;i--)
		lo[i].selected = false;
	return true;
}

function aks_clearSelect(tag_id) {
	if (!(obj = $(tag_id))) return false;
	obj.options = [];
	return true;
}

function aks_smart_clearSelect(tag_id) {
	if (!(obj = $(tag_id))) return false;

	while(obj.options.length > 0) {
		if (obj.options[obj.options.length-1].value == "---") break;
		else obj.remove(obj.options.length-1);
	}
	return true;
}

//////////////////////////////////////
function aks_suredelete(obj)
{
    val_ = confirm(suredelete_confirm);
    if (val_== false) return false;
    obj.action_.value='delete';
    return true;
}
//////////////////////////////////////

//////////////////////////////////////
function aks_suredelete_rubrik(obj)
{
    return confirm(suredelete2_confirm);
}
//////////////////////////////////////

function in_array(val,arr) {
	for(var i=0;i<arr.length;i++)
		if (arr[i] == val) return true;
	return false;
}

//////////////////////////////////////
function aks_sureoben(obj)
{
    val_ = confirm(sureoben_confirm);
    if (val_== false) return false;
    obj.action_.value='oben';
    return true;
}
//////////////////////////////////////

//////////////////////////////////////
function aks_sureunten(obj)
{
    val_ = confirm(sureunten_confirm);
    if (val_== false) return false;
    obj.action_.value='unten';
    return true;
}
//////////////////////////////////////

//////////////////////////////////////
// return Element by Id 
function aks_getElement(n)
{
   if (typeof document.getElementById(n) != "undefined")
	   return document.getElementById(n);
   else
   	   return false;
}
//////////////////////////////////////

//////////////////////////////////////
// return Element by Id 
function $(n)
{
   if (typeof document.getElementById(n) != "undefined")
	   return document.getElementById(n);
   else
   	   return false;
}
//////////////////////////////////////

//////////////////////////////////////
// creates a popUp
function aks_popupWnd(url,title,width,height,scrollbars)
{
   if (title == "random")
   	 title = "wnd"+(Math.random() * 10).toString();
	 
   var options = "status=off,menubar=off,height="+height+",width="+width;
   var xtop = (screen.height-height)/2-15, xleft = (screen.width-width)/2;
   options += ",top="+xtop+",left="+xleft;
   
   if ( (scrollbars == "on") || (scrollbars == true) )
   	options += ",scrollbars";
   else
   	if (scrollbars == "auto")
		options += ",scrollbars=auto";
	else
	   	options += ",scrollbars=off";
   
   var popup = window.open(url,title,options); 
   popup.document.close();
}
//////////////////////////////////////

//////////////////////////////////////
// changes the CheckBox flag of Element num
function aks_changeCheck(num)
{
	if (obj = aks_getElement(num))
		obj.checked = !obj.checked;
}
//////////////////////////////////////

//////////////////////////////////////
// set the display property of Element num
function aks_setView(num, show)
{
	var obj = aks_getElement(num);
	obj.style.display = (show) ? 'block':'none';
}
//////////////////////////////////////

//////////////////////////////////////
// set the visibility of Element num	
function aks_setVisibility(num, show)
{
	var obj = aks_getElement(num);
    obj.style.visibility = (show) ? "visible":"hidden";
}
//////////////////////////////////////

//////////////////////////////////////
// returns the display property of Element num			
function aks_getView(num)
{
	var obj;
    if (obj = $(num))
    	return (obj.style.display == 'block');
	else
		return false;
}
//////////////////////////////////////

//////////////////////////////////////
// changes the visibility ogf Element num		
function aks_changeView(num)
{
    show = aks_getView(num);
	//show = (visibility_ == 'none') ? true : false;
	//show = (visibility_ == 'none') ? true : false;
	aks_setView(num, !show);
	return true;
}
//////////////////////////////////////

//////////////////////////////////////
// sets the color farbe to all cells of table row obj
function aks_setFarbe(obj,farbe)
{
    theCells = obj.cells;
    var rowCellsCnt = theCells.length;
    for (c = 0; c < rowCellsCnt; c++) 
        theCells[c].style.backgroundColor=farbe;
}
//////////////////////////////////////

//////////////////////////////////////
// sets the color farbe to specified cell obj
function aks_setFarbeCell(obj,farbe)
{
     obj.style.backgroundColor = farbe;
}
//////////////////////////////////////

//////////////////////////////////////
// sets the color farbe to specified cell obj
function aks_goToURL(url)
{
     location.href = url;
}
//////////////////////////////////////

/* CROSS-BROWSER EVENT HANDLER */
function addEvent(obj, evType, fn){
     if (obj.attachEvent){
         var r = obj.attachEvent("on"+evType, fn);
        return r;
     } else if (obj.addEventListener){
         obj.addEventListener(evType, fn, true);
         return true;
     } else {
        return false;
     }
}

// check for an empty field 
function aks_checkSuche(field,value)
{
    return ((aks_getElement(field).value!='') && (aks_getElement(field).value!=value));
}

////////////////////////
// äîáàâëåíèå â ñïèñîê
function addOptionToList(list,value,text) {
	var obj;
	if (!(obj = $(list))) return false;

	for (var i=0; i<obj.options.length;i++)
		if (obj.options[i].text == text) 
			{ return false; }
		 
    obj.options[obj.options.length] = new Option (text, value, false, false);
}
////////////////////////

////////////////////////
// óäàëåíèå èç ñïèñêà
function deleteOptionFromList(list) {
	var obj = $(list);
	for (var i=0; i<obj.options.length;i++)
		if (obj.options[i].selected) 
		 { obj.remove(i); return; }
}
////////////////////////

//////////////////////////////////////
// creates a new popUp window for changing color 
// @param editor_id 	id of the editor's iframe
// @param txthtml_id 	id of the editor's textarea
// @param is_textarea	indicates whether is the opener a textarea  
function aks_farbePopUp(editor_id,txthtml_id,command)
{
	aks_popupWnd(dir_level+"../includes/libraries/colorpicker.php?command="+command+"&param1="+editor_id+"&param2="+txthtml_id,"colorPickerPopUp",310,250,false);
}
//////////////////////////////////////

function break_(elem) {
	elem.focus(); 
	elem.className="t_fehler"; 
	elem.onkeydown = function() {this.className="t"}
}

function checkRegister(paketType,form) {
	var str="Sie haben nicht alle Pflichtfelder ausgefüllt!";
	var inputs;
	
	inputs = document.getElementsByTagName("INPUT");
	for(var i=0;i<inputs.length;i++) {
		name = inputs[i].name;
		var email = (name == "email");
		if ((inputs[i].type == "text") && (inputs[i].alt == "pflicht"))
			if (inputs[i].value == "") {
				alert(str);
				break_(inputs[i]);
				return false;
			}
			else
				if ((name == "email") && !aks_is_email(inputs[i].value)) {
					alert("Sie haben eine falsche Email-Adresse eingegeben!");
					break_(inputs[i]);
					return false;
				}
		if ( (inputs[i].type == "password") && (inputs[i].alt == "pflicht"))
			if ( (typeof logged_in == "undefined") && (inputs[i].value == "") ) {
				alert(str);
				break_(inputs[i]);
				return false;
			}
			else if ((inputs[i].id == "passwort2") && 
				(inputs[i].value != $('passwort').value)) {
				alert("Sie haben ein falsches Passwort eingegeben!");
				break_(inputs[i]);
				return false;
			}
		str2 = "Sie haben unkorrekte Daten angegeben!";
		switch (name) {
			case "name" : 
			case "vorname" : 
			case "ort"  : 
						  if (!aks_OnlyLetters(inputs[i].value)) {
						  	alert(str2); break_(inputs[i]); return false;
						  }
						  break;
			/*case "vorwahl": 
			case "telefon":*/
			case "nr":
						  if (!inputs[i].value.match(/^[\d\-]*\w?$/i)) {
						  	alert(str2); break_(inputs[i]); return false;
						  }
						  break;
			case "fax": 
			case "mobil": 
						  if ( (inputs[i].value.length != 0) && 
						  	   !aks_Fax(inputs[i].value)) {
						  	alert(str2); break_(inputs[i]); return false;
						  }
						  break;
		}				
	}
	
	inputs = document.getElementsByTagName("TEXTAREA");
	for(var i=0;i<inputs.length;i++) {
		if (inputs[i].lang == "de")
			if (inputs[i].value == "") {
				alert(str);
				break_(inputs[i]);
				return false;
			}
	}
	
	str = "Wählen Sie eine Rubrik und ein Keyword aus!";
	inputs = document.getElementsByTagName("SELECT");
	for(i=0;i<inputs.length;i++) {
		if (inputs[i].lang == "de") continue;
		if (/*(inputs[i].selectedIndex == 0) ||*/
		(inputs[i].options[inputs[i].selectedIndex].value == "none") || (inputs[i].options[inputs[i].selectedIndex].value == "---")) {
			alert(str);
			break_(inputs[i]);
			return false;
		}
	}
	
	if (paketType == 'premium') {
		if ( (v = $('homepage')) && (v.value != "") ) {
			if (!aks_is_url(v.value)) {
				alert('Geben Sie bitte Ihren Homepage-Link ein.'); break_(v); return false;
			}
		}
	}
	
	if (!$('agb').checked) {
		alert('Bestätigen Sie bitte, daß Sie unsere AGB akzeptiert haben!');
		return false;
	}
	
	form.action = REQUEST_URI;
	form.submit();
	return false;
}

function checkFormular() {
	var elem = $('firma');
	if (elem.value == '') { 
		alert('Geben Sie bitte Ihre Firma an'); elem.focus(); return false;
	}
	
	elem = $('name');
	if (elem.value == '') { 
		alert('Füllen Sie bitte das Feld \'Name\' aus'); elem.focus(); return false;
	}
	
	elem = $('vorname');
	if (elem.value == '') { 
		alert('Füllen Sie bitte das Feld \'Vorname\' aus'); elem.focus(); return false;
	}
	
	elem = $('email');
	if (!aks_isEmail(elem.value)) {
		alert('Bitte geben Sie Ihre Email an'); elem.focus(); return false;
	}
	
	elem = $('nachricht');
	if (elem.value == '') { 
		alert('Schreiben Sie hier Ihre Nachricht'); elem.focus(); return false;
	}
	
	if ($('code')) {
		elem = $('code');
		if (!aks_checkMenu('code')) {
			alert('Geben Sie den Code aus dem Spamfilter ein'); elem.focus(); return false;
		}
	}
	return true;
}

function checkFill(id,w) {
	var obj;
	if (obj = $(id)) {
		if (obj.options.length == 2)
			alert("Wählen Sie bitte "+w);
	}
}

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_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_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];}
}

function openAGB() {
	aks_popupWnd("/agb_kurz.php","agb",600,600,true);
}

function checkLink(str) {
	var d = $('flag');
	if (aks_is_url(str))
		d.innerHTML = '<span style="color:#009900;"><b>OK</b></span>';
	else
		d.innerHTML = '<span style="color:red;"><b>Fehler!</b></span>';
}

function checkLogin(str) {
	var elem = $('user_email');
	if (!aks_isEmail(elem.value)) {
		alert("Richtige Email-Adresse eingeben! Oder noch nicht registriert? Bitte klicken Sie auf den Button :HIER KOSTENLOS REGISTRIEREN:"); elem.focus(); return false;
	}
	elem = $('user_password');
	if ( (elem.value=='Passwort') || (elem.value=='') ) {
		alert("Falsches Passwort!"); elem.focus(); return false;
	}
	return true;
}

function focushandler(obj,str) {
	if (obj.value == str) obj.value = '';
}

function blurhandler(obj,str) {
	if (obj.value == '') obj.value = str;
}


