

/* ciekawe ograniczniki:

var nip = /^(\(d{3}-\d{3}-\d{2}-\d{2})|(d{3}-\d{2}-\d{2}-\d{3})$/



var pesel = /^\d{11}$/



var regon = /^\d{9}$/



var tel= /^[0-9]+-?[0-9]+-?[0-9]+-?[0-9]+-?[0-9]*$/



var zip=/^\d{2}-\d{3}$/



var numeric=/^[0-9\.\-\+]+$/



var date=/^\d{4}(-\d{2}){2}$/



var litery=^[ĄĆĘŁŃÓŚŹŻąćęłńóśźż\s-0-9A-Za-z_\'\"&\(\),\.]*$/

*/



//-------------------------------------------------------------------

// isNumeric(value)

//   Returns true if value contains a positive float value

//-------------------------------------------------------------------



//function issNumeric(val)

//{return(parseFloat(val,10)==(val*1));}

function is_num()
{
	var txt = is_num.arguments[0];
	for (i=0; i<txt.length; i++)
	{
		if ( (txt.charAt(i) < '0') || (txt.charAt(i) > '9') )
		{
			return false;
		}
	}
	return true;
}

function TestNIP()
{
	var nip = TestNIP.arguments[0];
	
  var steps = new Array(6, 5, 7, 2, 3, 4, 5, 6, 7);
  var sum_nb = 0;
  var i = 0;
	
	nip = nip.replace(/-/g,'');
	if (nip.length != 10)
	{
		return false;
	}
	if (!is_num(nip)) 
	{
		return false;
	}

  for (i=0; i<9; i++)
  {
  	sum_nb += ( steps[i] * Number(nip.charAt(i)) );
  }
  sum_nb %= 11;

  if (sum_nb == 10) {sum_nb = 0;}
  if ( sum_nb == Number(nip.charAt(9)) ) 
  {
  	return true;
  }
	return false;
}

function TestREGON()
{
	var regon = TestREGON.arguments[0];
	
  var steps = new Array(8, 9, 2, 3, 4, 5, 6, 7);
  var sum_nb = 0;
  var i = 0;
	
	regon = regon.replace(/-/g,'');
	if (regon.length != 9)
	{
		return false;
	}
	if (!is_num(regon)) 
	{
		return false;
	}

  for (i=0; i<8; i++)
  {
  	sum_nb += ( steps[i] * Number(regon.charAt(i)) );
  }
  sum_nb %= 11;

  if (sum_nb == 10) {sum_nb = 0;}
  if ( sum_nb == Number(regon.charAt(8)) ) 
  {
  	return true;
  }
	return false;
}


function sprmin(zm,minv)
{
  if (zm.value<minv) zm.value=minv;
}

function sprmax(zm,maxv)
{
  if (zm.value>maxv) zm.value=maxv;
}


// Obliczenie różnicy dat w dniach
function datediff(date1,date2)
{
  diff  = new Date();
  diff.setTime(Math.abs(date1.getTime() - date2.getTime()));
  days = Math.floor(timediff / (1000 * 60 * 60 * 24)); 
  return days;
}



function isNumeric(strString)

   //  check for valid numeric strings	

   {

   var strValidChars = "0123456789.-";

   var strChar;

   var blnResult = true;



   if (strString.length == 0) return false;



   //  test strString consists of valid characters listed above

   for (i = 0; i < strString.length && blnResult == true; i++)

      {

      strChar = strString.charAt(i);

      if (strValidChars.indexOf(strChar) == -1)

         {

         blnResult = false;

         }

      }

   return blnResult;

   }





function playsound(soundfile){

if (document.all && document.getElementById){

document.getElementById('soundeffect').src='' //reset first in case of problems

document.getElementById('soundeffect').src=soundfile

}

}



function show_hide_column(col_no, do_show) {



    var stl;

    if (do_show) stl = 'block'

    else         stl = 'none';



    var tbl  = document.getElementById('id_of_table');

    var rows = tbl.getElementsByTagName('tr');



    for (var row=0; row<rows.length;row++) {

      var cels = rows[row].getElementsByTagName('td')

      cels[col_no].style.display=stl;

    }

  }





