function setBodyHeight() {
  var h;
  if (navigator.appName=='Microsoft Internet Explorer') {
    h=document.body.offsetHeight;
  }else{
    h=window.innerHeight;
  }
  return h;
}
function setBodyWidth() {
  var w;
  if (navigator.appName=='Microsoft Internet Explorer') {
    w=document.body.offsetWidth;
  } else {
    w=window.innerWidth;
  }
  return w;
}
function hide_body(){
  if(document.getElementById('span_loading')){
  	document.getElementById('span_cover').style.visibility='visible';
  	document.getElementById('span_loading').style.visibility='visible';
  	beginNeon();  	
  }
}

function show_body(){
  if(document.getElementById('span_loading')){
  	document.getElementById('span_cover').style.visibility='hidden';
  	document.getElementById('span_loading').style.visibility='hidden';
  	beginNeon();  	
  }
}
function check_login(frm_name){
  	var frm_obj=document.getElementById(frm_name);

  	if(!check_email(frm_obj.email.value)){
  		alert("Adresa de e-mail este invalida!");
  	}else{
  		
  	}
}

function check_new(frm_name){
  	var frm_obj=document.getElementById(frm_name);

  	if(!check_email(frm_obj.email.value)){
  		alert("Adresa de e-mail este invalida!");
  	}else if(frm_obj.lastname.value==''){
  		alert("Trebuie sa introduce-ti numele!");
  	}else if(frm_obj.firstname.value==''){
  		alert("Trebuie sa introduce-ti prenumele!");
  	}else if(frm_obj.password.value==''){
  		alert("Trebuie sa introduce-ti o parola!");
  	}else if(frm_obj.password.value!=frm_obj.repassword.value){
  		alert("Parola introdusa nu este aceeasi cu cea confirmata!");
  	}else{
  	
  	}
}

function check_email(str_email) {
  	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(str_email)){
		return (true);
	}
}

function basket_change(){
  var frm=document.getElementById('frm_basket');
  var err='';
  frm.act.value=arguments[0];
  if(arguments.length==2){
    frm.prd.value=arguments[1];
  }else{
    for(k=0;k<frm.elements.length;k++){
    	arr=frm.elements[k].id.split('_')
    	if(arr[0]=='prd'&&arr.length==2){
			if(!is_numeric(frm.elements[k].value)){
				err='Cantitatile produselor trebuie sa fie numerice!';
				break;
			}	    	  
    	}
    }
  }
  if(err!=''){
  	alert(err);
  }else{
    frm.submit();
  }
}
function is_numeric(strString)
   //  check for valid numeric strings 
   {
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
}
function filter_products(act){
  var url = "ajax/ajax_products_filter.php";
  parameters='act='+act;
  
  if(document.getElementById("search")){ 
    parameters+=url_element("search",document.getElementById("search").value);
  }else if(document.getElementById("cat_id")){
    parameters+=url_element("cat_id",document.getElementById("cat_id").value);
  }
  
  switch(act){
    case 'producer':
      document.getElementById("prc_id").value=arguments[1];
      document.getElementById("current").value=1;
      break;
    case 'rows':
      document.getElementById("current").value=1;
      document.getElementById("rows").value=document.getElementById("rows_"+arguments[1]).value;
      break;  
    case 'page':
      document.getElementById("current").value=arguments[1];
      break;      
    case 'go':
      document.getElementById("current").value=document.getElementById("current_"+arguments[1]).value;
      break;
    case 'order':
      document.getElementById("order").value=arguments[1];
      document.getElementById("current").value=1;
      break;  
  }
  parameters+=url_element("current",document.getElementById("current").value);
  parameters+=url_element("rows",document.getElementById("rows").value);
  parameters+=url_element("prc_id",document.getElementById("prc_id").value);
  parameters+=url_element("order",document.getElementById("order").value);
  document.getElementById('products_container').innerHTML='<div id="products_container">'+
       '<center><img src="image/loading1.gif"></center></div>';
  ajaxRead(mobj_ajax, url, 'receive_filter_products', parameters);
}

