﻿function toggle_otheraddress_tbl() {
    if ($('#otheraddress_tbl').css('display') == 'none')
        $('#otheraddress_tbl').css('display', 'block');
    else
        $('#otheraddress_tbl').css('display', 'none');
}
function toggle_righttochange() {
    var disabled = !document.getElementById('righttochange').checked;
    var el = document.getElementById('righttochangetbl');
    var spans = el.getElementsByTagName('label');
    for (var i = 0; i < spans.length; i++) {
        spans[i].disabled = disabled;
    }
    var inputs = el.getElementsByTagName('input');
    for (var i = 0; i < inputs.length; i++) {
        inputs[i].disabled = disabled;
    }
}
function toggle_method(method) {
    if (method == '0') { // New customer, authorization
        $('#newCustomer').css('display', 'block');
        $('#selfService').css('display', 'none');
        $('#cumstomerNo').css('display', 'none');
        $('#dateTable').css('display', 'block');
        $('#currentSupplier').css('display', 'block');
        $('#new_customer').val('1');
        $('#facilityid').val('');
        $('#netid').val('');
    }
    else if (method == '1') { // New customer, self service
        $('#newCustomer').css('display', 'block');
        $('#selfService').css('display', 'block');
        $('#cumstomerNo').css('display', 'none');
        $('#dateTable').css('display', 'block');
        $('#currentSupplier').css('display', 'none');
        $('#supplier').val('');
        $('#new_customer').val('1');
    }
    else if (method == '2') { // Existing customer
        $('#newCustomer').css('display', 'none');
        $('#selfService').css('display', 'block');
        $('#cumstomerNo').css('display', 'block');
        $('#dateTable').css('display', 'none');
        $('#currentSupplier').css('display', 'none');
        $('#supplier').val('');
        $('#new_customer').val('0');
        $('#customno').css('background-color', '#fff');
    }
    else if (method == '3') { // Show New customer text block
        $('#newCustomer').css('display', 'block');
        $('#selfService').css('display', 'none');
        $('#cumstomerNo').css('display', 'none');
        $('#currentSupplier').css('display', 'none');
        $('#supplier').val('');
        $('#auth1').attr('checked', false);
        $('#auth2').attr('checked', false);
        $('#newCustomer').css('background-color', '#fff');
    }
   
}

