
/**
* @version  0.0.8
* @require  fix()
* @date     2005-01-06 16:35:15
*/


var cfLangNoWord      = 'Os seguintes Erros forão encontrados: \n';
var cfLangTel         = 'Escreva o telefone';
var cfLangMail        = 'Escreva um endereço de e-mail válido';
var cfLangUrl         = 'Escreva o endereço do site';
var cfLangPostCode    = 'Escreva o CEP';
var cfLangNip         = 'Escreva o valor do frete';
var cfLangPesel       = 'Escreva PESEL';
var cfWrongValue      = 'Escreva o valor correto';
var cfToSmallValue    = 'Valor pequeno demais';
var cfWrongDate       = 'Erro na data';
var cfTxtToShort      = 'Texto curto demais';
var cfMin             = 'Min';
var cfFieldsChecked   = 'requer verificação';

var cfBorderColor     = '';

var cfnColor = '#FFECEC';

var sAllWarnings = '';
var oFirstWrong;
var bIsWarnings = false;
var bAllGood 	= true;






/******************************************************************************************/


function checkCNPJ(obj, ob, komunikat ) {
	if(ob == "1" || ( ob == "0" && obj.value != "")){
		CNPJ = obj.value;
		 erro = new String;
		 if (CNPJ.length < 18) erro += "É necessario preencher corretamente o número do CNPJ! \n\n";
		 if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
		 if (erro.length == 0) erro += "É necessário preencher corretamente o número do CNPJ! \n\n";
		 }
		 //substituir os caracteres que não são números
	   if(document.layers && parseInt(navigator.appVersion) == 4){
			   x = CNPJ.substring(0,2);
			   x += CNPJ. substring (3,6);
			   x += CNPJ. substring (7,10);
			   x += CNPJ. substring (11,15);
			   x += CNPJ. substring (16,18);
			   CNPJ = x;
	   } else {
			   CNPJ = CNPJ. replace (".","");
			   CNPJ = CNPJ. replace (".","");
			   CNPJ = CNPJ. replace ("-","");
			   CNPJ = CNPJ. replace ("/","");
	   }
	   var nonNumbers = /\D/;
	   if (nonNumbers.test(CNPJ)) erro += "A verificação de CNPJ suporta apenas números! \n\n";
	   var a = [];
	   var b = new Number;
	   var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
	   for (i=0; i<12; i++){
			   a[i] = CNPJ.charAt(i);
			   b += a[i] * c[i+1];
	}
	   if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
	   b = 0;
	   for (y=0; y<13; y++) {
			   b += (a[y] * c[y]);
	   }
	   if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
	   if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
			   erro +="Dígito verificador com problema!";
	   }
	   if (erro.length > 0){
		  if( komunikat )
			sAllWarnings += komunikat +'\n';
			if( obj.type != 'hidden' ){
			obj.style.backgroundColor = cfnColor;
		  if( bIsWarnings == false )
			oFirstWrong = obj;
			}
			bIsWarnings = true;
			return false;
		}
		else if( obj.type != 'hidden' )
		obj.style.backgroundColor = cfBorderColor;
	    return true;
	}
	if( obj.type != 'hidden' )
		obj.style.backgroundColor = cfBorderColor;
	return true;
}






function checkCPF(obj, ob, komunikat ) {
	if(ob == "1" || ( ob == "0" && obj.value != "")){
		cpf = obj.value;

		 if(document.layers && parseInt(navigator.appVersion) == 4){
			   x = cpf.substring(0,3);
			   x += cpf.substring(4,7);
			   x += cpf.substring(8,11);
			   x += cpf.substring(12,13);
			   cpf = x;
	   } else {
			   cpf = cpf.replace (".","");
			   cpf = cpf.replace (".","");
			   cpf = cpf.replace ("-","");
	   }

		 erro = new String;
		 if (cpf.length < 11) erro += "Sao necessarios 11 digitos para verificacao do CPF! \n\n";
		 var nonNumbers = /\D/;
		 if (nonNumbers.test(cpf)) erro += "A verificacao de CPF suporta apenas numeros! \n\n";
		 if (cpf == "00000000000" || cpf == "11111111111" || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf == "88888888888" || cpf == "99999999999"){
				 erro += "Numero de CPF invalido!"
	   }
	   var a = [];
	   var b = new Number;
	   var c = 11;
	   for (i=0; i<11; i++){
			   a[i] = cpf.charAt(i);
			   if (i < 9) b += (a[i] * --c);
	   }
	   if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x }
	   b = 0;
	   c = 11;
	   for (y=0; y<10; y++) b += (a[y] * c--);
	   if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; }
	   if ((cpf.charAt(9) != a[9]) || (cpf.charAt(10) != a[10])){
			   erro +="Digito verificador com problema!";
	   }

	   if (erro.length > 0){
		  if( komunikat )
			sAllWarnings += komunikat + '\n';
			if( obj.type != 'hidden' ){
			obj.style.backgroundColor = cfnColor;
		  if( bIsWarnings == false )
			oFirstWrong = obj;
			}
			bIsWarnings = true;
			return false;
		}
		else if( obj.type != 'hidden' )
		obj.style.backgroundColor = cfBorderColor;
		return true;
	}
	if( obj.type != 'hidden' )
		obj.style.backgroundColor = cfBorderColor;
	return true;
}






