/**
*
*
**/

function connect(){
    var o = null;
    
    try{
      o = new ActiveXObject("Microsoft.XMLHTTP");
    }catch(e){
      try{
        o = new ActiveXObject("MSXML2.XMLHTTP");
      }
      catch(e){
        try{
          o = new XMLHttpRequest();
        }
        catch(e){
          alert('Couldt create a XMLHttpRequest-Object!');
        }
      }
    }
    return o;
  }

function get(url,id){
    o = connect();
    o.open('GET', url, true);
    o.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    
    o.onreadystatechange = function(){
      if(o.readyState == 4){
          
        //document.getElementById(id).innerHTML = o.responseText;
        select_innerHTML(document.getElementById(id),o.responseText);
      }
    }
    o.send(null);
}
function get2(url,id,select){
    o = connect();
    o.open('GET', url, true);
    o.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    
    o.onreadystatechange = function(){
      if(o.readyState == 4){
            if(select === false)
              document.getElementById(id).value = o.responseText;
            else
              select_innerHTML(document.getElementById(id),o.responseText);
      }
    }
    o.send(null);
}
function post(url,data,id){
    var o = connect();
    o.open('POST', url, true);
    o.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    o.onreadystatechange = function(){
      if(o.readyState == 4){
        document.getElementById(id).innerHTML = o.responseText;
      }
    }
    o.send(data);
}
function checkBundesland(object,boxName){
	get('ajax.php?zone=Registrierung&id=getBundesland&Bundesland='+object.value,boxName);
}
function makeSelect(bundesland,boxName){
	document.getElementById('txtPlz').value='';
	document.getElementById('slbLandkreis').value='';
	document.getElementById('slbOrte').innerHTML='';
	get('ajax.php?zone=Registrierung&id=getLandkreise&Bundesland='+bundesland,boxName);
	
}
function makeSelectOrte(landkreis,boxName){
	document.getElementById('txtPlz').value='';
	document.getElementById('slbOrte').innerHTML='';
	//alert('ajax.php?zone=Registrierung&id=getOrte&Landkreis='+landkreis);
	get('ajax.php?zone=Registrierung&id=getOrte&Landkreis='+landkreis,boxName);

}
function getPlz(ort,boxName){
  //alert('ajax.php?zone=Registrierung&id=getPlz&Ort='+ort);
	get2('ajax.php?zone=Registrierung&id=getPlz&Ort='+ort,boxName,false);
}
function checkEmpty(object,boxName){
	if(object.value.length == 0){
		document.getElementById(boxName).innerHTML = 'Feld ist leer';
	}else{
		document.getElementById(boxName).innerHTML = '';
	}
}
function checkEmail(object,boxName){
	
	var filter=/^(\w+(?:\.\w+)*)@((?:\w+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
	if (filter.test(object.value))
		document.getElementById(boxName).innerHTML = 'richtig';
	else{
		document.getElementById(boxName).innerHTML = 'falsch';
	}
}	
function checkUrl(object,boxName){
	var filter=/^http:\/\/[_a-z0-9-]+(\.[_a-z0-9-]+)[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})(\/+([_a-z0-9-]+)*)*$/i
	if (filter.test(object.value))
		document.getElementById(boxName).innerHTML = 'richtig';
	else{
		document.getElementById(boxName).innerHTML = 'falsch';
	}
}
function checkInteger(object,boxName){
	var filter = /^[+0-9-]+$/i
	if (filter.test(object.value))
		document.getElementById(boxName).innerHTML = 'richtig';
	else{
		document.getElementById(boxName).innerHTML = 'falsch';
	}
}
function checkTelefon(object,boxName){
	var filter = /^[+0-9-]+/
	if (filter.test(object.value))
		document.getElementById(boxName).innerHTML = 'richtig';
	else{
		document.getElementById(boxName).innerHTML = 'falsch';
	}
}
function checkTextlength(object,boxName,minMax,clength){
if(minMax == 'k'){
	if(object.value.length <= clength){
		document.getElementById(boxName).innerHTML = object.value.length+"/"+clength;
		
	}else{
		document.getElementById(boxName).innerHTML = 'Maximale Textlänge erreicht. Feld wurde deaktiviert!';
		document.getElementById(object.id).readOnly='true';
	}
}else if(minMax == 'g'){
	if(object.value.length < clength){
		document.getElementById(boxName).innerHTML = clength-object.value.length;
		
	}else{
		document.getElementById(boxName).innerHTML='Mindestlänge erreicht';
	}
}
}

function getTarif(id){
var Error = false;
var ErrorMsg = '';
document.getElementById('MessageOk').innerHTML = '';
if(document.getElementById('txtBundesland').value == ''){
	Error = true;
	ErrorMsg += 'Bundesland nicht angegeben!<br />';
}
if(document.getElementById('slbLandkreis').value == ''){
	Error = true;
	ErrorMsg += 'Landkreis nicht angegeben!<br />';
}
if(document.getElementById('txtFirmenname').value == ''){
	Error = true;
	ErrorMsg += 'Firmenname nicht angegeben!<br />';
}
if(document.getElementById('txtAnsprechpartner').value == ''){
	Error = true;
	ErrorMsg += 'Ansprechpartner nicht angegeben!<br />';
}
if(document.getElementById('txtStrasse').value == ''){
	Error = true;
	ErrorMsg += 'Strasse nicht angegeben!<br />';
}
if(document.getElementById('txtPlz').value == ''){
	Error = true;
	ErrorMsg += 'Postleitzahl nicht angegeben!<br />';
}
if(document.getElementById('slbOrte').value == ''){
	Error = true;
	ErrorMsg += 'Ort nicht angegeben!<br />';
}
if(document.getElementById('txtWebsite').value == ''){
	Error = true;
	ErrorMsg += 'Webseite nicht angegeben!<br />';
}
if(document.getElementById('txtEmail').value == ''){
	Error = true;
	ErrorMsg += 'eMail nicht angegeben!<br />';
}

if(document.getElementById('txtMessageShort').value == ''){
	Error = true;
	ErrorMsg += 'Kurze Beschreibung nicht angegeben!<br />';
}
if(document.getElementById('txtMessageLong').value == ''){
	Error = true;
	ErrorMsg += 'Lange Beschreibung nicht angegeben!<br />';
}
   
if(Error == true){
	document.getElementById('MessageOk').innerHTML = '<div class="MsgFalse">'+ErrorMsg+'</div>';
	
}else{

var str = 'txtBundesland='+document.getElementById('txtBundesland').value;
str += '&slbLandkreis='+document.getElementById('slbLandkreis').value;
str += '&txtFirmenname='+document.getElementById('txtFirmenname').value;
str += '&txtAnsprechpartner='+document.getElementById('txtAnsprechpartner').value;
str += '&txtStrasse='+document.getElementById('txtStrasse').value;
str += '&txtPlz='+document.getElementById('txtPlz').value;
str += '&txtOrt='+document.getElementById('slbOrte').value;
str += '&txtWebsite='+document.getElementById('txtWebsite').value;
str += '&txtEmail='+document.getElementById('txtEmail').value;
str += '&txtTelefon='+document.getElementById('txtTelefon').value;
str += '&txtFax='+document.getElementById('txtFax').value;
str += '&txtMobil='+document.getElementById('txtMobil').value;
str += '&txtMessageShort='+document.getElementById('txtMessageShort').value;
str += '&txtMessageLong='+document.getElementById('txtMessageLong').value;
str += '&tarif='+id;

		post('ajax.php?zone=Registrierung&id=writeData',str,'MessageOk');
	}
}

function select_innerHTML(objeto,innerHTML){
/******
* select_innerHTML - corrige o bug do InnerHTML em selects no IE
* Veja o problema em: http://support.microsoft.com/default.aspx?scid=kb;en-us;276228
* Versão: 2.1 - 04/09/2007
* Autor: Micox - Náiron José C. Guimarães - micoxjcg@yahoo.com.br
* @objeto(tipo HTMLobject): o select a ser alterado
* @innerHTML(tipo string): o novo valor do innerHTML
*******/
    objeto.innerHTML = ""
    var selTemp = document.createElement("micoxselect")
    var opt;
    selTemp.id="micoxselect1"
    document.body.appendChild(selTemp)
    selTemp = document.getElementById("micoxselect1")
    selTemp.style.display="none"
    if(innerHTML.indexOf("<option")<0){//se não é option eu converto
        innerHTML = "<option>" + innerHTML + "</option>"
    }
    innerHTML = innerHTML.replace(/<option/g,"<span").replace(/<\/option/g,"</span")
    selTemp.innerHTML = innerHTML
      
    
    for(var i=0;i<selTemp.childNodes.length;i++){
  var spantemp = selTemp.childNodes[i];
  
        if(spantemp.tagName){     
            opt = document.createElement("OPTION")
    
   if(document.all){ //IE
    objeto.add(opt)
   }else{
    objeto.appendChild(opt)
   }       
    
   //getting attributes
   for(var j=0; j<spantemp.attributes.length ; j++){
    var attrName = spantemp.attributes[j].nodeName;
    var attrVal = spantemp.attributes[j].nodeValue;
    if(attrVal){
     try{
      opt.setAttribute(attrName,attrVal);
      opt.setAttributeNode(spantemp.attributes[j].cloneNode(true));
     }catch(e){}
    }
   }
   //getting styles
   if(spantemp.style){
    for(var y in spantemp.style){
     try{opt.style[y] = spantemp.style[y];}catch(e){}
    }
   }
   //value and text
   opt.value = spantemp.getAttribute("value")
   opt.text = spantemp.innerHTML
   //IE
   opt.selected = spantemp.getAttribute('selected');
   opt.className = spantemp.className;
  } 
 }    
 document.body.removeChild(selTemp)
 selTemp = null
}