// creating XmlHttpRequest object
// double check for IE/ActiveX and then try to use
// native object (Safari, Firefox)

var mobj_ajax = createRequestObject();
function createRequestObject() {  
// find the correct xmlHTTP, works with IE, FF and Opera
  var xmlhttp;
  try {
  	xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
  }catch(e){
    try {
    	xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }catch(e) {
    	xmlhttp=null;
    }
  }
  if(!xmlhttp&&typeof XMLHttpRequest!="undefined") {
  	xmlhttp=new XMLHttpRequest();
  }
  return  xmlhttp;
}

function clearList(obj){
  while(obj.childNodes.length>0){
    obj.removeChild(obj.childNodes[0]);
  }
}

function getTagText(node,name){
  var element = node.getElementsByTagName(name)[0];
  if(element.hasChildNodes()){
    return element.firstChild.nodeValue;
  }else{
    return "";
  }
}

function getParameters(frm_id){
  queryString="";
  var frm = document.getElementById(frm_id);
  var numberElements =  frm.elements.length;
  var add;
  for(var i = 0; i < numberElements; i++) {    
    switch(frm.elements[i].type){
      case 'text':
      case 'hidden':
      case 'textarea':
      	if(queryString!='') {
          queryString+="&";
        }  	
        queryString+=frm.elements[i].name+"="+encodeURIComponent(frm.elements[i].value);
        break;
      case 'checkbox':
  
        if(frm.elements[i].checked){
    	  if(queryString!='') {
            queryString+="&";
          }  	
          queryString+=frm.elements[i].name+"="+encodeURIComponent(frm.elements[i].value);
        }
        break;
      case 'radio':
        if(frm.elements[i].checked){
          if(queryString!='') {
            queryString+="&";
          }
          queryString+=frm.elements[i].name+"="+encodeURIComponent(frm.elements[i].value);
        }
    }   
  }
  return queryString
}

function addParameter(name,value){
  return name+"="+encodeURIComponent(value);
}

function sendMessage(ref){
  var url = "send_ajax.php"; 
  var parameters=addParameter('act',ref);
  parameters=parameters+"&"+getParameters('frm_'+ref);  
  for(i=1;i<=7;i++){
	if(document.getElementById('err'+i)){
	  document.getElementById('err'+i).innerHTML='';
    }  
  }
  try{
    mobj_ajax.open( "POST", url, true );
    mobj_ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    mobj_ajax.onreadystatechange = receiveSendMessage;

	  mobj_ajax.send(parameters);
	
  }catch(e){// caught an error
	alert('Request send failed');
  }
}

function receiveSendMessage(){
  try{
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
	  var response = mobj_ajax.responseXML.documentElement;
  
  	var error=response.getElementsByTagName("error")[0].firstChild.nodeValue
    var msg="";
    var i;  	  
    if(error>0){
	    switch(error){
	      case '1':
	      case '2':
	      case '3':
	      case '4':
	      case '6':
	      case '7':
	        msg="acest camp trebuie completat!";
	        break;
	      case '5':
	        msg="acest camp trebuie selectat!";
	        break;	      	      	      
	    }
	   
	    document.getElementById('err'+error).innerHTML=msg;
	  }else{
       document.getElementById('message-form').style.display='none';
       document.getElementById('message-response').style.display='block';
	  } 
	}else if(mobj_ajax.readyState == 4){
		alert('Response failed (code: '+mobj_ajax.status+').\n'+mobj_ajax.responseText);
	}
  }catch(e){// caught an error
	alert('Eroare.\n'+mobj_ajax.responseText);
  }
}

function goNewsletter(){
  var obj_nl=document.getElementById('frm_newsletter');
  
  if(obj_nl.company.value==''){
    alert("Campul 'Denumire companie' trebuie completat!");
    return false;
  }else if(obj_nl.city.value==''){
    alert("Campul 'Localitate' trebuie completat!");
    return false;
  }else if(obj_nl.contact.value==''){
    alert("Campul 'Persoana de contact' trebuie completat!");
    return false;
  }else if(obj_nl.email.value==''){
    alert("Campul 'E-mail' trebuie completat!");
    return false;
  }else if(!obj_nl.domain1.checked &&
  		   !obj_nl.domain2.checked &&
  		   !obj_nl.domain3.checked &&
  		   !obj_nl.domain4.checked &&
  		   !obj_nl.domain5.checked &&
  		   (obj_nl.txt_domain.value=='')){
      alert("Campul 'Domeniu' trebuie selectat/completat!"); 
    return false;
  }else{
    var url = "ajax/newsletter_ajax.php"; 
    var parameters = getParameters('frm_newsletter');
    try{
      mobj_ajax.open( "POST", url, true );

      mobj_ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
      mobj_ajax.onreadystatechange = function(){receiveNewsletter()};
	  mobj_ajax.send(parameters);
    }catch(e){//caught an error
	  alert('Request send failed');	
    }
  }
}

function receiveNewsletter(){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
      var response = mobj_ajax.responseXML.documentElement;
      var obj_nl=document.getElementById('frm_newsletter');
  	  var ok=response.getElementsByTagName("ok")[0].firstChild.nodeValue
  	  if(ok==1){
  	  	alert('Datele dumneavoastra au fost inregistrate!');
  	  	obj_nl.company.value='';
  	  	obj_nl.contact.value='';
  	  	obj_nl.email.value='';
  	  	obj_nl.txt_domain.value='';
  	  	obj_nl.domain1.checked=false;
  	  	obj_nl.domain2.checked=false;
  	  	obj_nl.domain3.checked=false;
  	  	obj_nl.domain4.checked=false;
  	  	obj_nl.domain5.checked=false;
  	  }
      //alert(mobj_ajax.responseText);
	}else if(mobj_ajax.readyState == 4){	
	  alert('Response failed (code: '+mobj_ajax.status+').\n'+mobj_ajax.responseText);
	}
  }catch(e){// caught an error  	
	alert('Error.\n'+mobj_ajax.responseText);
  }
}
function set_cookie( name, value, expires, path, domain, secure ){
// set time, it's in milliseconds
var today = new Date();
today.setTime( today.getTime() );
if ( expires ){
  expires = expires * 1000 * 60 * 60 * 24;
}
var expires_date = new Date( today.getTime() + (expires) );
 
document.cookie = name + "=" +escape( value ) +
		( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 
		( ( path ) ? ";path=" + path : "" ) + 
		( ( domain ) ? ";domain=" + domain : "" ) +
		( ( secure ) ? ";secure" : "" );
 
}

function check_email(str_email) {
  var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
  if (!filter.test(str_email)) {
    return false;
  }else{
    return true;
  }
}