function checkDepende(obj, type, objDep, objDepValue, komunikat ) {
	if(objDep.value == objDepValue){
		if(type == 'simple'){
			return checkText(obj, komunikat);
		}else if(type == 'int'){
			return checkInt( obj, komunikat);
		}
	}
	return true;
}


function checkBanner( obj, ob, komunikat ) {


re = /\s/gi;
	obj.value.replace(re, "");
	valor = obj.value;
	valor = valor.toLowerCase();


	sRegexp = '\.(gif|bmp|png|jpg|jpeg|swf)$';
	oRegexp = new RegExp( sRegexp );


if(ob == '1' || obj.value != '' ){
	if( valor.search( oRegexp ) == -1 ) {
		if( komunikat )
  			sAllWarnings += komunikat +'\n';
		if( obj.type != 'hidden' ){
  			obj.style.backgroundColor = cfnColor;
      		if( bIsWarnings == false )
        		oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;

	}else{
		if( obj.type != 'hidden' )
		  	obj.style.backgroundColor = cfBorderColor;
		return true;
	}
}


return true;

}


function checkRadio( objNome, komunikat ) {

	obj =  document.getElementByName(objNome);

	if( obj.value == '' ) {
		if( komunikat )
  		sAllWarnings += komunikat +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;

return true;
} // end function checkText


function checkCPFs( obj, komunikat ) {
	
	re = /\s/gi;
	checkT = obj.value.replace(re, "");
	
   erro = 0;
   
   cpf = obj.value;
   
   
 if(document.layers && parseInt(navigator.appVersion) == 4){
			   x = cpf.substring(0,3);
			   x += cpf.substring(4,7);
			   x += cpf.substring(8,11);
			   x += cpf.substring(12,13);
			   s = x;
	   } else {
			   s = cpf.replace (".","");
			   s = s.replace (".","");
			   s = s.replace ("-","");
	   }   
   
   
   var i;
   var c = s.substr(0,9);
   var dv = s.substr(9,2);
   var d1 = 0;
   for (i = 0; i < 9; i++){
	d1 += c.charAt(i)*(10-i);
   }
 
	if (d1 == 0){
		erro = 1;
	}
 
	d1 = 11 - (d1 % 11);
 
	if (d1 > 9){ 
		d1 = 0;
	}
	 
	if(dv.charAt(0) != d1){
		erro = 2; 
	}
 
 
	d1 *= 2;
 
	for (i = 0; i < 9; i++){
		d1 += c.charAt(i)*(11-i); 
	}
 
	d1 = 11 - (d1 % 11);
 
	if (d1 > 9){
		d1 = 0;
	}
 
	if (dv.charAt(1) != d1){
		erro = 3;
	}
	
	if (s == "00000000000" || s == "11111111111" || s == "22222222222" || s == "33333333333" || s == "44444444444" || s == "55555555555" || s == "66666666666" || s == "77777777777" || s == "88888888888" || s == "99999999999"){
				 erro = 4;
	   }
	
	if( checkT == '' || erro > 0) {
		if( komunikat )
		sAllWarnings += komunikat +'\n';
		if( obj.type != 'hidden' ){
		obj.style.backgroundColor = cfnColor;
	  if( bIsWarnings == false )
		oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
	obj.style.backgroundColor = cfBorderColor;

return true;
}






function checkCNPJs( obj, komunikat ) {
	
	re = /\s/gi;
	checkT = obj.value.replace(re, "");
	
   erro = 0;
   
   cnpj = obj.value;
 
	 if(document.layers && parseInt(navigator.appVersion) == 4){
			   x = cnpj.substring(0,2);
			   x += cnpj.substring(3,6);
			   x += cnpj.substring(7,10);
			   x += cnpj.substring(11,15);
			   x += cnpj.substring(16,18); 
			   cnpj = x;
	   } else {
			   cnpj = cnpj.replace (".","");
			   cnpj = cnpj.replace (".","");
			   cnpj = cnpj.replace ("/","");
			   cnpj = cnpj.replace ("-","");
	   }   
   
   
	var i;
	s = cnpj;
	var c = s.substr(0,12);
	var dv = s.substr(12,2);
	var d1 = 0;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+(i % 8));
	}
		if (d1 == 0) erro = 1;
		d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(0) != d1)
	{
		erro = 2;
	}

	d1 *= 2;
	for (i = 0; i < 12; i++)
	{
		d1 += c.charAt(11-i)*(2+((i+1) % 8));
	}
	d1 = 11 - (d1 % 11);
	if (d1 > 9) d1 = 0;
	if (dv.charAt(1) != d1)
	{
		erro = 3;
	}
   
   

	
	if( checkT == '' || erro > 0) {
		if( komunikat )
		sAllWarnings += komunikat +'\n';
		if( obj.type != 'hidden' ){
		obj.style.backgroundColor = cfnColor;
	  if( bIsWarnings == false )
		oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
	obj.style.backgroundColor = cfBorderColor;

return true;
}







/*****************************************************************************************/

function checkText( obj, komunikat ) {

	re = /\s/gi;
	checkT = obj.value.replace(re, "");

	if( checkT == '' ) {
		if( komunikat )
		sAllWarnings += komunikat +'\n';
		if( obj.type != 'hidden' ){
		obj.style.backgroundColor = cfnColor;
	  if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
	obj.style.backgroundColor = cfBorderColor;

return true;
} // end function checkText


function checkTel( obj ) {

	poprawnyTelefon = /^[0-9() \-\+]{7,}$/i;

	if( obj.value.search( poprawnyTelefon ) == -1 ) {
		sAllWarnings += cfLangTel +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkTel


function checkEmail( obj ) {

	re = /\s/gi;
	check = obj.value.replace( re, "" );

	poprawnyEmail = /^[a-z0-9_.-]+([_\\.-][a-z0-9]+)*@([a-z0-9_\.-]+([\.][a-z]{2,4}))+$/i;
	if ( check.search( poprawnyEmail ) == -1 ) {
		sAllWarnings += cfLangMail +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkEmail


function checkWww( obj ) {

	re = /\s/gi;
	check = obj.value.replace( re, "" );
	poprawnyUrl = /^[a-z\d.\\\/\:]{1,}.[a-z]{2,}$/i;

	if( check.search( poprawnyUrl ) == -1 || check == 'http://' ) {
		sAllWarnings += cfLangUrl +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkWww


function checkKod( obj ) {

	poprawnyKod = /^[0-9]{2}-[0-9]{3}$/i;

	if ( obj.value.search( poprawnyKod ) == -1 ) {
		sAllWarnings += cfLangPostCode +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkKod


function checkNip( obj ) {

	poprawnyNip1 = /^[0-9]{3}-[0-9]{3}-[0-9]{2}-[0-9]{2}$/i;
	poprawnyNip2 = /^[0-9]{3}-[0-9]{2}-[0-9]{2}-[0-9]{3}$/i;
	poprawnyNip3 = /^[a-zA-Z]{2}[ ]{1}/i;

	if( obj.value.search( poprawnyNip1 ) == -1 && obj.value.search( poprawnyNip2 ) == -1 && obj.value.search( poprawnyNip3 ) ) {
		sAllWarnings += cfLangNip +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkNip


function checkPesel( obj ) {

	poprawnyPesel = /^[0-9]{11}$/i;

	if( obj.value.search( poprawnyPesel ) == -1 ) {
		sAllWarnings += cfLangPesel +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkPesel


function checkFloat( obj, komunikat ) {

	poprawnyFloat = /^-?[0-9]{1,}[.]{1}[0-9]{1,}$/i;
	poprawnyInt = /^-?[0-9]{1,}$/i;

	if( obj.value.search( poprawnyFloat ) == -1 && obj.value.search( poprawnyInt ) == -1 ) {
    if( komunikat)
      sAllWarnings += komunikat +'\n';
    else
  		sAllWarnings += cfWrongValue +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkFloat


function checkInt( obj, komunikat ) {

	poprawnyInt = /^-?[0-9]{1,}$/i;

	if( obj.value.search( poprawnyInt ) == -1 ) {
		if( komunikat )
  		sAllWarnings += komunikat +'\n';
    else
      sAllWarnings += cfWrongValue +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkInt


function checkFloatValue( obj, minFloat, komunikat ) {

	if( +obj.value <= +minFloat ) {
		if( komunikat )
  		sAllWarnings += komunikat +'\n';
    else
      sAllWarnings += cfToSmallValue +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkFloatValue

function checkIntValue( obj, minInt, znak, komunikat ) {
  if( !minInt )
    minInt = 0;
  if( !znak )
    znak = '==';

	eval ( 'good = ( '+ +obj.value +' '+ znak +' '+ +minInt +' );' );

  if( good == true ){
    if( obj.type != 'hidden' )
    	obj.style.backgroundColor = cfBorderColor;
  }
  else {
		if( komunikat )
  		sAllWarnings += komunikat +'\n';
    else
      sAllWarnings += cfWrongValue +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
return true;
} // end function checkIntValue

function checkDate( obj, format, separator ) {
	if( !format )
		format = "ymd";
	if( !separator )
		separator = "-";

	var d = 2;
	var m = 2;
	var y = 4;

	eval( 'var I = '+ format.charAt( 0 ) +';' );
	eval( 'var II = '+ format.charAt( 1 ) +';' );
	eval( 'var III = '+ format.charAt( 2 ) +';' );

  eval( 'var er = /^[0-9]{'+ I +'}['+ separator +']{1}[0-9]{'+ II +'}['+ separator +']{1}[0-9]{'+ III +'}$/i;' );

	if( obj.value.search( er ) == -1 ) {
    sAllWarnings += cfWrongDate +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
  else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkDate


function checkTxt( obj, min, komunikat ) {
	if( !min )
		min = 6;

	var re = /\s/gi;
	var check = obj.value.replace( re, "" );

	if( check.length < min ) {
		if( komunikat )
      sAllWarnings += komunikat +'\n';
    else
      sAllWarnings += cfTxtToShort +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
  else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkTxt


function checkCheck( obj, check, znak, komunikat, option ) {
  if( znak == '=' )
    znak = '==';

  if( option == 'string' )
    // dla danych typu string
  	eval ( 'good = ( "'+ obj.value +'" '+ znak +' "'+ check.value +'" );' );
  else
    // dla danych liczbowych
  	eval ( 'good = ( '+ +obj.value +' '+ znak +' '+ +check.value +' );' );



	if( good == true ) {
    if( obj.type != 'hidden' )
     obj.style.backgroundColor = cfBorderColor;
  }
  else{
		if( komunikat )
      sAllWarnings += komunikat +'\n';
    else
      sAllWarnings += cfWrongValue +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
return true;
} // end function checkTxt

function compareDates( obj, check, znak, komunikat ) {

  return checkCheck( obj, check, znak, komunikat, 'string' );

} // end function compareDates


function checkCheckbox( inputName, formName, min, komunikat ) {
	// sprawdza czy zostala zaznaczona wymagana ilosc pol
  var formularz	= document.getElementById( formName );
  var inputy		= formularz.getElementsByTagName( 'input' );
  var n			= 0;

  for( var lp in inputy ) {
    if( inputy[lp].type == 'checkbox' && inputy[lp].name.search( inputName ) != -1 ) {
      if( inputy[lp].checked )
        n++;
    }
  }

  if ( n < +min ) {
		if( komunikat )
      sAllWarnings += komunikat +'\n';
    else
      sAllWarnings += cfMin + " " + min + " " + cfFieldsChecked +'\n';

    for( var lp in inputy ) {
      if( inputy[lp].type == 'checkbox' && inputy[lp].name.search( inputName ) != -1 )
        inputy[lp].style.backgroundColor = cfnColor;
    }

    bIsWarnings = true;
		return false;
	}
  else{
    for( var lp in inputy ) {
      if( inputy[lp].type == 'checkbox' && inputy[lp].name.search( inputName ) != -1 )
        inputy[lp].style.backgroundColor = cfBorderColor;
    }
  }

return true;
} // end function checkCheckbox

function checkRegexp( obj, sRegexp, sFlags, komunikat ) {

  oRegexp = new RegExp( sRegexp );

	if ( obj.value.search( oRegexp ) == -1 ) {
		if( komunikat )
  		sAllWarnings += komunikat +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
	else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;

return true;
} // end function checkRegexp


function checkExt( obj, sExtensions, komunikat ){

  var aFileExt    = obj.value.split( "." );
  var sFileExt    = aFileExt[aFileExt.length - 1];

  var aGoodExt    = sExtensions.split( "|" );
  var iGoodCount  = aGoodExt.length;

  var bCheckExt = false;
  for( var i = 0; i < iGoodCount; i++ ){
   if( sFileExt == aGoodExt[i] ){
     bCheckExt = true;
     break;
   }
  } // end for

	if( bCheckExt != true ) {
		if( komunikat )
      sAllWarnings += komunikat +'\n';
    else
      sAllWarnings += cfWrongExt +'\n';
		if( obj.type != 'hidden' ){
  		obj.style.backgroundColor = cfnColor;
      if( bIsWarnings == false )
        oFirstWrong = obj;
		}
		bIsWarnings = true;
		return false;
	}
  else if( obj.type != 'hidden' )
  	obj.style.backgroundColor = cfBorderColor;
return true;
} // end function checkExt

function kropka( pole ){

	re = /\,/gi;
	zKropka = pole.value.replace(re, "\.");

return zKropka;
}  // end function kropka

function checkForm( form, tablica ) {

  sAllWarnings 	= '';
  bIsWarnings 	= false;
  bAllGood			= true;
	oFirstWrong 	= '';

  for( i in tablica ) {

		if( !tablica[i][1] || tablica[i][1] == 'simple' ) {
			bAllGood = checkText( form[tablica[i][0]], tablica[i][2] );
		}
		else if( ( tablica[i][1] == 'tel' ) && ( ( tablica[i][2] == 'false' && form[tablica[i][0]].value ) || !tablica[i][2] ) ) {
			bAllGood = checkTel( form[tablica[i][0]] );
		}
		else if( ( tablica[i][1] == 'email' ) && ( ( tablica[i][2] == 'false' && form[tablica[i][0]].value ) || !tablica[i][2] ) ) {
			bAllGood = checkEmail( form[tablica[i][0]] );
		}
		else if( ( tablica[i][1] == 'www' ) && ( ( tablica[i][2] == 'false' && form[tablica[i][0]].value ) || !tablica[i][2] ) ) {
			bAllGood = checkWww( form[tablica[i][0]] );
		}
		else if( ( tablica[i][1] == 'kod' ) && ( ( tablica[i][2] == 'false' && form[tablica[i][0]].value ) || !tablica[i][2] ) ) {
			bAllGood = checkKod( form[tablica[i][0]] );
		}
		else if( ( tablica[i][1] == 'nip' ) && ( ( tablica[i][2] == 'false' && form[tablica[i][0]].value ) || !tablica[i][2] ) ) {
			bAllGood = checkNip( form[tablica[i][0]] );
		}
		else if( ( tablica[i][1] == 'pesel' ) && ( ( tablica[i][2] == 'false' && form[tablica[i][0]].value ) || !tablica[i][2] ) ) {
			bAllGood = checkPesel( form[tablica[i][0]] );
		}
		else if( ( tablica[i][1] == 'float' ) && ( ( tablica[i][3] == 'false' && form[tablica[i][0]].value ) || !tablica[i][3] ) ) {
			form[tablica[i][0]].value = kropka( form[tablica[i][0]] );
			bAllGood = checkFloat( form[tablica[i][0]] );
			if( bAllGood ){
				form[tablica[i][0]].value = fix( form[tablica[i][0]].value );
				if(	tablica[i][2] != '' )
					bAllGood = checkFloatValue( form[tablica[i][0]], tablica[i][2] );
			}
		}
		else if( tablica[i][1] == 'checkbox' ) {
       bAllGood = checkCheckbox( tablica[i][0], tablica[i][3], tablica[i][2], tablica[i][4] );
		}
		else if( tablica[i][1] == 'date' && ( ( tablica[i][2] == 'false' && form[tablica[i][0]].value) || !tablica[i][2] ) ) { 		// data
			bAllGood = checkDate( form[tablica[i][0]], tablica[i][3], tablica[i][4] );
		}
		else if( ( tablica[i][1] == 'txt' ) && ( ( tablica[i][4] == 'false' && form[tablica[i][0]].value ) || !tablica[i][4] ) ) { 		// opis
			bAllGood = checkTxt( form[tablica[i][0]], tablica[i][2], tablica[i][3] );
		}
		else if( ( tablica[i][1] == 'check' ) && ( ( tablica[i][4] == 'false' && ( form[tablica[i][0][0]].value && form[tablica[i][0][1]].value ) ) || !tablica[i][4] ) ) { 		// sprawdzanie rownosci itp
			bAllGood = checkCheck( form[tablica[i][0][0]], form[tablica[i][0][1]], tablica[i][2], tablica[i][3] );
		}
		else if( ( tablica[i][1] == 'compareDates' ) && ( ( tablica[i][4] == 'false' && ( form[tablica[i][0][0]].value && form[tablica[i][0][1]].value ) ) || !tablica[i][4] ) ) {
			bAllGood = compareDates( form[tablica[i][0][0]], form[tablica[i][0][1]], tablica[i][2], tablica[i][3] );
		}
		else if( ( tablica[i][1] == 'int' ) && ( ( tablica[i][5] == 'false' && form[tablica[i][0]].value ) || !tablica[i][5] ) ) { 		// int - np. ilosc
			bAllGood = checkInt( form[tablica[i][0]], tablica[i][3] );
			if( tablica[i][2] && bAllGood ) {
				if( tablica[i][4] ) {
					bAllGood = checkIntValue( form[tablica[i][0]], tablica[i][2], tablica[i][4], tablica[i][3] );
				}
				else
					bAllGood = checkFloatValue( form[tablica[i][0]], tablica[i][2], tablica[i][3] );
			}
		}
		else if( ( tablica[i][1] == 'regexp' ) && ( ( tablica[i][5] == 'false' && ( form[tablica[i][0]].value ) ) || !tablica[i][5] ) ) {
			bAllGood = checkRegexp( form[tablica[i][0]], tablica[i][2], tablica[i][3], tablica[i][4] );
		}
		else if( ( tablica[i][1] == 'extension' ) && ( ( tablica[i][4] == 'false' && ( form[tablica[i][0]].value ) ) || !tablica[i][4] ) ) {
			bAllGood = checkExt( form[tablica[i][0]], tablica[i][2], tablica[i][3] );
		}
		/*****************************************************************************************************************************************/
		else if( ( tablica[i][1] == 'cnpj' ) ) {
			bAllGood = checkCNPJ( form[tablica[i][0]], tablica[i][2], tablica[i][3] );
		}
		else if( ( tablica[i][1] == 'cpf' ) ) {
			bAllGood = checkCPF( form[tablica[i][0]], tablica[i][2], tablica[i][3] );
		}
		else if( ( tablica[i][1] == 'depende' ) ) {
			bAllGood = checkDepende( form[tablica[i][0]], tablica[i][2], form[tablica[i][3]], tablica[i][4], tablica[i][5] );
		}
		else if( ( tablica[i][1] == 'banner' ) ) {
			bAllGood = checkBanner( form[tablica[i][0]], tablica[i][2], tablica[i][3] );
		}else if( tablica[i][1] == 'cpfs' ) {
			bAllGood = checkCPFs( form[tablica[i][0]], tablica[i][2] );
		}else if( tablica[i][1] == 'cnpjs' ) {
			bAllGood = checkCNPJs( form[tablica[i][0]], tablica[i][2] );
		}
		if( tablica[i][1] == 'radio' ) {
			bAllGood = checkRadio( tablica[i][0], tablica[i][2] );
		}
		/****************************************************************************************************************************************/

	} // end for

  if( bIsWarnings == true ) {
		sAllWarnings = cfLangNoWord + '\n' + sAllWarnings;
    alert ( sAllWarnings );
	if( oFirstWrong )
      oFirstWrong.focus();
    return false;
	}
return true;
} // end function checkForm



/**
* Ustawia liczbie format taki jak dla float
* @return float
* @param float/int f
* @version 1.1-bf2
*/
function fix( f ){
	f	= f.toString( );
	var re	= /\,/gi;
	f	= f.replace( re, "\." );

	f = Math.round( f * 100 );
	f = f.toString( );
	var sMinus = f.slice( 0, 1 );
	if( sMinus == '-' ){
	 f = f.slice( 1, f.length )
	}
	else
	 sMinus = '';
	if( f.length < 3 ) {
		while( f.length < 3 )
			f = '0' + f;
	}

	var w = sMinus + f.slice( 0, f.length-2 ) + "." + f.slice( f.length-2, f.length );

  var poprawnyFloat = /^-?[0-9]{1,}[.]{1}[0-9]{1,}$/i;
	if( w.search( poprawnyFloat ) == -1 )
		w = '0.00';
	return w;

} // end function fix
