// Copyright 2009, Benjamin C. Wilson. Rights Reserved.
Event.observe(window, 'load', init);
function init(){
    initCalcProd();
    //scrollarea('page');
}
function accribitz(cost, times) {
    if (times == 0) { return 0; }
    if (times == 1) { return cost; }
    for (i=0; i<times; i++) { cost = Math.ceil(cost * 1.5); }
    return cost;
}
function scrollarea(target) {
    if (!$(target)) { return; }
    if (!$('trigger')) { return; }
    $(target).style.height = (document.viewport.getHeight() - 150) + 'px'; $(target).style.overflow = 'auto';
}
function costProd() {
    pCost('MF'); pCost('RF'); pCost('NF'); pCost('AF'); pCost('SY'); pCost('OSY'); pCost('balanced');
    pCost('CM2'); pCost('CM3'); pCost('PM2'); pCost('PM3');pCost('CY');
    var mr = parseInt($('MF').value); var rf = parseInt($('RF').value); var nf = parseInt($('NF').value);
    var af = parseInt($('AF').value); var sy = parseInt($('SY').value); var osy = parseInt($('OSY').value);
    var cm2 = parseInt($('CM2').value); var cm3 = parseInt($('CM3').value);
    var pm2 = parseInt($('PM2').value); var pm3 = parseInt($('PM3').value); var cyb = parseInt($('CY').value);
    var m_cost = accribitz(1, mr); var r_cost = accribitz(5, rf); var n_cost = accribitz(80, nf);
    var a_cost = accribitz(1000, af); var s_cost = accribitz(5, sy); var o_cost = accribitz(10000, osy);
    var cy_cost = accribitz(8192, cyb); var total = m_cost + r_cost + n_cost + a_cost + s_cost + o_cost;
    $('counter-MF').update("cum: "+parseInt(m_cost)); $('counter-RF').update("cum: "+parseInt(r_cost));
    $('counter-NF').update("cum: "+parseInt(n_cost)); $('counter-AF').update("cum: "+parseInt(a_cost));
    $('counter-SY').update("cum: "+parseInt(s_cost)); $('counter-OSY').update("cum: "+parseInt(o_cost));
    $('counter-CM3').update("per: "+parseInt(total/cm3)); $('counter-PM3').update("per: "+parseInt(total/pm3));
    $('counter-CM2').update("per: "+parseInt(total/cm2)); $('counter-PM2').update("per: "+parseInt(total/pm2));
    $('counter-CY').update("cum: "+parseInt(cy_cost)); $('counter-balanced').update("Total: "+parseInt(total));
}
function pCost(id) { if (!$('counter-'+id)){ $(id).insert({after: '<div class="costcounter" id="counter-'+id+'"></div>'}); } }
function calcProd() {
    var balanced = $('balanced').value;
    if (balanced ==1) {
        $('RF').disabled = true; $('NF').disabled = true; $('AF').disabled = true;
        var mr = parseInt($('MF').value);
        if ($('MF').value == '') { mr = 0; }
        rf = mr - 4; nf = mr - 11; af = mr - 17;
        if (mr < 0) mr = 0; if (rf < 0) rf = 0; if (nf < 0) nf = 0; if (af < 0) af = 0;
        $('RF').value = rf; $('NF').value = nf; $('AF').value = af;
    }
    else { $('RF').disabled = false; $('NF').disabled = false; $('AF').disabled = false; }

    var mr = parseInt($('MF').value); var rf = parseInt($('RF').value) * 2; var nf = parseInt($('NF').value) * 4;
    var af = parseInt($('AF').value) * 6; var sy = parseInt($('SY').value) * 2; var osy = parseInt($('OSY').value) * 8;
    var cy = parseInt($('CY').value);
    if ($('MF').value == '') { mr = 0; } if ($('RF').value == '') { rf = 0; } if ($('NF').value == '') { nf = 0; }
    if ($('AF').value == '') { af = 0; } if ($('SY').value == '') { sy = 0; } if ($('OSY').value == '') { osy = 0; }
    if ($('CY').value == '') { cy = 0; }

    var cyber = 1 + (0.05 * cy); var shipyards = sy + osy; var fixed = rf + nf + af 
    var m2 = mr * 2; var m3 = mr * 3;
    $('CM2').value = parseInt((fixed + m2) * cyber);
    $('CM3').value = parseInt((fixed + m3) * cyber);
    $('PM2').value = parseInt((fixed + m2 + shipyards) * cyber);
    $('PM3').value = parseInt((fixed + m3 + shipyards) * cyber);
    costProd();
}
function initCalcProd() {
    if (!$('prod')) { return; }
    Event.observe($('prod'), 'keyup', function(){calcProd();}, false);
    Event.observe($('prod'), 'keydown', function(){calcProd();}, false);
    Event.observe($('balanced'), 'click', function(){calcProd();}, false);
    calcProd();
}