function sprawdzDate(pole) {



var wynik=pole.value.search(/^\d{4}(-\d{2}){2}$/) != -1 || pole.value == "";

if (!wynik) alert('Niepoprawna data! \n Poprawny format to: rrrr-mm-dd');

return wynik;



}





function ClearForm(config)

{

  for (i=0;i<config.elements.length;i++)

  {

    //alert(config.elements(i).name);

		if (config.elements(i).name!='dokl' && config.elements(i).name!=''

		    && config.elements(i).name!='dodpopr')

		  config.elements(i).value="";

  }

};



function ImgAdres(id,typ,dodinf)

{

  

  y = self.event.offsetY;

  if (y <= 10)

  {  document.location='?spznk'+typ+'='+id+dodinf;

  }

  else

  {

     document.location='?spznb'+typ+'='+id+dodinf;

  }

}



function SprKwote(kwota,dokl)

{

  // alert(dokl);
  if (!dokl) { dokl=2; };
  
  //var mikExp = /[$\\@\\\#%\^\&\*\(\)\[\]\+\_\{\}\`\~\=\|]/;

  var mikExp = /[a-z]/;

  var mikExp2 = /[A-Z]/;

  // kwotax=kwota.value;

  kwstr=kwota.value.toString();

  for(i=0;i<kwstr.length;i++)

  {

    znak=kwstr.charAt(i);

    if (znak==',')

    { kwota.value=kwstr.substring(0,i)+'.';}

  };



  kwstr=kwota.value.toString();

  znak=kwstr.charAt(kwstr.length-1);



  if (znak.search(mikExp)!= -1 || znak.search(mikExp2)!= -1)

  { kwota.value=kwstr.substring(0,(kwstr.length - 1));

  }



  kwstr=kwota.value.toString();

  znak=kwstr.charAt(kwstr.length-1);





  if ( kwstr.indexOf('.')!=kwstr.lastIndexOf('.'))

  { kwota.value=kwstr.substring(0,(kwstr.length - 1));}

  //alert(kwstr.indexOf('.'));



  kwstr=kwota.value.toString();

  znak=kwstr.charAt(kwstr.length-1);



  if (kwstr.length-kwstr.indexOf('.')>1+dokl && kwstr.indexOf('.')>0)

  { kwota.value=kwstr.substring(0,(kwstr.length - 1));}

  if (!isNumeric(kwota.value)) { kwota.value='';}

}

function SprLiczbe(kwota,dokl)

{
	//SprKwote(kwota,dokl);
	
  kwota.value = kwota.value.replace(',','.');
  while (kwota.value.indexOf('.') != kwota.value.lastIndexOf('.')) {kwota.value = kwota.value.substr(0,kwota.value.lastIndexOf('.'));}
  if ((kwota.value != '-') && (kwota.value.substr(kwota.value.length-1) != '.') && (kwota.value.substr(kwota.value.length-1) != '0')) {kwota.value = parseFloat(kwota.value);}
  if (kwota.value == 'NaN') kwota.value = '';
  if ((kwota.value.indexOf('.')>0) && (kwota.value.length > (kwota.value.indexOf('.') + dokl))) kwota.value = kwota.value.substr(0,kwota.value.lastIndexOf('.')+dokl+1);
  
}


function SprRabat(kwota)

