
function ycheckform(form) {
  var hoba = "";

  var nkeret = "none";
  var keret = "2px solid red";
  var wkeret = "2px solid blue";

  var fnev = "";
  var e,e1,e2,e3;
  var s,i,o;
  if (form) {
    e=yfmezo(form,"yfname");
    if (e && e.value) fnev=e.value;
  };

  var stilock = false;
  var szall;

  if (fnev=="fhirlevel") {
    e=yfmezo(form,"email");
    if (e) {
      if (!ychkemail(e.value)) {
        e.style.outline=keret;
        hoba="A feliratkozáshoz kérjük adjon meg egy érvényes email-címet.";
      } else {
        e.style.outline=nkeret;
      };
    };

  } else if (fnev=="fvisszajelzes") {
    e=yfmezo(form,"uzenet");
    if (e) {
      if (!ychkstr(e.value)) {
        hoba="Kérjük írja be üzenetét.";
        e.style.outline=keret;
      } else {
        e.style.outline=nkeret;
      };
    };

  } else if (fnev=="felojegyzes") {
    e1=yfmezo(form,"ugyfel_telefon");
    e2=yfmezo(form,"ugyfel_email");
    if (e1 && e2) {
      if (!ychkstr(e1.value) && !ychkemail(e2.value)) {
        e1.style.outline=keret;
        e2.style.outline=keret;
        hoba="Az előjegyzéshez kérjük adjon meg legalább egy elérhetőséget.\r\n";
        hoba+="(Telefonszámot vagy érvényes e-mail címet)";
      } else {
        e1.style.outline=nkeret;
        e2.style.outline=nkeret;
      };
    };

  } else if (fnev=="fjelentkezes") {
    e=yfmezo(form,"kivant_nyelv");
    if (e) {
      if (!ychkstr(e.value)) {
        e.style.outline=keret;
        hoba="A jelentkezéshez kérjük jelölje meg, melyik nyelv érdekli.";
      } else {
        e.style.outline=nkeret;
      };
    };

    e1=yfmezo(form,"ugyfel_telefon");
    e2=yfmezo(form,"ugyfel_email");
    if (e1 && e2) {
      if (!ychkstr(e1.value) && !ychkemail(e2.value)) {
        e1.style.outline=keret;
        e2.style.outline=keret;
        hoba="A jelentkezéshez kérjük adjon meg legalább egy elérhetőséget.\r\n";
        hoba+="(Telefonszámot vagy érvényes e-mail címet)";
      } else {
        e1.style.outline=nkeret;
        e2.style.outline=nkeret;
      };
    };

    e=yfmezo(form,"ugyfel_nev");
    if (e) {
      if (!ychkstr(e.value)) {
        e.style.outline=keret;
        hoba="A jelentkezéshez kérjük adja meg nevét.";
      } else {
        e.style.outline=nkeret;
      };
    };

  } else if (fnev=="fotletpalyazat") {
    
    e=yfmezo(form,"ugyfel_email");
    if (e) {
      if (!ychkemail(e.value)) {
        e.style.outline=keret;
        hoba="A pályázáshoz kérjük adja meg e-mail címét!";
      } else {
        e.style.outline=nkeret;
      };
    };

  } else if (fnev=="fmegrendeles") {
    e=yfmezo(form,"ugyfel_email");
    if (e) {
      if (!ychkemail(e.value) && ychkstr(e.value)) {
        e.style.outline=keret;
        hoba="A megadott e-mail cím érvénytelen.";
        stilock=true;
      } else {
        e.style.outline=nkeret;
      };
    };

    e=yfmezo(form,"ugyfel_uhszam");
    if (e) {
      if (!ychkstr(e.value)) {
        e.style.outline=keret;
        hoba="A megrendeléshez kérjük adja meg címét!";
      } else {
        e.style.outline=nkeret;
      };
    };
    e=yfmezo(form,"ugyfel_helyseg");
    if (e) {
      if (!ychkstr(e.value)) {
        e.style.outline=keret;
        hoba="A megrendeléshez kérjük adja meg címét!";
      } else {
        e.style.outline=nkeret;
      };
    };
    e=yfmezo(form,"ugyfel_irsz");
    if (e) {
      if (!ychkstr(e.value)) {
        e.style.outline=keret;
        hoba="A megrendeléshez kérjük adja meg címét!";
      } else {
        e.style.outline=nkeret;
      };
    };

    e=yfmezo(form,"ugyfel_nev");
    if (e) {
      if (!ychkstr(e.value)) {
        e.style.outline=keret;
        hoba="A megrendeléshez kérjük adja meg nevét!";
      } else {
        e.style.outline=nkeret;
      };
    };

    e=document.getElementById("tbltetelek");
    if (e) {
      o=kosar_sum();
      if (!o || o.bru<=0 || e.rows.length<=1) {
        e.style.outline=keret;
        hoba="A megrendelni kísérelt tétellista hiányos vagy sérült!";
      } else {
        e.style.outline=nkeret;
      };
    };

    szall=false;
    e=document.getElementsByName("szallmod");
    if (e && e.length==1) e=e[0]; else e=false;
    if (e && e.selectedIndex==0) szall=true;

    e1=yfmezo(form,"ugyfel_telefon");
    e2=yfmezo(form,"ugyfel_email");
    if (e1 && e2) {
      if (hoba=="" &&!ychkstr(e1.value) && !ychkemail(e2.value)) {
        e1.style.outline=wkeret;
        e2.style.outline=wkeret;
        s="";
        s+="Nem adott meg egyetlen elérhetőséget sem.\r\n";
        s+="(Telefonszámot vagy érvényes e-mail címet)\r\n";
        s+="\r\n";
        s+="Ez nehezítheti az esetleg felmerülő problémák megoldását.\r\n";
        s+="A telefonszám megadása házhoz szállítás esetén fontos.\r\n";
        s+="\r\n";
        s+="Biztosan elküldi így a rendelést?";
        if (!confirm(s)) hoba="-";
      } else if (hoba=="" && szall &&!ychkstr(e1.value)) {
        e1.style.outline=wkeret;
        e2.style.outline=nkeret;
        s="";
        s+="Nem adott meg telefonszámot, pedig \r\n";
        s+="házhoz szállításkor ez fontos lehet.\r\n";
        s+="\r\n";
        s+="Biztosan elküldi így a rendelést?";
        if (!confirm(s)) hoba="-";
      } else {
        e1.style.outline=nkeret;
        if (!stilock) e2.style.outline=nkeret; // csak itt - hoba eset
      };
    };
  };

  if (hoba!="") {
    if (hoba!="-") alert(hoba);
    return false;
  };
  return true;
};



function yfmezo(par,mn) {
  if (!par) return null;

  if (par.tagName=="INPUT" || par.tagName=="TEXTAREA" || par.tagName=="SELECT") {
    if (par.name==mn) return par;
  };

  var c = par.childNodes.length;
  var e;
  for (var n=0; n<c; ++n) {
    e=yfmezo(par.childNodes[n],mn);
    if (e) return e;
  };

  return null;
};



function ychkstr(s) {
  if (ytrim(s)=="") return false;
  return true;
};


function ychkemail(s) {
  s=ytrim(s);
  var p1 = s.indexOf("@");
  var p2 = s.lastIndexOf(".");
  var pe = s.length;
  if (p1<=0) return false;
  if (p1!=s.lastIndexOf("@")) return false;
  if (p2<=p1+2) return false;
  if (p2>=pe-2) return false;
return true;
};


function ytrim(s) {
  s=s.replace(/^\s+|\s+$/g,"");
  return s;
};

function yltrim(s) {
  s=s.replace(/^\s+/,"");
  return s;
};

function yrrtrim(s) {
  s=s.replace(/\s+$/,"");
  return s;
};


