﻿ function CheckBagAccount(idprd,modeTypeAccount) //modeTypeAccount = 0, sprawdz wszystkie wymagane typy, modeTypeAccount = 1, wsytarczy ze jeden typ  z wymaganych jest zaznaczony/wybrany na stronie
 {
        var rq = document.getElementById("hdntarq" + idprd);
		var check = true;
		var arrMessage = new Array();
		
        if (rq != undefined && rq != null) 
		{
			var items = rq.value.split(",");
            var prd = document.getElementById("divprd" + idprd);
            var types = prd.getElementsByTagName("DIV")
			
            for (var i = 0; i < items.length; i++) //iteracja po typach wymaganych
			{
                check = false;
				var item = document.getElementById("divta" + idprd + "" + items[i]);
                if (item != undefined && item != null) 
				{
                    var ctrls = item.getElementsByTagName("INPUT");
					if (ctrls != undefined && ctrls != null) 
					{        
						for (var j = 0; j < ctrls.length; j++) 
						{                      
                            if (ctrls[j].name == "bagAccount" + idprd) 
							{
                                if (ctrls[j].checked == true) 
                                    check = true;								
                            }
                        }						
						if(ctrls.length > 0 && check == false)
							arrMessage.push(""+idprd+""+items[i]+"");							
                    }
					
					ctrls = null;
					ctrls = item.getElementsByTagName("SELECT");
					if (ctrls != undefined && ctrls != null) 
					{
                        for (var j = 0; j < ctrls.length; j++) 
						{                      
                            if (ctrls[j].name == "bagAccount" + idprd) 
							{
                                if (ctrls[j][ctrls[j].selectedIndex].value == "0|0|0|0|0|0")  //idtype|idtypeext|iddet|pricemode|brutto|netto
                                    check = false;
								else
									check = true;
                            }
                        }
						if(ctrls.length > 0 && check == false)
						{
							arrMessage.push(""+idprd+""+items[i]+"");	
						}	
					}
                }
            } 			
			if(arrMessage.length > 0)
			{
				return TypeAccountMessage(arrMessage,modeTypeAccount,items.length);
			}			
        }
	return true;
 }
function TypeAccountMessage(arr,mode,countTypes)
{		
	if(mode == 0)//wyswietl wszsytkie alerty
	{
		  for (var i = 0; i < arr.length; i++) 
		  {
				TypeAccountAlert(arr[i]);				
		  }		  
	}
	if(mode == 1)//wyswietl tylko jeden alert ze wszsytkich wymaganych typów, poniewaz wystarczy aby wybrac jeden typ
	{
		if(arr.length < countTypes)//liczba alertow mniejsza od liczby typów wymaganych dla produktu
		{
			return true;
		}	
		else
		{
			if(arr.length > 0)
			{
				TypeAccountAlert(arr[0]); //wystarczy pierwszy alert
			}
		}		
	}
	return false;	
}
function TypeAccountAlert(id)
{
	var descr = document.getElementById("divtad"+id);
	var descrAlternative = document.getElementById("hdntad"+id);
	
	if(descrAlternative != null)
	{
		msg = descrAlternative.value;
	}	
	else if(descr == null)
	{
		msg = "Wybierz atrybut dla produktu!";
	}
	else
	{
		msg = language.Get("key12")+" "+descr.innerHTML+"!";
	}
	alert(msg);			
}
function SaveBagAccount(idproduct)
{
	var el = document.getElementsByName("bagAccount"+idproduct);			
	for(var i = 0; i < el.length; i++)
	{		
		if(el[i].tagName == "INPUT")
		{
			if(el[i].checked == true)
			{
				SetCookie("bagAccount["+i+"]", el[i].value);
			}			
		}
		else if(el[i].tagName == "SELECT")
		{			
			SetCookie("bagAccount["+i+"]", el[i].value);
		}		
	}
}
function AccPrice(obj,idprd)
{
	var objBrutto = document.getElementById("pricebrutto"+idprd);
	var objNetto = document.getElementById("pricenetto"+idprd);	
	var objBruttoOrginal = document.getElementById("hdnpriceb"+idprd);
	var objNettoOrginal = document.getElementById("hdnpricen"+idprd);
	var brutto;
	var netto;
	var bruttoOrginal = 0;
	var nettoOrginal = 0;
	var addBrutto = 0;
	var addNetto = 0;	
	
	if(objBrutto != undefined && objBrutto != null && objBruttoOrginal != undefined && objBruttoOrginal != null)
	{
		bruttoOrginal = parseFloat(objBruttoOrginal.value);
	}
	if(objNetto != undefined && objNetto != null && objNettoOrginal != undefined && objNettoOrginal != null)
	{
		nettoOrginal = parseFloat(objNettoOrginal.value);	
	}
		
	var collectionName = obj.getAttribute("name");			
	brutto = bruttoOrginal;
	netto = nettoOrginal;
	var el = document.getElementsByName(collectionName);
	
	for(var i = 0; i < el.length; i++)
	{		
		if(el[i].tagName == "INPUT")
		{
			if(el[i].checked == true)
			{
				var arr = new Array(); 
				arr = el[i].value.split("|"); //idtype|idtypeext|iddet|pricemode|brutto|netto
				if(arr[4] > 0 && arr[3] == 1)//dodaj do ceny
				{
					addBrutto = FloatFormat(parseFloat(addBrutto) + parseFloat(arr[4]));
					addNetto = FloatFormat(parseFloat(addNetto) + parseFloat(arr[5]));
				}
				if(arr[5] > 0 && arr[3] == 0)//nowa cena
				{
					brutto = FloatFormat(parseFloat(arr[4]));
					netto = FloatFormat(parseFloat(arr[5]));
				}				
			}			
		}
		if(el[i].tagName == "SELECT")
		{	
			var arr = new Array(); 
			arr = el[i][el[i].selectedIndex].value.split("|"); //idtype|idtypeext|iddet|pricemode|brutto|netto
			if(arr[4] > 0 && arr[3] == 1)//dodaj do ceny
			{
				addBrutto = FloatFormat(parseFloat(addBrutto) + parseFloat(arr[4]));
				addNetto = FloatFormat(parseFloat(addNetto) + parseFloat(arr[5]));
			}	
			if(arr[5] > 0 && arr[3] == 0)//nowa cena
			{
				brutto = FloatFormat(parseFloat(arr[4]));
				netto = FloatFormat(parseFloat(arr[5]));
			}			
		}		
	}

	if(objBrutto != null){objBrutto.innerHTML = FloatFormat(parseFloat(addBrutto) + parseFloat(brutto));}
	if(objNetto != null){objNetto.innerHTML = FloatFormat(FloatRound(parseFloat(addNetto) + parseFloat(netto),2));}
}
