var price = 150000;
var close_at = 13;
var options_price = 0;
var portfolio_discount = 0;
var prepaid_discount = 0;
var campaign = 0;
var template_pages = 0;
var nondiscount_price = 0;

$(function(){
    //$('input[@type=checkbox]').attr('checked', false);
    $('span.total').text(calculate());
    $('input#id_price').val(calculate());
    $('span.nondiscount').text(nondiscount_price);
    $('span.order-date').text(getApplicationDate());
    $('div#deadline-slider').slider({
        minValue: 1,
        maxValue: 5,
	startValue: 5,
        change: function(e, ui){
            ui.value += 0.5;
            $('span#deadline').text(Math.floor(ui.value));
            $('input#id_days').val(Math.floor(ui.value));
            $('span.total').text(calculate());
            $('span.nondiscount').text(nondiscount_price);
            $('input#id_price').val(calculate());
        }
    });
    $("#pagenum-slider").slider({
        minValue: 1,
        maxValue: 5,
        change: function(e, ui){
            ui.value += 0.5;
            $('span#pagenum').text(Math.floor(ui.value));
            $('input#id_page').val(Math.floor(ui.value));
            $('span.total').text(calculate());
            $('span.nondiscount').text(nondiscount_price);
            $('input#id_price').val(calculate());
        }
    });
    $("#id_option1").change(function(){
        if ($(this).attr('checked')) {
            portfolio_discount = 0.05;
            $('span.total').text(calculate());
            $('span.nondiscount').text(nondiscount_price);
            $('input#id_price').val(calculate());
        } else {
            portfolio_discount = 0.00;
            $('span.total').text(calculate());
            $('span.nondiscount').text(nondiscount_price);
            $('input#id_price').val(calculate());
        }
    });
    $("#id_option2").change(function(){
        if ($(this).attr('checked')) {
            prepaid_discount = 0.10;
            $('span.total').text(calculate());
            $('span.nondiscount').text(nondiscount_price);
            $('input#id_price').val(calculate());
        } else {
            prepaid_discount = 0.00;
            $('span.total').text(calculate());
            $('span.nondiscount').text(nondiscount_price);
            $('input#id_price').val(calculate());
        }
    });
});

function getApplicationDate() {
    var d = new Date();
    var day = 0;
    if (d.getDay() == 0) {
        day += 1;
    } else if (d.getDay() == 6) {
        day += 2;
    } else {
        if (d.getHours() > close_at) {
            day += 1;
        }
    }
    d2 = new Date(d.getTime()+(day*24*60*60*1000));
    return d2.getFullYear()+'/'+(d2.getMonth()+1)+'/'+d2.getDate();
}

function calculate() {
    var deadline_discount = {
        1: 0, 2: 25000, 3: 50000, 4: 75000, 5: 100000
    };
    pagenum_discount = {
        1:  1.00,  2: 0.90,  3: 0.90,  4: 0.80,  5: 0.80
    };
    var deadline = parseInt($('span#deadline').text(), 10);
    var pagenum = parseInt($('span#pagenum').text(), 10);
    var totalprice =(price - deadline_discount[deadline]) *
                    (pagenum * pagenum_discount[pagenum]);
    totalprice += options_price ;
    totalprice -= totalprice * portfolio_discount;
    totalprice -= totalprice * prepaid_discount;
    nondiscount_price = round(totalprice);
    if (!nondiscount_price) { nondiscount_price = 0; }
    else { nondiscount_price = humanizeNumber(nondiscount_price); }
    if (campaign) { totalprice *= 0.8; }
    if (!totalprice) { totalprice = 0; }
    totalprice *= 1.05;
    return humanizeNumber(round(totalprice));
}

function humanizeNumber(num) {
    var ret = Math.floor(num).toString();
    ret = ret.match(/./g).reverse().join("");
    ret = ret.replace(/(\d{3})/g,"$1,");
    ret = ret.match(/./g).reverse().join("").replace(/^,/,"");
    return ret;
}

function round(num) {
    var tmp = num / 100;
    tmp = Math.round(tmp);
    return tmp * 100;
}