{

  //var mikExp = /[$\\@\\\#%\^\&\*\(\)\[\]\+\_\{\}\`\~\=\|]/;

  var mikExp = /[a-z]/;

  var mikExp2 = /[A-Z]/;

  kwstr=kwota.value.toString();

  for(i=0;i<kwstr.length;i++)

  {

    znak=kwstr.charAt(i);

    if (znak==',')

    { kwota.value=kwstr.substring(0,i)+'.';}

  };



  kwstr=kwota.value.toString();

  znak=kwstr.charAt(kwstr.length-1);



  if (znak.search(mikExp)!= -1 || znak.search(mikExp2)!= -1)

  { kwota.value=kwstr.substring(0,(kwstr.length - 1));

  }



  kwstr=kwota.value.toString();

  znak=kwstr.charAt(kwstr.length-1);





  if ( kwstr.indexOf('.')!=kwstr.lastIndexOf('.'))

  { kwota.value=kwstr.substring(0,(kwstr.length - 1));}

  //alert(kwstr.indexOf('.'));



  kwstr=kwota.value.toString();

  znak=kwstr.charAt(kwstr.length-1);



  if (kwstr.length-kwstr.indexOf('.')>4 && kwstr.indexOf('.')>0)

  { kwota.value=kwstr.substring(0,(kwstr.length - 1));}

}





function ZmPrc(cn)

{

  y = self.event.offsetY;

  if (cn.name=='cena_a')
	{
    cv=document.towared.mcena_a.value;
    if (y <= 10)
    {  cv++;
       document.towared.mcena_a.value =kwota(cv);
    }
    else
    {
      cv--;
      document.towared.mcena_a.value = kwota(cv);
    }

    cmar(towared.cena_a,towared.brcena_a,towared.mcena_a,towared.cenazak,towared.vat)

		return;

	}

  if (cn.name=='cena_b')

	{

    cv=document.towared.mcena_b.value;

    if (y <= 10)

    {  cv++;

       document.towared.mcena_b.value =kwota(cv);

    }

    else

    {

      cv--;

      document.towared.mcena_b.value = kwota(cv);

    }

    cmar(towared.cena_b,towared.brcena_b,towared.mcena_b,towared.cenazak,towared.vat)

		return;

	}

  if (cn.name=='cena_c')

	{

    cv=document.towared.mcena_c.value;

    if (y <= 10)

    {  cv++;

       document.towared.mcena_c.value =kwota(cv);

    }

    else

    {

      cv--;

      document.towared.mcena_c.value = kwota(cv);

    }

    cmar(towared.cena_c,towared.brcena_c,towared.mcena_c,towared.cenazak,towared.vat)

		return;

	}

  if (cn.name=='cena_d')

	{

    cv=document.towared.mcena_d.value;

    if (y <= 10)

    {  cv++;

       document.towared.mcena_d.value =kwota(cv);

    }

    else

    {

      cv--;

      document.towared.mcena_d.value = kwota(cv);

    }

    cmar(towared.cena_d,towared.brcena_d,towared.mcena_d,towared.cenazak,towared.vat)

		return;

	}

  if (cn.name=='cena_e')

	{

    cv=document.towared.mcena_e.value;

    if (y <= 10)

    {  cv++;

       document.towared.mcena_e.value =kwota(cv);

    }

    else

    {

      cv--;

      document.towared.mcena_e.value = kwota(cv);

    }

    cmar(towared.cena_e,towared.brcena_e,towared.mcena_e,towared.cenazak,towared.vat)

		return;

	}

	

	

}





function click() {

  if (event.button==2) {

  alert(' Przepraszamy, ale zdjecia sa chronione!');

}

}





function sumuj()

{

  // alert(lista.elements.length);

	document.getElementById('lista').sumawart.value=0;

  for(i=0;i<document.getElementById('lista').elements.length;i++)

	{ j=round(i/2);

	  if (document.getElementById('lista').elements[i].checked) 

		{document.getElementById('lista').sumawart.value=round(round(document.getElementById('lista').sumawart.value)+round(document.getElementById('lista').elements[i-1].value));
		//alert(document.getElementById('lista').elements[i-1].value);

		  // alert(lista.wart[j].value);

		};

	  // alert(i+' '+lista.elements[i].checked+' '+lista.wart[i].value);

	}

	window.status='Suma: '+document.getElementById('lista').sumawart.value;

};





