var annInput = "";                                                      // Declare variables
var quaInput = "";
var monInput = "";
var thisInput = "";
var thisValue = 0;
var n = 0;
var inputCount = 0;
var allInputs = new Array();

function loadBudgetingTool() {
    var allInputs = document.getElementById("budgetingTable").getElementsByTagName("input");
    for (var i = 0; i < allInputs.length; i++) {                        // Cycle through inputs
        allInputs[i].value = "0";                                       // Set default value
        
        allInputs[i].onkeyup = function () {                           // Add onchange function to all inputs
        
        
            if(isNaN(parseFloat(this.value))) {                         // Getting number
                thisValue = 0;
            } else {
                thisValue = parseFloat(this.value);
            }
            annInput = "ann" + this.name.substr(3,4);                   // Getting suffixes
            quaInput = "qua" + this.name.substr(3,4);
            monInput = "mon" + this.name.substr(3,4);
            thisInput = this.name.substr(0,3);                          // Getting this prefix
            
            
            
            for (n = 0; n < allInputs.length; n++) {                    // Cycle through inputs
                if (thisInput == "ann") {                               // Assign other values
                    if (allInputs[n].name == quaInput)
                        allInputs[n].value = Math.round((thisValue / 4)*100)/100;
                    else if (allInputs[n].name == monInput)
                        allInputs[n].value = Math.round((thisValue / 12)*100)/100;
                } else if (thisInput == "qua") {
                    if (allInputs[n].name == annInput)
                        allInputs[n].value = thisValue * 4;
                    else if (allInputs[n].name == monInput)
                        allInputs[n].value = Math.round((thisValue / 3)*100)/100;
                } else {
                    if (allInputs[n].name == annInput)
                        allInputs[n].value = Math.round((thisValue * 12)*100)/100;
                    else if (allInputs[n].name == quaInput)
                        allInputs[n].value = Math.round((thisValue * 3)*100)/100;
                }
            }                                                           // End cycling through inputs
            
            
            inputCount = 0;                                             // Calculate total fields
            for (n = 0; n < allInputs.length; n++) {
                if (allInputs[n].name.substr(0,3) == "ann") {
                    inputCount = parseFloat(inputCount) + parseFloat(allInputs[n].value);
                }
            }
            document.getElementById("annTot").value = Math.round(inputCount*100)/100;
            
            
            inputCount = 0;
            for (n = 0; n < allInputs.length; n++) {
                if (allInputs[n].name.substr(0,3) == "qua") {
                    inputCount = parseFloat(inputCount) + parseFloat(allInputs[n].value);
                }
            }
            document.getElementById("quaTot").value = Math.round(inputCount*100)/100;
            
            
            inputCount = 0;
            for (n = 0; n < allInputs.length; n++) {
                if (allInputs[n].name.substr(0,3) == "mon") {
                    inputCount = parseFloat(inputCount) + parseFloat(allInputs[n].value);
                }
            }
            document.getElementById("monTot").value = Math.round(inputCount*100)/100;
        }
    }                                                                   // End cycling through inputs
}