function checkForm() {
    retval = true;
    $('#firstname').css('background-color', '#fff');
    $('#lastname').css('background-color', '#fff');
    $('#persno').css('background-color', '#fff');
    $('#phone').css('background-color', '#fff');
    $('#email').css('background-color', '#fff');
    $('#street').css('background-color', '#fff');
    $('#postalno').css('background-color', '#fff');
    $('#city').css('background-color', '#fff');
    $('#ostreet').css('background-color', '#fff');
    $('#opostalno').css('background-color', '#fff');
    $('#ocity').css('background-color', '#fff');
    $('#netid').css('background-color', '#fff');
    $('#facilityid').css('background-color', '#fff');
    $('#supplier').css('background-color', '#fff');
    $('#agreedlabel').css('background-color', '#fff');
    $('#chooseDeal').css('background-color', '#fff');
    $('#newCustomer').css('background-color', '#fff');
    $('#customno').css('background-color', '#fff');

    if ($('#agreed:checked').val() == null) {
        $('#agreedlabel').css('background-color', '#ffe5e5');
        //alert('agreed');
        retval = false;
    }
    if ($('#deal1:checked').val() == null && $('#deal2:checked').val() == null) {
        $('#chooseDeal').css('background-color', '#ffe5e5');
        //alert('choosedeal');
        retval = false;
    }
    if ($('#deal1:checked').val() != null && ($('#auth1:checked').val() == null && $('#auth2:checked').val() == null)) {
        $('#newCustomer').css('background-color', '#ffe5e5');
        //alert('newcustomer');
        retval = false;
    }
    if ($('#deal2:checked').val() != null && $('#customno').val() == '') {
        $('#customno').css('background-color', '#ffe5e5');
        retval = false;
        //alert('customno');
    }
    if ($('#firstname').val() == '') {
        $('#firstname').css('background-color', '#ffe5e5');
        //alert('firstname');
        retval = false;
    }
    if ($('#lastname').val() == '') {
        $('#lastname').css('background-color', '#ffe5e5');
        //alert('lastname');
        retval = false;
    }
    if ($('#persno').val() == '') {
        $('#persno').css('background-color', '#ffe5e5');
        //alert('persno');
        retval = false;
    }
    if ($('#phone').val() == '') {
        $('#phone').css('background-color', '#ffe5e5');
        //alert('phone');
        retval = false;
    }
    if ($('#email').val() == '' || !validateEmail($('#email').val())) {
        $('#email').css('background-color', '#ffe5e5');
        //alert('email');
        retval = false;
    }
    if ($('#street').val() == '') {
        $('#street').css('background-color', '#ffe5e5');
        //alert('street');
        retval = false;
    }
    if ($('#postalno').val() == '') {
        $('#postalno').css('background-color', '#ffe5e5');
        //alert('postalno');
        retval = false;
    }
    if ($('#city').val() == '') {
        $('#city').css('background-color', '#ffe5e5');
        //alert('city');
        retval = false;
    }
    if ($('#otheraddress_tbl').css('display') == 'block') {
        if ($('#ostreet').val() == '') {
            $('#ostreet').css('background-color', '#ffe5e5');
            //alert('ostreet');
            retval = false;
        }
        if ($('#opostalno').val() == '') {
            $('#opostalno').css('background-color', '#ffe5e5');
            //alert('opostalno');
            retval = false;
        }
        if ($('#ocity').val() == '') {
            //alert('ocity');
            $('#ocity').css('background-color', '#ffe5e5');
            retval = false;
        }
    }
    if ($('#netid').val() == '' && ($('#auth2:checked').val() || $('#deal2:checked').val())) {
        $('#netid').css('background-color', '#ffe5e5');
        //alert('netid');
        retval = false;
    }
    if ($('#facilityid').val() == '' && ($('#auth2:checked').val() || $('#deal2:checked').val())) {
        $('#facilityid').css('background-color', '#ffe5e5');
        //alert('facilityid');
        retval = false;
    }
    if ($('#supplier').val() == '' && ($('#auth1:checked').val() && $('#deal1:checked').val())) {
        $('#supplier').css('background-color', '#ffe5e5');
        //alert('supplier');
        retval = false;
    }

    if (retval == true) {
        $('#sendorder').click(function() { $(this).attr('disabled', 'disabled'); $(this).attr('src', '_includes/images/sendbuttonGrey.jpg'); });
    }
    else
        $('#error').css('display', 'block');
    
    return retval;
}
function validateEmail(elementValue) {
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    return emailPattern.test(elementValue);
}

var tillvalSumma = 0;
var tillvalText = '--';

var fast_elpris_6_man_medel = 0;
var fast_elpris_1_ar_medel = 0;
var fast_elpris_3_ar_medel = 0;
var rorligt_elpris_medel = 0;

var fast_elpris_6_man_moms = 0;
var fast_elpris_1_ar_moms = 0;
var fast_elpris_3_ar_moms = 0;
var rorligt_elpris_moms = 0;


var fast_elpris_6_man_summa = 0;
var fast_elpris_1_ar_summa = 0;
var fast_elpris_3_ar_summa = 0;
var rorligt_elpris_summa = 0;

var tillval = '';
var statsText = '';

var arsforbrukning = 2000;

var swapValue = [];
var swapColor = [];