/*

function sumuj(wart,box)

{

  // alert(box[1].checked);

	// alert(wart[0].value);

  //for(i=0;i<box.length;i++)

  //{

	//  if (box[i].checked) suma+=co;

	//};

  suma=round(lista.sumawart.value*100)/100;

  //alert(round(suma));

  naco.value=round(co*100)/100;

  if (!box.status)

  { suma-=round(naco.value*100)/100;

    naco.value='' }

  else

  { suma+=round(naco.value*100)/100;}



  lista.sumawart.value=round(suma);

}

*/



function zastap(co,naco)

{

  //alert(co);

  //alert(naco);



  naco.value=co;

}



function twnazwy(towar)

{

  ////towar.symtow.value=towar.grnzw.value;

  towar.opis.value=towar.grops.value;  // GRUPA

  towar.nazwa.value=towar.grnzw.value;

  towar.parametry.value='';

  tekst=towar.prod.value;

  tab = tekst.split('|');

  ////towar.symtow.value+=tab[1];

  //alert(tab[2]!='');

  if (tab[2]!='')

  { towar.opis.value+=' '+tab[2] ;} // PRODUCENT

  if (tab[1]!='')

  { towar.nazwa.value+=' '+tab[1];}

  towar.idp.value=tab[0];

  for(i=0;i<towar.params.length;i++)

  {

    tekst=towar.params[i].value;

    tab = tekst.split('|');

    //alert(tab);

    if (tab.length==1)

    {   if (tab!='')

        {

        ////towar.symtow.value+=tab;

        towar.opis.value+=' '+tab;

        towar.nazwa.value+=' '+tab;

        }

        towar.parametry.value+='|'+tab;

        ////towar.symtow.value=towar.symtow.value.toUpperCase();

        towar.nazwa.value=towar.nazwa.value.toUpperCase();

    } else

    {

      ////towar.symtow.value+=tab[1];

      if (tab[2]!='')

      { towar.opis.value+=' '+tab[2] ;}

      if (tab[3]!='')

      { towar.nazwa.value+=' '+tab[3];}

      towar.parametry.value+='|'+tab[4];

    };

  };

  typ=towar.params.type;

  //typ=typ.toString;

  //alert('typ '+typ+' '+i);

  //alert(typ=='text');

  //alert(i==0);

  if (i==0 && typ=='text')

  { //alert (typ+' '+i+' '+towar.params.value);

    tekst=towar.params.value;

    //alert('tekst='+tekst);

    tekstu=tekst.toUpperCase();

    ////towar.symtow.value+=tekstu;

    towar.nazwa.value+=' '+tekstu;

    towar.opis.value+=' '+tekst;

    towar.parametry.value+='|'+tekst;

  }

  //towar.nazwa.value=towar.opis.value;

  ////towar.symtow.value=towar.symtow.value.toUpperCase();

}



function round(number,X) {

// rounds number to X decimal places, defaults to 2

X = (!X ? 2 : X);

return Math.round(number*Math.pow(10,X))/Math.pow(10,X);

}





function zaokr(netto,brutto,mrz,zakup,vat,dokl)

{

  // alert(dokl.value);

  brutto.value=round(brutto.value,dokl.value);
  
  // var zero=0;
  
  ///brutto.value=round(brutto.value,0*0);
  // brutto.value=Math.round(brutto.value*Math.pow(10,0))/Math.pow(10,0);
  
  // alert("zaokr "+brutto.value);
  /// alert("test: "+Math.round(400.34*Math.pow(10,0))/Math.pow(10,0))
  
  netto.value=kwota(brutto.value/(1+vat.value*0.01));

	if (zakup.value!=0)

  { mrz.value=kwota(100*(netto.value-zakup.value)/netto.value);}

  return true;

}



function cpr(cenazak,cenapor,rabat)

{

  rabat.value=round(100*((cenazak.value-cenapor.value)/cenazak.value),3);

};







function cmar(netto,brutto,mrz,zakup,vat)

{
  SprRabat(mrz);
  // netto.value= kwota((zakup.value*(1+mrz.value*0.01)));
  netto.value= kwota((zakup.value/(1-mrz.value*0.01)));
  
  brutto.value=kwota(netto.value*(1+vat.value*0.01));
  // alert(isNumeric(netto.value));
  if (!isNumeric(netto.value)) netto.value=0;
  if (!isNumeric(brutto.value)) brutto.value=0;  
  return true;

}



