﻿function roundNumber(num, dec) {
	var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
	return result;
}
function calcPkgByMER(nWeight) {
    if (nWeight == NaN | nWeight == 0) return;
    var MER;
    var nLargePerWeek;
    var nSmallPerWeek;
    var n2xWeekLarge;
    var n2xWeekSmall;
    
    MER = 75 * Math.pow(parseFloat(nWeight) * .45359237,.75);
    if (document.getElementById("rInactive").checked==true){MER=MER*.8};
    if (document.getElementById("rAverage").checked==true){};
    if (document.getElementById("rActive").checked==true){MER=MER*1.1};
    if (document.getElementById("rPuppy").checked==true){MER=MER*2.5};
    if (document.getElementById("rMom").checked==true){MER=MER*2.5};
    if (MER < 500){
        nSmallPerWeek = Math.round(MER*7/500);
        n2xWeekSmall = Math.round(MER*2/500);
            document.getElementById("spanReportDaily").innerHTML = 
                "<br />Your dog needs about " + Math.round(MER) + " calories per day.<br /><br />" +
                "<b>If you choose to supplement another food, and feed freshfetch twice a week:</b><br />" +
                "&nbsp;&nbsp;feed " + String(cD2F(n2xWeekSmall)) + " small tray(s) per week (about " + String(cD2F(n2xWeekSmall / 2,1)) + " per day.)<br /><br />" + 
                "<b>Or, if you wish to feed freshfetch every day:</b><br />" +
                "&nbsp;&nbsp;feed " + String(cD2F(nSmallPerWeek)) + " small tray(s) per week (about " + String(cD2F(nSmallPerWeek / 7,1)) + " per day.)<br />"; 
        }
      else {
        nSmallPerWeek = Math.round(MER*7 / 500);
        nLargePerWeek = Math.round(MER*7 / 1000);
        n2xWeekSmall = Math.round(MER*2 / 500);
        n2xWeekLarge = Math.round(MER*2 / 1000);
            document.getElementById("spanReportDaily").innerHTML = 
                "<br />Your dog needs about " + Math.round(MER) + " calories per day.<br /><br />" +
                "<b>If you choose to supplement another food, and feed freshfetch twice a week:</b><br />" +
                "&nbsp;&nbsp;feed " + String(cD2F(n2xWeekSmall)) + " small tray(s) per week (about " + String(cD2F(n2xWeekSmall / 2,1)) + " per day.)<br />" + 
                "&nbsp;&nbsp;Or, " + String(cD2F(n2xWeekLarge)) + " large tray(s) (about " + String(cD2F(n2xWeekLarge / 2,1)) + " per day.)<br /><br />" + 
                "<b>If you wish to feed freshfetch every day:</b><br />" +
                "&nbsp;&nbsp;feed " + String(cD2F(nSmallPerWeek)) + " small tray(s) per week (about " + String(cD2F(nSmallPerWeek / 7,1)) + " per day.)<br />" +
                "&nbsp;&nbsp;Or, " + String(cD2F(nLargePerWeek)) + " large tray(s) (about " + String(cD2F(nLargePerWeek / 7,1)) + " per day.)<br />";
            }
}
function calcMER(nWeight) {
    var MER;
    MER = 75 * Math.pow(parseFloat(nWeight) * .45359237,.75);
    if (document.getElementById("rInactive").checked==true){MER=MER*.8};
    if (document.getElementById("rAverage").checked==true){};
    if (document.getElementById("rActive").checked==true){MER=MER*1.1};
    if (document.getElementById("rPuppy").checked==true){MER=MER*2.5};
    if (document.getElementById("rMom").checked==true){MER=MER*2.5};
    document.getElementById("tbCalories").value = Math.round(MER);
}

function convertGrams(nWeightOz, oElement) {
    var grams;
    grams = nWeightOz * 28.35;
    document.oElement.innerHTML = grams;
}

function cD2F(portion) {
var fraction;
var whole;
var result;
fraction = portion % 1;
whole = portion - (portion % 1);
if (whole == 0){
    if (fraction < 1/8) {return "1/8";}
    if (fraction < 3/8) {return "1/4";}
    if (fraction < 5/8) {return "1/2";}
    if (fraction < 7/8) {return "3/4";}
    if (fraction <= 1) {return "1"}
}else {
    if (fraction < 1/8) {result = whole; return result;}
    if (fraction < 3/8) {result = whole + " 1/4"; return result;}
    if (fraction < 5/8) {result = whole + " 1/2"; return result;}
    if (fraction < 7/8) {result = whole + " 3/4"; return result;}
    if (fraction <= 1) {result = 1 + whole; return result;}
    }
    return result;
}