google.load("jquery", "1.3.2");
google.load("swfobject", "2.2");
google.setOnLoadCallback(function() {
    //$("#countForm")[0].reset();
    var flashvars = { xmlURL: '_includes/xml/text.xml&pageType=product' };
    var params = { allowScriptAccess: 'always' };
    var attributes = {};
    swfobject.embedSWF("_includes/swf/forsaljning_560x180.swf", "flashContent", "750", "178", "8.0.0", "_includes/swf/expressInstall.swf", flashvars, params, attributes);

    //Load masked input support
    $.getScript('_includes/js/jQuery/jquery.maskedinput-1.2.2.min.js');

    //Load png support for crapy IE6
    $.getScript('_includes/js/jQuery/jquery.pngFix.js', function() {
        $('.pngFix').pngFix();
        $('table.pngFix').css('visibility', 'visible');
        $('.graphToggles :checkbox').each(toggleGraph);
    });

    $("table.prices tr.even").hover(
	   function() {
	       $(this).addClass("hover");
	   },
	   function() {
	       $(this).removeClass("hover");
	   }
	  )


    //When clicking checkboxes in graph module, call toggleGraph
    $('.graphToggles :checkbox').click(toggleGraph);

    //When clicking + in table comparing module, call toggleExpand
    $('.toggleExpand').click(toggleExpand);

    //Toggle help text in input

    $(".swap-value").each(function(i) {
        swapValue[i] = $(this).val();
        swapColor[i] = $(this).css('color');
        $(this).focus(function() {
            if ($(this).val() == swapValue[i]) {
                $(this).val("");
                $(this).css("color", '#000000');

                $(this).mask("999999", { placeholder: "" });
                $(this).attr("maxlength", "6");
            }
            $(this).addClass("focus");
        }).blur(function() {
            $(this).unmask();
            if ($.trim($(this).val()) == "") {
                $(this).attr("maxlength", "100");
                $(this).css("color", swapColor[i]);
                $(this).val(swapValue[i]);
                $(this).removeClass("focus");
            }
        });
    });

    $(".showEnergy input[name=ownKwh]").bind("change keyup", function(e) {
        if ($(".showEnergy select option[value='-']").length == 0) {
            $(".showEnergy select").prepend($("<option></option>").attr("value", "-").text("-")).val('-');
        }
    });


    //count and display button
    $(".showEnergy .countAndShow").click(function() {
        reCalculate();
        return false;
    });
    //count and display button
    $(".showEnergy .countAndShow").click(function() {
        reCalculate();
    });

    $("#countForm").change(function() {
        reCalculate();
        return false;
    });



    //default kwh change
    $(".showEnergy select").change(function() {

        $(".showEnergy select option[value='-']").remove();

        arsforbrukning = $(this).val();
        resetSwapValues();
        calculate();
    });

    changeEnergy(energy);
    calculate();


});

function reCalculate() {
    var ownKwh = $(".showEnergy input[name=ownKwh]").val();
    ownKwh = parseInt(ownKwh);
    if (ownKwh >= 0) {
        if (ownKwh > 99999999) {
            $(".showEnergy input[name=ownKwh]").val(99999999);
            ownKwh = 99999999
        }
        arsforbrukning = ownKwh;
        calculate();
    }
}

function resetSwapValues() {
    $(".swap-value").each(function(i) {
        $(this).attr("maxlength", "100");
        $(".showEnergy input[name=ownKwh]").css("color", swapColor[i]);
        $(this).val(swapValue[i]);
        $(".showEnergy input[name=ownKwh]").removeClass("focus");

    });
}

function resetOptionList() {
    $(".showEnergy select").add('test');
}

function toggleGraph() {
    var targetId = $(this).val();
    if ($(this).is(':checked')) {
        $('#' + targetId).parent().css('visibility', 'visible');

        $(this).next('label').css('color', $('#' + targetId).attr('alt'));
    }
    else {
        $('#' + targetId).parent().css('visibility', 'hidden');
        $(this).next('label').css('color', '#000000');
    }
}

function toggleExpand() {
    var title = $(this).attr('title');

    if (title == 'expand') {
        $(this).addClass('collapse');
        $(this).removeClass('expand');

        $(this).attr('title', 'collapse');
        $(this).closest('tr').addClass('open');
        $(this).closest('tr').next('tr').removeClass('infoClosed').addClass('infoOpen');
    }
    else {
        $(this).removeClass('collapse');
        $(this).addClass('expand');
        $(this).attr('title', 'expand');
        $(this).closest('tr').removeClass('open');
        $(this).closest('tr').next('tr').removeClass('infoOpen').addClass('infoClosed');
    }
    return false;
}




