// Select Checkboxes
function checkboxes_all(my_element)
{
	var my_form = my_element.form, z = 0;
	for(z = 0; z < my_form.length; z++)
	{
		if(my_form[z].type == "checkbox" && my_form[z].name != "checkall") my_form[z].checked = my_element.checked;
	}
}

function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}



// Increment Buttons
function setQuantity(pcID, pnOperation, pnMin, pnMax)
{
	var lnCurrentQuantity = parseFloat(document.getElementById(pcID).value);							  
	var lnNewQuantity = lnCurrentQuantity; 
	switch(pnOperation)
	{				   
		case 1: // increase quantity by 1 
			lnNewQuantity++;
			if(lnNewQuantity > pnMax)
			{
				lnNewQuantity = lnCurrentQuantity;
			}
			break;
		case 2:// decrease quantity by 1
			lnNewQuantity--;
			if(lnNewQuantity < pnMin) 
			{
				lnNewQuantity = lnCurrentQuantity;
			}
			break;
		case 3:// increase quantity by 0.1
			lnNewQuantity = lnNewQuantity + 0.1;
			if(lnNewQuantity > pnMax) 
			{
				lnNewQuantity = lnCurrentQuantity;
			}
			break;
		case 4:// decrease quantity by 0.1
			lnNewQuantity = lnNewQuantity - 0.1;
			if(lnNewQuantity < pnMin) 
			{
				lnNewQuantity = lnCurrentQuantity;
			}
			break;      			
		default:// ensuring a typed quantity remains within the parameters defined
			if (lnCurrentQuantity > pnMax || lnCurrentQuantity < pnMin)
			{
				alert("Please set the quantity as a number between " + pnMin + " and " + pnMax + '\n' + "The quantity will now be set to " + pnMin);
				lnNewQuantity = pnMin;
			}
			break;
	}

	document.getElementById(pcID).value = roundNumber(lnNewQuantity,1);
}