function receive_filter_products(){
  var last_page,current_page,new_page,first,last,products;
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
      document.getElementById('products_container').innerHTML=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 baccount(act,is_editing){
  var url = "ajax/ajax_baccount.php";
  parameters='act='+act;
  parameters+='&is_editing='+is_editing;
  ajaxRead(mobj_ajax, url, 'receive_baccount', parameters);
}

function receive_baccount(){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
      document.getElementById('baccount').innerHTML=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);
  }
}
//==================== Date personale ====================
function update_personal_data(){
  var url = "ajax/ajax_buser.php";
  var frm_obj=document.getElementById('frm_personal_data');
  parameters='act=personal_data';
  if(frm_obj.type_1.checked){
    parameters+=url_element("type",1);
  }else if(frm_obj.type_2.checked){
    parameters+=url_element("type",2);
  }else if(frm_obj.type_3.checked){
    parameters+=url_element("type",3);
  }else{
    parameters+=url_element("type",0);
  }
  parameters+=url_element("bu_id",frm_obj.bu_id.value);
  parameters+=url_element("firstname",frm_obj.firstname.value);
  parameters+=url_element("lastname",frm_obj.lastname.value);
  parameters+=url_element("cnp",frm_obj.cnp.value);
  parameters+=url_element("address",frm_obj.address.value);
  parameters+=url_element("city",frm_obj.city.value);
  parameters+=url_element("county",frm_obj.county.value);
  parameters+=url_element("mailcode",frm_obj.mailcode.value);
  parameters+=url_element("phone",frm_obj.phone.value);
  parameters+=url_element("fax",frm_obj.fax.value);
  ajaxRead(mobj_ajax, url, 'receive_personal_data', parameters);
}
function receive_personal_data(){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
      var frm_obj=document.getElementById('frm_personal_data');
	    var xmldoc = mobj_ajax.responseXML;
	    
      if(xmldoc) {
        var act_status = get_xml_elem_value(xmldoc, 'STATUS');
        if(act_status==1){
          document.getElementById('err_firstname').innerHTML='';
          document.getElementById('err_lastname').innerHTML='';
          document.getElementById('err_cnp').innerHTML='';
          baccount('personal_data',0);
        }else{        
          switch(get_xml_elem_value(xmldoc, 'LASTNAME')){
          	case '0':
          	   	document.getElementById('err_lastname').innerHTML='';
          	   	break;
          	case '1':
          		document.getElementById('err_lastname').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'LASTNAME',0,'error'));;
          		break;
          }
          
          switch(get_xml_elem_value(xmldoc, 'FIRSTNAME')){
          	case '0':
          	   	document.getElementById('err_firstname').innerHTML='';
          	   	break;
          	case '1':
          		document.getElementById('err_firstname').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'FIRSTNAME',0,'error'));;
          		break;
          }
          
          switch(get_xml_elem_value(xmldoc, 'CNP')){
          	case '0':
          	 	document.getElementById('err_cnp').innerHTML='';
          	 	break;
          	case '1':
          		document.getElementById('err_cnp').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'CNP',0,'error'));
          		break;
          }          
        }
	    }else{
	      document.getElementById('baccount').innerHTML=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);
  }
}

//==================== E-mail ====================
function update_email(){
  var url = "ajax/ajax_buser.php";
  var frm_obj=document.getElementById('frm_email');
  parameters='act=email';
  parameters+=url_element("bu_id",frm_obj.bu_id.value);
  parameters+=url_element("new_email",frm_obj.new_email.value);
  parameters+=url_element("confirme_email",frm_obj.confirme_email.value);
  ajaxRead(mobj_ajax, url, 'receive_email', parameters);
}
function receive_email(){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
      var frm_obj=document.getElementById('frm_email');
	    var xmldoc = mobj_ajax.responseXML;
	    
      if(xmldoc) {
        var act_status = get_xml_elem_value(xmldoc, 'STATUS');
        if(act_status==1){
          frm_obj.email.value=frm_obj.new_email.value;
          frm_obj.new_email.value='';
          frm_obj.confirme_email.value='';
          document.getElementById('err_new_email').innerHTML='';
          document.getElementById('err_confirme_email').innerHTML='';
          document.getElementById('email_msg').innerHTML='<span style="color:#22cc33;font-size:10pt;"><b>Adresa de e-mail a fost modificata!</b></span>';
        }else{
          document.getElementById('email_msg').innerHTML='<span style="color:#cc2233;font-size:10pt;"><b>Eroare!</b></span>';
         switch(get_xml_elem_value(xmldoc, 'NEW_EMAIL')){
          	case '0':
          	   	document.getElementById('err_new_email').innerHTML='';
          	   	break;
          	case '1':
          		document.getElementById('err_new_email').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'NEW_EMAIL',0,'error'));;
          		break;
          }
          switch(get_xml_elem_value(xmldoc, 'CONFIRME_EMAIL')){
          	case '0':
          	   	document.getElementById('err_confirme_email').innerHTML='';
          	   	break;
          	case '1':
          		document.getElementById('err_confirme_email').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'CONFIRME_EMAIL',0,'error'));;
          		break;
          }
        }
	    }
	  }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);
  }
}
//==================== E-mail ====================
function update_psw(){
  var url = "ajax/ajax_buser.php";
  var frm_obj=document.getElementById('frm_psw');
  parameters='act=psw';
  parameters+=url_element("bu_id",frm_obj.bu_id.value);
  parameters+=url_element("psw",frm_obj.psw.value);
  parameters+=url_element("new_psw",frm_obj.new_psw.value);
  parameters+=url_element("confirme_psw",frm_obj.confirme_psw.value);
  ajaxRead(mobj_ajax, url, 'receive_psw', parameters);
}
function receive_psw(){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
      var frm_obj=document.getElementById('frm_psw');
	    var xmldoc = mobj_ajax.responseXML;
	    
      if(xmldoc) {
        var act_status = get_xml_elem_value(xmldoc, 'STATUS');
        if(act_status==1){
          frm_obj.psw.value='';
          frm_obj.new_psw.value='';
          frm_obj.confirme_psw.value='';
          document.getElementById('err_new_psw').innerHTML='';
          document.getElementById('err_confirme_psw').innerHTML='';
          document.getElementById('psw_msg').innerHTML='<span style="color:#22cc33;font-size:10pt;"><b>Parola a fost modificata!</b></span>';
        }else{
          document.getElementById('psw_msg').innerHTML='<span style="color:#cc2233;font-size:10pt;"><b>Eroare!</b></span>';
          switch(get_xml_elem_value(xmldoc, 'PSW')){
          	case '0':
          	   	document.getElementById('err_psw').innerHTML='';
          	   	break;
          	case '1':
          		document.getElementById('err_psw').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'PSW',0,'error'));;
          		break;
          }        
          switch(get_xml_elem_value(xmldoc, 'NEW_PSW')){
          	case '0':
          	   	document.getElementById('err_new_psw').innerHTML='';
          	   	break;
          	case '1':
          		document.getElementById('err_new_psw').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'NEW_PSW',0,'error'));;
          		break;
          }
          switch(get_xml_elem_value(xmldoc, 'CONFIRME_PSW')){
          	case '0':
          	   	document.getElementById('err_confirme_psw').innerHTML='';
          	   	break;
          	case '1':
          		document.getElementById('err_confirme_psw').innerHTML=get_err_image(get_xml_elem_attrib_value(xmldoc, 'CONFIRME_PSW',0,'error'));;
          		break;
          }
        }
	    }
	  }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 get_err_image(text){
	str_img='<img src="images/error.gif"';
  if(text.length>0){
    str_img+=' onmouseover="Tip(\''+text+'\', BALLOON, true, ABOVE, true, OFFSETX, -17)"';
  	str_img+=' onmouseout="UnTip()"';
  }
  str_img+='>';
	return str_img;
}
//==================== ====================

