var language=0;
var texts=new Array(
	new Array('Podaj nazwę lub wyszukiwane słowo','Proszę wypełnić wszystkie wymagane pola formularza','Proszę przepisać poprawnie tekst z obrazka','Podaj prawidłowy NIP'), 
	new Array('Please insert name or phrase', 'Plese insert all required form fields','Please insert correct text from the image'),
	new Array('Geben Sie den Namen oder Wort suchen', 'Bitte füllen Sie alle Pflichtfelder','Bitte schreiben Sie den Text korrekt aus dem Bild')
);
var openedMenu=0;
var url="";

function ShowMenu(id) {
	
		jQuery('#MENU_'+id).toggle();
		if (id!=openedMenu) {
  			jQuery('#MENU_'+openedMenu).hide();
			openedMenu=id;	
		}
}

function SearchForm(obj) {
	if (obj.name.value.length==0 && obj.text.value.length==0) {
		alert(texts[language][0]);
		return false;
	}
	else
		return true;
}

 /* 
*************************************
  FORMULARZ DO KONTROLI INNYCH FORMULARZY
*************************************
*/
function FormVer(obj, tablica) {
	var elems = tablica;
	res=true;
	
	// usun oznaczenie
  	for (a=0; a<elems.length; a++) {
		jQuery('#'+elems[a]).css("border","1px solid silver");
  	}	
	
  	// podkresl blednie oznaczone	
  	for (a=0; a<elems.length; a++) {
    	wart=eval('obj.'+elems[a]+'.value');
    	if ((wart==''))  {      
			jQuery('#'+elems[a]).css("border","1px solid red");
			res=false;
    	}
  }

  if (res==false)
        alert(texts[language][1]);
  return res;
};

/*
*************************************
  FORMULARZ DO KONTROLI INNYCH FORMULARZY
*************************************
*/
function FormVerImage(obj, tablica, tekst) {
	if (tablica!=null)
		var val=FormVer(obj,tablica);
	else
		var val=true;
	res=true;
	// usun oznaczenie
  	jQuery('#image').css("border","1px solid silver");

  	// podkresl blednie oznaczone
    	wart=eval('obj.image.value');
    	wart=wart.toUpperCase();
    	if ((wart!=tekst))  {
		jQuery('#image').css("border","1px solid red");
		alert(texts[language][2]);
		 return false;
    	}
    	else if (val==true)
    	        return true;
	else {
	        alert(texts[language][1]);
		return false;
	}
};


function FakturaVat(obj) {
	if (obj.faktura.checked==false) {
		obj.dane_faktura.disabled=true; 
		obj.nip_faktura.disabled=true; 
	} else {
   		obj.dane_faktura.disabled=false; 
		obj.nip_faktura.disabled=false; 
	 };
};

function Firma(obj) {
	if (obj.checked==false) {
		jQuery('#COMPANY').hide(); 
	} else {
   		jQuery('#COMPANY').show(); 
	 };
};

function UserFormVerImage(obj, tablica, field, tablica2, tekst) {
	if (tablica!=null)
		var val=FormVer(obj,tablica);
	else
		var val=true;
		
	if (field.checked==true && val) {
		val=FormVer(obj,tablica2);
		if (language==0) {
			res=VerifyNipRegon(obj.companyNip.value,0);
	  		if (res==false) {
	  			alert(texts[language][3]);
	  			return false;
	  		}
	  	}
	}
	res=true;
	
	if (tekst!='') {
			// usun oznaczenie
	  		jQuery('#image').css("border","1px solid silver");
	
	  		// podkresl blednie oznaczone
	    	wart=eval('obj.image.value');
	    	wart=wart.toUpperCase();
	    	if ((wart!=tekst))  {
			jQuery('#image').css("border","1px solid red");
			alert(texts[language][2]);
			 return false;
	    	}
	    	else if (val==true)
	    	        return true;
			else {
		        alert(texts[language][1]);
				return false;
			}
	} else {
		if (val==true)
	    	return true;
	    else {
	     	alert(texts[language][1]);
			return false;
		}
	}
};

function SendForm(obj, tab) {
	if (FormVer(obj, tab)==true)
		obj.submit();
};

function OrderForm(obj, tab, tab2) {
	res=FormVer(obj, tab);
	if (res && (obj.faktura.checked==false || (obj.faktura.checked==true && FormVer(obj, tab2)))) 
		obj.submit();
};

function ConfirmOrderForm(obj, tab, text) {
	res=FormVerImage(obj, tab, text);
	if (res) 
		obj.submit();
};

/*
*************************************
  FORMULARZ DO KONTROLI NIP/REGON
*************************************
*/
function VerifyNipRegon(val,type) {
	// 0 - NIP
	// 1 - REGON (7 digits)
	// 2 - REGON (9 digits)
	
	var size=new Array(
		new Array(6,5,7,2,3,4,5,6,7),
		new Array(2,3,4,5,6,7),
		new Array(8,9,2,3,4,5,6,7)
	);
	var index=0;
	var res=0;
	var last_digit=0;

	// count number of digits in REGON 
	for (a=0;a<val.length;++a) {
		if (val.charAt(a)!="-" && val.charAt(a)!=" ") {
			++index;
			last_digit=a;
		}
	}
	
	if (type!=0 && index==7)
		type=1;
	else if (type!=0 && index==9)
		type=2;
	
	index=0;	
	for (a=0;a<val.length-1;++a) {
		if (val.charAt(a)!="-" && val.charAt(a)!=" ") {
			res+=val.charAt(a)*size[type][index];
			++index;
		}
	}
	
	res=res%11;
	if (res==10)
		res=0;

	if (index!=size[type].length) 
		return false;
	else {
		if (res==val.charAt(last_digit))
			return true;
		else
			return false;
	}
}