function netto(netto,brutto,marza,zakup,vat)

{
  SprKwote(netto);
  brutto.value=kwota(netto.value*(1+vat.value*0.01));
  
  if (!isNumeric(brutto.value)) brutto.value=0;  
  
	if (zakup.value!=0)

  // { marza.value=kwota(100*(netto.value-zakup.value)/zakup.value);}
  { marza.value=kwota(100*(netto.value-zakup.value)/netto.value);}

  if (!isNumeric(marza.value)) marza.value=0;
  return true;

}





function brutto(netto,brutto,marza,zakup,vat)

{

 // br=sprawdzliczbe(brutto.value);
  netto.value=kwota(brutto.value/(1+vat.value*0.01));
  if (!isNumeric(netto.value)) netto.value=0;

  if (zakup.value!=0)

  {  marza.value=kwota(100*(netto.value-zakup.value)/netto.value); }

  if (!isNumeric(marza.value)) marza.value=0;
  SprKwote(brutto);

  return true;

}





function kwota(num) {



  num = Math.round(num*100)/100



    return num.toString();



    }



function gopage(data)

{

  var selection=eval(data.selectedIndex)

    var loc=data.options[selection].value

      location.href=loc

        return true

        }



function gopager(data)

{

  var selection=eval(data.selectedIndex)

  var loc=data.options[selection].value

  parent.main.location.href=loc

  return true

}



function gopagex(data)

{

  var selection=eval(data.selectedIndex);

  var loc=data.options[selection].value;

  main.location.href=loc;

  return true;

}





function stanyb(data,adres)

{

  val=0;

	if (data.checked) val=1;

	adres=adres+val;

  // alert(adres);

	bodym.location.href=adres;

};



function gopageb(data)

{

  var selection=eval(data.selectedIndex);

  var loc=data.options[selection].value;

  bodym.location.href=loc;

  document.getElementById("bodym").contentWindow.focus();

	return true;

}

				

function gopagef(data)

{

  var selection=eval(data.selectedIndex);

  var loc=data.options[selection].value;

  parent.parent.fast.location.href=loc;

  

	return true;

}



function gwar(ile)

{

  towared.gwarancja.value=ile;

};



function setvalue(data)

 { var selection=eval(data.selectedIndex)

    return selection

     }



function check_email(email) {

    invalid = " /:,;";

    if(email == "") { return false }

    for(i=0; i < invalid.length; i++) {

        bad = invalid.charAt(i);

        if (email.indexOf (bad, 0) != -1) { return false }

    }

    at = email.indexOf("@", 0);

    if( (at == -1) || (at == 0) ) { return false }

    if(email.indexOf("@", at+1) != -1) { return false }

    period = email.indexOf(".", at);

    if( (period == -1) || (period == at+1) ) { return false }

    if(period+3 > email.length == -1) { return false }

    return true;

}



function zapisz(form) {

    if (!(check_email(form.email.value))) {

        alert('Podaj poprawny adres e-mail.');

        form.email.focus();

        form.email.select();

        return false;

    }

    else {

        return true;

    }

}



// Sprawdzenie poprawności utworzenia symbolu

function symbol(form)

{

  if (form.nazwa.value=="" || form.opis.value=="")
  { alert('Nie utworzyłeś opisu towaru \n przycisk [TWORZ NAZWY] !');
      return false; }
  if (form.id_jm.value<=0)
  { alert('Nie wybrałeś jednostki miary');
      form.id_jm.focus();
      return false; }
  if (form.id_vat.value<=0)
  { alert('Nie wybrałeś stawki VAT');
    form.id_vat.focus();
      return false; }

  

  return true;



}



