var reEmail=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/
var reText=/^([a-zA-Z0-9 \-']{2,30})+$/

//******************************************************************************************************************************
var ElementObjectsCache=new Object();
function GetE(objID){
  if (!ElementObjectsCache[objID]) ElementObjectsCache[objID]=document.getElementById(objID);    
  return ElementObjectsCache[objID];
}

//******************************************************************************************************************************
function OpenDocument(url,handleHttpResponseFunction){
  http.open("GET", url, true);
  if (handleHttpResponseFunction!='') eval("http.onreadystatechange = "+handleHttpResponseFunction);
  http.send(null);
  return;
}

//******************************************************************************************************************************
function getHTTPObject(){
  var xmlhttp;
  if(window.XMLHttpRequest){
    xmlhttp = new XMLHttpRequest();
  }else if (window.ActiveXObject){
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    if (!xmlhttp){
      xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  }
  return xmlhttp;
}
var http = getHTTPObject(); // We create the HTTP Object


//*************************************************************************************************
function ONW(param,hova){
  X=900;
  Y=600;

  windowprops = "left="+(screen.width-X)/2+",top="+((screen.height-Y)/2-30)+",status=no,directories=no,location=no,toolbar=yes,resizable=yes,menubar=no,scrollbars=yes,width="+X+",height="+Y;
  window.open('/products.php?URL='+param,hova, windowprops);
}

//*************************************************************************************************
function S(){
  if (document.forms.mainform.q.value.length<3){
    alert('Please enter min 3 chars !');
    document.forms.mainform.q.focus();
  }else{
    document.forms.mainform.page.value='Search';
    document.forms.mainform.submit();
  }
}

//*************************************************************************************************************************
function L(){
  document.forms.mainform.go2login.value=1;
  document.forms.mainform.submit();
}


//*************************************************************************************************
function Logout(){
  document.forms.mainform.go2login.value=-1;
  document.forms.mainform.submit();
}

//******************************************************************************************************************************
function NewsLetterSignUp(){
  if (!reEmail.test(GetE('newsletter_email').value)){
    alert('Adressa de mail invalid.');
    GetE('newsletter_email').focus();
  }else{
    OpenDocument("/add2Newsletter.php?address="+GetE('newsletter_email').value,"function () { if (http.readyState == 4){var eredmeny=http.responseText;if (eredmeny!='') alert(eredmeny);GetE('newsletter_email').value='';};}");
  }
}


//******************************************************************************************************************************
function CabluriRecalculate(invert,verzio){
  if (isNaN(GetE('gv').value)){
    GetE('gv').value='';
  }
  //if (isNaN(GetE('gv').value)) GetE('gv').value='';
  if (GetE('g2').value==0 || GetE('g3').value==0 || GetE('g4').value==0 || (GetE('gv').value=='' && GetE('gr').value=='')){
    GetE('gr').value=0;
  }else{
    if (invert==0 && GetE('gv').value==''){
      GetE('gr').value=0;
    }else{
      CabluriCheck="/CabluriCalculate.php?g1="+GetE('g1').value+"&g2="+GetE('g2').value+"&g3="+GetE('g3').value+"&g4="+GetE('g4').value+"&gv="+GetE('gv').value+"&gr="+GetE('gr').value+"&calc="+(invert=='1'?'result':'value');
      //alert(CabluriCheck);

      OpenDocument(CabluriCheck,"function () { if (http.readyState == 4){GetE('"+(invert=='0'?'gr':'gv')+"').value=http.responseText;Calculate"+verzio+"Gv2('1');};}");
    }
  }
}

//*****************************************************************************************************************
function CalculateGv(){
  if (!checkIfNumeber(GetE('gv2').value)){
  
  }else{
    GetE('gv').value=Math.round(GetE('gv2').value*1000/230*100)/100;
    CabluriRecalculate('0','');
  }
}

function CalculateGv2(br){
  if (!checkIfNumeber(GetE('gv').value)){
  
  }else{
    GetE('gv2').value=Math.round((GetE('gv').value*230)/1000*100)/100;
    if (br==0) CabluriRecalculate('0','');
  }
}

//*****************************************************************************************************************
function CalculateV2Gv(){
  if (!checkIfNumeber(GetE('gv2').value)){
  
  }else{
    val=GetE('gv2').value/(Math.sqrt(3)*380);
    val=val*1000;
    GetE('gv').value=Math.round(val*100)/100;
    CabluriRecalculate('0','V2');
  }
}

function CalculateV2Gv2(br){
  if (!checkIfNumeber(GetE('gv').value)){
  
  }else{
    val=GetE('gv').value*Math.sqrt(3)*380;
    val=val/1000;
    GetE('gv2').value=Math.round(val*100)/100;
    if (br==0) CabluriRecalculate('0','V2');
  }
}

function checkIfNumeber(szam){
  if (isNaN(szam) || szam<0 || szam.substr(szam.length-1,1)=='.'){
    return false;    
  }
  return true;
}