function calculate() { //vind, vatten, karn
    if (tillval == 'vind') {
        tillvalSumma = miljopaslag_vind;
        tillvalText = 'Vindel';
        statsText = 'Vind';
        $('#source').val('2');
    }
    else if (tillval == 'vatten') {
        tillvalSumma = miljopaslag_vatten;
        tillvalText = 'Vattenel';
        statsText = 'Vatten';
        $('#source').val('1');
    }
    else if (tillval == 'karn') {
        tillvalSumma = miljopaslag_karn;
        tillvalText = 'Kärnkraft';
        statsText = 'Kärnkraft';
        $('#source').val('3');
    }

    fast_elpris_6_man_moms = (fast_elpris_6_man + energiskatt) * 0.25;
    fast_elpris_1_ar_moms = (fast_elpris_1_ar + energiskatt) * 0.25;
    fast_elpris_3_ar_moms = (fast_elpris_3_ar + energiskatt) * 0.25;
    rorligt_elpris_moms = (rorligt_elpris + energiskatt) * 0.25;

    fast_elpris_6_man_summa = fast_elpris_6_man + energiskatt + fast_elpris_6_man_moms + tillvalSumma;
    fast_elpris_1_ar_summa = fast_elpris_1_ar + energiskatt + fast_elpris_1_ar_moms + tillvalSumma;
    fast_elpris_3_ar_summa = fast_elpris_3_ar + energiskatt + fast_elpris_3_ar_moms + tillvalSumma;
    rorligt_elpris_summa = rorligt_elpris + energiskatt + rorligt_elpris_moms + tillvalSumma;


    fast_elpris_6_man_medel = (fast_elpris_6_man_summa) * arsforbrukning * 0.01 / 12;
    fast_elpris_1_ar_medel = (fast_elpris_1_ar_summa) * arsforbrukning * 0.01 / 12;
    fast_elpris_3_ar_medel = (fast_elpris_3_ar_summa) * arsforbrukning * 0.01 / 12;
    rorligt_elpris_medel = (rorligt_elpris_summa) * arsforbrukning * 0.01 / 12;

    $('.fast_elpris_6_man_inkl').html(format(fast_elpris_6_man_inkl + tillvalSumma));
    $('.fast_elpris_1_ar_inkl').html(format(fast_elpris_1_ar_inkl + tillvalSumma));
    $('.fast_elpris_3_ar_inkl').html(format(fast_elpris_3_ar_inkl + tillvalSumma));
    $('.rorligt_elpris_inkl').html(format(rorligt_elpris_inkl + tillvalSumma));

    $('.fast_elpris_6_man_medel').html(format(fast_elpris_6_man_medel));
    $('.fast_elpris_1_ar_medel').html(format(fast_elpris_1_ar_medel));
    $('.fast_elpris_3_ar_medel').html(format(fast_elpris_3_ar_medel));
    $('.rorligt_elpris_medel').html(format(rorligt_elpris_medel));

    $('.6man').next('tr').find('.fast_elpris').html(format(fast_elpris_6_man));
    $('.1ar').next('tr').find('.fast_elpris').html(format(fast_elpris_1_ar));
    $('.3ar').next('tr').find('.fast_elpris').html(format(fast_elpris_3_ar));
    $('.rorlig').next('tr').find('.fast_elpris').html(format(rorligt_elpris));

    $('.6man').next('tr').find('.energiskatt').html(format(energiskatt));
    $('.1ar').next('tr').find('.energiskatt').html(format(energiskatt));
    $('.3ar').next('tr').find('.energiskatt').html(format(energiskatt));
    $('.rorlig').next('tr').find('.energiskatt').html(format(energiskatt));

    $('.6man').next('tr').find('.moms').html(format(fast_elpris_6_man_moms));
    $('.1ar').next('tr').find('.moms').html(format(fast_elpris_1_ar_moms));
    $('.3ar').next('tr').find('.moms').html(format(fast_elpris_3_ar_moms));
    $('.rorlig').next('tr').find('.moms').html(format(rorligt_elpris_moms));


    $('.6man').next('tr').find('.elpris_moms').html(format(fast_elpris_6_man_summa));
    $('.1ar').next('tr').find('.elpris_moms').html(format(fast_elpris_1_ar_summa));
    $('.3ar').next('tr').find('.elpris_moms').html(format(fast_elpris_3_ar_summa));
    $('.rorlig').next('tr').find('.elpris_moms').html(format(rorligt_elpris_summa));


    $('.rorlig').next('tr').find('.termOne').html(" (<sup>1</sup>)");


    $('.tillvalText').html(tillvalText);
    $('.tillvalSumma').html(format(tillvalSumma));
}

function format(number) {
    number = Math.round(number * 100) / 100;
    number = '' + number;
    parts = number.split('.');

    if (parts[1] == undefined) {
        number = parts[0] + ',00';
    }
    else if (parts[1].length == 1) {
        number = parts[0] + ',' + parts[1] + '0';
    }
    else {
        number = parts[0] + ',' + parts[1];
    }

    return number;
}



function changeEnergy(resource) {
    if (resource == 0) {
        tillval = 'vatten';
        statsText = 'Vatten';
    }
    else if (resource == 1) {
        tillval = 'vind';
        statsText = 'Vind';
    }
    else if (resource == 2) {
        tillval = 'karn';
        statsText = 'Kärnkraft';
    }
    calculate();
}