function basket_products(act,id){
  var url = "ajax/ajax_products_basket.php";
  parameters='act='+act;
  parameters+=url_element("id",id);
  ajaxRead(mobj_ajax, url, 'receive_basket_products', parameters);
}
function receive_basket_products(){
  var last_page,current_page,new_page,first,last,products;
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
	  document.getElementById('basket_products').innerHTML=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 logout(ref){
  var url = "ajax/ajax_buser.php";
  parameters='act=logout';
  ajaxRead(mobj_ajax, url, 'receive_logout', parameters,ref);
}
function receive_logout(ref){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
	  window.location.href='?'+ref;
	}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 login(frm_id){
  var url = "ajax/ajax_buser.php";
  var frm_obj=document.getElementById(frm_id);
  parameters='act=login';
  parameters+=url_element("email",frm_obj.email.value);
  parameters+=url_element("password",frm_obj.password.value);
  var arr=new Array();
  ajaxRead(mobj_ajax, url, 'receive_login', parameters,arguments[0]+','+arguments[1]);
}

function receive_login(ref){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
	    var xmldoc = mobj_ajax.responseXML;
      if(xmldoc) {
        var act_status = get_xml_elem_value(xmldoc, 'STATUS');
        var arr=ref.split(',');
        var err='';
        switch(arr[0]){
          case 'frm_login':
            err='_cont';
            break;
        }
        if(act_status==1){
          
          document.getElementById('err_login'+err).innerHTML=''
          window.location.href='?'+arr[1];
        }else{        
          document.getElementById('err_login'+err).innerHTML='Email sau parola gresita'          
        }
	    }
	  }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 cont_new(frm_id){
  var url = "ajax/ajax_buser.php";
  var frm_obj=document.getElementById(frm_id);
  parameters='act=cont_new';
  parameters+=url_element("email",frm_obj.email.value);
  parameters+=url_element("firstname",frm_obj.firstname.value);
  parameters+=url_element("lastname",frm_obj.lastname.value);
  parameters+=url_element("password",frm_obj.password.value);
  parameters+=url_element("repassword",frm_obj.repassword.value);
  ajaxRead(mobj_ajax, url, 'receive_cont_new', parameters);
}

function receive_cont_new(){
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
	    var xmldoc = mobj_ajax.responseXML;
      if(xmldoc) {
        var act_status = get_xml_elem_value(xmldoc, 'STATUS');
        if(act_status==1){
          document.getElementById('err_new_email').innerHTML=' <img src="images/ok.png" >';
          document.getElementById('err_new_firstname').innerHTML=' <img src="images/ok.png" >';
          document.getElementById('err_new_lastname').innerHTML=' <img src="images/ok.png" >';
          document.getElementById('err_new_password').innerHTML=' <img src="images/ok.png" >';
          document.getElementById('err_new_repassword').innerHTML=' <img src="images/ok.png" >';
        }else{        
          switch(get_xml_elem_value(xmldoc, 'EMAIL')){
          	case '0':
          	 	document.getElementById('err_new_email').innerHTML=' <img src="images/ok.png" >';
          	 	break;
          	case '1':
          		document.getElementById('err_new_email').innerHTML=' <img src="images/error.gif" >';
          		break;
          	case '2':
          		document.getElementById('err_new_email').innerHTML=' <img src="images/error.gif" >';
          		break;
          }
          
          switch(get_xml_elem_value(xmldoc, 'LASTNAME')){
          	case '0':
          	   	document.getElementById('err_new_lastname').innerHTML=' <img src="images/ok.png" >';
          	   	break;
          	case '1':
          		document.getElementById('err_new_lastname').innerHTML=' <img src="images/error.gif" >';
          		break;
          }
          
          switch(get_xml_elem_value(xmldoc, 'FIRSTNAME')){
          	case '0':
          	   	document.getElementById('err_new_firstname').innerHTML=' <img src="images/ok.png" >';
          	   	break;
          	case '1':
          		document.getElementById('err_new_firstname').innerHTML=' <img src="images/error.gif" >';
          		break;
          }
          
          switch(get_xml_elem_value(xmldoc, 'PASSWORD')){
          	case '0':
          	 	document.getElementById('err_new_password').innerHTML=' <img src="images/ok.png" >';
          	 	document.getElementById('err_new_repassword').innerHTML=' <img src="images/ok.png" >';
          	 	break;
          	case '1':
          		document.getElementById('err_new_password').innerHTML=' <img src="images/error.gif" >';
          		document.getElementById('err_new_repassword').innerHTML='';
          		break;
          	case '2':
          		document.getElementById('err_new_password').innerHTML=' <img src="images/ok.png" >';
          		document.getElementById('err_new_repassword').innerHTML=' <img src="images/error.gif" >';
          		break;
          }          
        }
	  }
	}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);
  }
}
/*OLD*/
function orderProducts(dir){
  document.getElementById("order_price").value=dir;
  pageProducts(1);
}
function pageProducts(new_page){
  var url = "ajax/ajax_products_pagination.php";
  if(document.getElementById("search_txt")){ 
    parameters="search="+document.getElementById("search_txt").value+"&page="+new_page;
  }else if(document.getElementById("id_cat")){
    parameters="id="+document.getElementById("id_cat").value+"&page="+new_page;
  }
  if(new_page==0){
    new_page=document.getElementById('current_page').value;
  }  
  parameters+="&page="+new_page;
  parameters+="&order_price="+document.getElementById("order_price").value;
  parameters+="&producer="+document.getElementById("producer").value;
  try{
    mobj_ajax.open( "POST", url, true );
    mobj_ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    mobj_ajax.onreadystatechange = function(){receivePageProducts(new_page)};
	mobj_ajax.send(parameters);
  }catch(e){//caught an error
	alert('Request send failed');	
  }
}

