function f_fix_n (str, dec, min, max, bneg)
{
	var bDec = 0; var val = "";
	var strf = ""; var neg = ""; var i = 0;
	if (isNaN (min))
		min = 0;
	if (str == "") return parseFloat (min).toFixed (dec);
	for (i; i < str.length; i++)
	{
		val = str.charAt (i);
		if (val == '.')
		{
			if (strf == "" && bneg && val == '-')
				neg = '-';
			if (!bDec) { strf += val; bDec = 1; }
		}
		else if (val >= '0' && val <= '9')
			strf += val;
	}
	strf = (strf == "" || parseFloat (strf) < parseFloat (min) ? parseFloat (min) : neg + strf); // check minimum value limit
	if (parseFloat (strf) > parseFloat (max)) // check maximum value limit
		strf = parseFloat (max);
	return parseFloat (strf).toFixed (dec);
}
