// [ minméret, 1[minméret&számot], 3[minméret&számot, min, max, ellmin, ellmax], 2[minméret,x:0email]]

function ellenor(x,y)
{
var o=0; // a szerverek autosession kiegészítése miatt !!!
var nev,ert,min,max,minta,i
if ( x[0].type.toLowerCase()=='hidden' ) o=1;
for (var i=0; i<y.length; i+=1) 
{
  nev=x[i+o].name;
  ert=sel_valu(x[i+o]);

  if ( y[i].length == 1 || y[i].length > 2) // tömb[méret ,min,max,minjegy,maxjegy] - Numerikus adat
  {
    if ( ert.length > 0 )
    {
       if (isNaN(parseFloat(ert))) {alert(nev+': számot kell megadni');return false;}
       if ( y[i].length>2 )
       {
          if ( parseFloat(ert)<parseFloat(y[i][1]) || parseFloat(ert)>parseFloat(y[i][2]) )
          {alert(nev+': '+parseFloat(ert)+' !!! \n(megengedett érték '+y[i][1]+'-'+y[i][2]+')');return false;}
          if ( y[i].length>4 )
          {
             min=y[i][3];max=y[i][4];
             minta=new RegExp("^\\d{"+min+","+max+"}$");
             if(!minta.exec(ert))
             {alert(nev+': '+ert+' !!! \n\nItt '+y[i][3]+' vagy '+y[i][4]+' számjegyet kell megadni.\n\nCsak számjegy megengedett.');return false;}
          }
       }
    }
    y[i]=y[i][0]; // tömbtelenítés
  }

  if ( y[i].length == 2 ) // tömb[méret,x] - Kötelező karakterek (x=0:email)
  {
    if (y[i][1]==0) c='@.';
    else c='';
    y[i]=y[i][0]; // tömbtelenítés
    if ( ert.length > 0 )
    for (var j=0; j<c.length; j+=1)
    {
      if (ert.indexOf(c.charAt(j)) == -1)
      {alert(nev+': kéne benne lenni "'+c.charAt(j)+'" karakternek');return false;}
    }
  }

  // méret ell.
  if (ert.length<y[i])
  {alert(nev+' túl rövid, min. '+y[i]+' karakter\n'+ert );return false;}

  c='\'\"<>\\';
  for (var j=0; j<c.length; j+=1)
  {
    if (ert.indexOf(c.charAt(j)) != -1)
    {alert(nev+': nem megengedett karakter: '+c.charAt(j));return false;}
  }

}
return true;
}

function sel_valu(x)
{
 t=x.type.toLowerCase();
 if (t)
 {
  if (t.indexOf("select")!=-1) {return (x[x.selectedIndex].value);}
  else {return (x.value);}
 }
 return ("????????");
}