function test(form) {

  if (form.nazwa.value=="")

    { alert('Podaj nazwisko i imię lub nazwę firmy');

      form.nazwa.focus();

      form.nazwa.select();

      return false;

      }

  else if (form.kod.value=="")

    { alert('Podaj kod pocztowy');

      form.kod.focus();

      return false;

      }

  else if (form.miejscow.value=="")

    { alert('Podaj miejscowość');

      form.miejscow.focus();

      return false;

      }

  else if (form.ulica.value=="")

    { alert('Podaj ulicę');

      form.ulica.focus();

      return false;

      }

  else if (form.telefon.value=="")

    { alert('Podaj telefon kontaktowy');

      form.telefon.focus();

      return false;

      }

  else if (form.identyfikator.value=="")

    { alert('Wprowadź swój identyfikator');

      form.identyfikator.focus();

      return false;

      }

  else if (form.haslo.value=="")

    { alert('Wprowadź swoje hasło');

      form.haslo.focus();

      return false;

      }

  else if (form.haslo.length<5)

    { alert('Hasło musi mieć co najmniej 5 znaków');

      form.haslo.focus();

      return false;

      }

  else if (form.haslo2.value=="")

    { alert('Wprowadź swóje hasło ponownie');

      form.haslo2.focus();

      return false;

      }

  else if (form.haslo.value!=form.haslo2.value)

    { alert('Hasło powtórzone się nie zgadza - popraw je');

      form.haslo.value="";

      form.haslo2.value="";

      form.haslo.focus();

      return false;

      }

  else

  {  return true;};

}



function usun(tekst) {

  return confirm('Czy usunąć '+tekst+' ?');

}



function Pytanie(tekst) {

  return confirm(tekst);

}





function setPointer(theRow, thePointerColor,out)

{
    
    if (thePointerColor == '' || typeof(theRow.style) == 'undefined') {

        return false;

    }

    if (typeof(document.getElementsByTagName) != 'undefined') {

        var theCells = theRow.getElementsByTagName('td');

    }

    else if (typeof(theRow.cells) != 'undefined') {

        var theCells = theRow.cells;

    }

    else {

        return false;

    }


    
    var rowCellsCnt  = theCells.length;

    for (var c = 0; c < rowCellsCnt; c++) {
			
      
      if (out=='over')
      {
        // theCells[c].style.borderTop = "1px solid brown";
        theCells[c].style.borderBottom = "1px solid brown";
      } else
      {
        theCells[c].style.borderTop = "";
        theCells[c].style.borderBottom = "1px solid #ccccff";
      }
      theCells[c].style.backgroundColor = thePointerColor;
    }



    return true;

} // end of the 'setPointer()' function



function stawka()

{ //alert(towared.vatx.value);

  tekst=towared.vatx.value;

  tab = tekst.split(';');

  towared.vat.value=tab[1];

  towared.vatid.value=tab[0];

  //alert (tab[0]);

};



function sprawdzliczbe(val) {

var mikExp = /[$\\@\\\#%\^\&\*\(\)\[\]\+\_\{\}\`\~\=\|]/;

var strPass = val.value;

var strLength = strPass.length;

var lchar = val.value.charAt((strLength) - 1);

if(lchar.search(mikExp) != -1) {

var tst = val.value.substring(0, (strLength) - 1);

val.value = tst;

   }

   return val;

}





// pokazywanie / chowanie elementów DIV

function showhide(rowID,pok){

// alert(document.all.r2.style.display);

s = 'document.getElementById(rowID).style.display';

sShow = 'document.getElementById(rowID).style.display=""';

sHide = 'document.getElementById(rowID).style.display="none"';

if( pok=='s' || eval(s) == 'none' )

{

  eval(sShow);

} else

{

  eval(sHide);

}



return false;

}



var checkflag = "false";

function selectall(form) 

{ field=form.elements;

  if (checkflag == "false") 

  {

    for (i = 0; i < field.length; i++) 

		{

      field[i].checked = true;

	  }

    checkflag = "true";

    return "Odznacz wszystkie"; 

	}

  else 

  {

    for (i = 0; i < field.length; i++) 

		{

      field[i].checked = false; 

		}

    checkflag = "false";

    return "Zaznacz Wszystkie"; 

	}

}