function receivePageProducts(new_page){
  var last_page,current_page,new_page,first,last,products;
  try{  
    if((mobj_ajax.readyState == 4)&&(mobj_ajax.status == 200)){
      current_page=document.getElementById("current_page").value.valueOf();
      last_page=document.getElementById("last_page").value;
	  document.getElementById('products_container').innerHTML=mobj_ajax.responseText;
	  document.getElementById("current_page").value=new_page
/*	  document.getElementById("pag_"+current_page).innerHTML='<a href="javascript:pageProducts('+current_page+')">'+current_page+'</a>';
      document.getElementById("pag_"+new_page).innerHTML='<b>'+new_page+'</b>';
      
      products=document.getElementById("products_number").value;
      first=(new_page-1)*9+1;
      last=Math.min(new_page*9,products);
      document.getElementById("products_view").innerHTML=first+" - "+last;
      if(new_page>1){
        document.getElementById('pag_back').innerHTML=' <a href="javascript:pageProducts('+(new_page.valueOf()-1)+')"><image src="images/arrow_left.gif" border="0"></a> ';
      }else{
        document.getElementById('pag_back').innerHTML='';
      } 
      if(new_page<last_page){
        document.getElementById('pag_next').innerHTML=' <a href="javascript:pageProducts('+(new_page.valueOf()+1)+')"><image src="images/arrow_right.gif" border="0"></a> ';
      }else{
        document.getElementById('pag_next').innerHTML='';
      }*/
	}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);
  }
}