var locale = '';
function getLocale() {
    return locale;
}
function setLocale(param) {
    locale = param;
}

function forceDefaultValue(id, text, defaultValue) {
    if (text.substring(0, defaultValue.length) != defaultValue && text.length < 17) {
        jQuery('#' + id).attr('value', defaultValue.concat(text));
    }
}

function checkIsEan(text, tag) {
    if (isEan(text)) {
        jQuery('#' + tag).hide();
    } else {
        jQuery('#' + tag).show();
    }
}

function isEan(text) {
    var impairrangsum;
    var pairrangsum;
    var i = 0;

    pairrangsum = 0;
    impairrangsum = 0;
    for (i = 0; i < (text.length - 1); i += 2) {
        impairrangsum += text.charAt(i);
        pairrangsum += text.charAt(i + 1);
    }
    return (3 * impairrangsum + pairrangsum) % 10 == 0;
}

function setProfessional() {
    jQuery('#birthdate').val('');

    var splitted = getLocale().split("_");
    var lang = splitted[0];
    var country = splitted[1];
    jQuery('.set_part').slideUp();
    jQuery('.set_pro').slideDown()
    if (country == 'FR') {
        jQuery('.typelink').attr("href", "http://www.lampiris.fr/" + lang + "/professionnel.php?tarifs");
    } else {
        jQuery('.typelink').attr("href", "http://www.lampiris.be/" + lang + "/professionnel.php?tarifs");
    }
}


function setPersonal() {
    jQuery('#company').val('');
    jQuery('#company_number').val('');

    var splitted = getLocale().split("_");
    var lang = splitted[0];
    var country = splitted[1];
    jQuery('.set_pro').slideUp();
    jQuery('.set_part').slideDown();
    if (country == 'FR') {
        jQuery('.typelink').attr("href", "http://www.lampiris.fr/" + lang + "/particulier.php?tarifs");
    } else {
        jQuery('.typelink').attr("href", "http://www.lampiris.be/" + lang + "/particulier.php?tarifs");
    }
}

function setGas(enabled) {
    setIdontKnowGas();
    if (enabled) {
        jQuery('#compteur_gaz').fadeIn("slow");
        jQuery('.chargingZone').hide();
        jQuery('#contrat_g').fadeIn("slow");
        jQuery('#wantPayGasSpan').show();
    } else {
        jQuery('#compteur_gaz').hide();
        jQuery('#contrat_g').hide();
        jQuery('#wantPayGasSpan').hide();
    }
}

function setElectricity(enabled) {
    setIdontKnow();
    if (enabled) {
        jQuery('#compteur_electrique').fadeIn("slow");
        jQuery('#contrat_e').fadeIn("slow");
        jQuery('#wantPayEletricitySpan').show();
    } else {
        jQuery('#compteur_electrique').hide();
        jQuery('#contrat_e').hide();
        jQuery('#wantPayEletricitySpan').hide();
    }
}

function setInvoice() {
    jQuery("#commonExport").appendTo("#invoice");
    jQuery('#invoice').slideDown();
    jQuery('#consumption').slideUp();
    jQuery('#index').slideUp();
    jQuery('#move').slideUp();
    jQuery('#accesspoint').slideUp();
}

function setConsumption() {
    jQuery("#commonExport").appendTo("#consumption");
    jQuery('#invoice').slideUp();
    jQuery('#consumption').slideDown();
    jQuery('#index').slideUp();
    jQuery('#move').slideUp();
    jQuery('#accesspoint').slideUp();
}
function setIndex() {
    jQuery("#commonExport").appendTo("#index");
    jQuery('#invoice').slideUp();
    jQuery('#consumption').slideUp();
    jQuery('#index').slideDown();
    jQuery('#move').slideUp();
    jQuery('#accesspoint').slideUp();
}

function setMove() {
    jQuery("#commonExport").appendTo("#move");
    jQuery('#invoice').slideUp();
    jQuery('#consumption').slideUp();
    jQuery('#index').slideUp();
    jQuery('#move').slideDown();
    jQuery('#accesspoint').slideUp();
}

function setAccesspoint() {
    jQuery("#commonExport").appendTo("#accesspoint");
    jQuery('#invoice').slideUp();
    jQuery('#consumption').slideUp();
    jQuery('#index').slideUp();
    jQuery('#move').slideUp();
    jQuery('#accesspoint').slideDown();
}

function setChangeCurrentProvider() {
    jQuery('#raccordementChoix1').slideDown();
    jQuery('#raccordementChoix2').slideUp();
    jQuery('#raccordementChoix3').slideUp();
    jQuery("#consumptionElectricity").appendTo("#raccordementChoix1");
    jQuery('#consumptionElectricity').fadeIn('slow');
}

function setMoving() {
    jQuery('#raccordementChoix2').slideDown();
    jQuery('#raccordementChoix1').slideUp();
    jQuery('#raccordementChoix3').slideUp();
    jQuery("#consumptionElectricity").appendTo("#raccordementChoix2");
    jQuery('#consumptionElectricity').fadeIn('slow');
}

function setNewBindingOrOpenClosedMeter() {
    jQuery('#raccordementChoix3').slideDown();
    jQuery('#raccordementChoix1').slideUp();
    jQuery('#raccordementChoix2').slideUp();
    jQuery("#consumptionElectricity").appendTo("#raccordementChoix3");
    jQuery('#consumptionElectricity').fadeIn('slow');
}

function setIdontKnow() {
    jQuery('#raccordementChoix3').slideUp();
    jQuery('#raccordementChoix1').slideUp();
    jQuery('#raccordementChoix2').slideUp();
    jQuery('#consumptionElectricity').hide();
    jQuery('#yourConsumptionSeemsTooLargeMono').hide();
    jQuery('#yourConsumptionSeemsTooLargeFull').hide();
    jQuery('#yourConsumptionSeemsTooLargeEmpty').hide();
    jQuery('#yourConsumptionSeemsTooLargeNightOnly').hide();
}

function setChangeCurrentProviderGas() {
    jQuery('#gazRaccordementChoix1').slideDown();
    jQuery('#gazRaccordementChoix2').slideUp();
    jQuery('#gazRaccordementChoix3').slideUp();
    jQuery("#consumptionGas").appendTo("#gazRaccordementChoix1");
    jQuery('#consumptionGas').fadeIn('slow');
}

function setMovingGas() {
    jQuery('#gazRaccordementChoix2').slideDown();
    jQuery('#gazRaccordementChoix1').slideUp();
    jQuery('#gazRaccordementChoix3').slideUp();
    jQuery("#consumptionGas").appendTo("#gazRaccordementChoix2");
    jQuery('#consumptionGas').fadeIn('slow');
}

function setNewBindingOrOpenClosedMeterGas() {
    jQuery('#gazRaccordementChoix3').slideDown();
    jQuery('#gazRaccordementChoix1').slideUp();
    jQuery('#gazRaccordementChoix2').slideUp();
    jQuery("#consumptionGas").appendTo("#gazRaccordementChoix3");
    jQuery('#consumptionGas').fadeIn('slow');
}

function setIdontKnowGas() {
    jQuery('#gazRaccordementChoix3').slideUp();
    jQuery('#gazRaccordementChoix1').slideUp();
    jQuery('#gazRaccordementChoix2').slideUp();
    jQuery('#consumptionGas').hide();
    jQuery('#yourConsumptionSeemsTooLargeGas').hide();
}

function setChangeCurrentProviderGasFr() {
    setIdontKnowGasFr();
    jQuery('#gasConnection-CHANGE').slideDown();
}

function setMovingGasFr() {
    setIdontKnowGasFr();
    jQuery('#gasConnection-MOVE').slideDown();
}

function setNewBindingOrOpenClosedMeterGasFr() {
    setIdontKnowGasFr();
    jQuery('#gasConnection-NEW').slideDown();
}

function setIdontKnowGasFr() {
    jQuery('#gasConnection-CHANGE').hide();
    jQuery('#gasConnection-MOVE').hide();
    jQuery('#gasConnection-NEW').hide();
    jQuery('#yourConsumptionSeemsTooLargeGas').hide();
}

function setChangeCurrentProviderElectricityFr() {
    setIdontKnowElectricityFr();
    jQuery('#electricityConnection-CHANGE').slideDown();
}

function setMovingElectricityFr() {
    setIdontKnowElectricityFr();
    jQuery('#electricityConnection-MOVE').slideDown();
}

function setNewBindingOrOpenClosedMeterElectricityFr() {
    setIdontKnowElectricityFr();
    jQuery('#electricityConnection-NEW').slideDown();
}

function setIdontKnowElectricityFr() {
    jQuery('#electricityConnection-CHANGE').hide();
    jQuery('#electricityConnection-MOVE').hide();
    jQuery('#electricityConnection-NEW').hide();
    jQuery('#yourConsumptionSeemsTooLargeGas').hide();
}

function setMeterType(element) {
    if (element[0].selected) {
        jQuery('.biConsumptionElectricity').hide();
        jQuery('.consumptionEstimationElectricity').fadeIn('slow');
        jQuery('.monoConsumptionElectricity').fadeIn('slow');
    } else if (element[1].selected) {
        jQuery('.monoConsumptionElectricity').hide();
        jQuery('.consumptionEstimationElectricity').fadeIn('slow');
        jQuery('.biConsumptionElectricity').fadeIn('slow');
    } else {
        jQuery('.monoConsumptionElectricity').hide();
        jQuery('.biConsumptionElectricity').hide();
    }
}

function setMeterTypeFr(element) {
    if (element[0].selected) {
        jQuery('.monoConsumptionElectricity').hide();
        jQuery('.biConsumptionElectricity').hide();
    } else if (element[1].selected) {
        jQuery('.biConsumptionElectricity').hide();
        jQuery('.consumptionEstimationElectricity').fadeIn('slow');
        jQuery('.monoConsumptionElectricity').fadeIn('slow');
    } else {
        jQuery('.consumptionEstimationElectricity').fadeIn('slow');
        jQuery('.biConsumptionElectricity').fadeIn('slow');
        jQuery('.monoConsumptionElectricity').hide();
    }
}

function setNightOnlyMeterVisible(checked) {
    if (checked) {
        jQuery('.nightOnlyMeter').fadeIn('slow');
        jQuery('.consumptionEstimationElectricity').fadeIn('slow');
    } else {
        jQuery('.nightOnlyMeter').hide();
    }
}

function setDebitPayment() {
    //    jQuery('.creditCard').hide();
    jQuery('.rib').fadeIn('slow');
    jQuery("#bankAccount").appendTo("#directDebit");
    jQuery('#type_domiciliation').slideDown();
    jQuery('#type_virement').slideUp();
}

function setTransferPayment() {
    //    jQuery('.creditCard').hide();
    jQuery('.rib').hide();
    jQuery('#type_virement').slideDown();
    jQuery('#type_domiciliation').slideUp();
    jQuery("#bankAccount").appendTo("#transfer");
}

function setCreditCardPayment() {
    jQuery('.rib').hide();
    jQuery('.creditCard').fadeIn('slow');
}

function setCheckPayment() {
    jQuery('.creditCard').hide();
    jQuery('.rib').hide();
}

function setOneYearMessage(lang) {
    var elec = jQuery('#electricityCheckBox');
    var gas = jQuery('#gasCheckBox');

    if (elec[0].checked && gas[0].checked) {
        jQuery('.bothOneYear').fadeIn('slow');
        jQuery('.gasOneYear').hide();
        jQuery('.electricityOneYear').hide();
    }
    else if (elec[0].checked) {
        jQuery('.electricityOneYear').fadeIn('slow');
        jQuery('.gasOneYear').hide();
        jQuery('.bothOneYear').hide();
    }
    else if (gas[0].checked) {
        jQuery('.gasOneYear').fadeIn('slow');
        jQuery('.bothOneYear').hide();
        jQuery('.electricityOneYear').hide();
    }
    else {
        jQuery('.bothOneYear').hide();
        jQuery('.gasOneYear').hide();
        jQuery('.electricityOneYear').hide();
    }
}

function setChargingZoneVisible(element) {

    var b1 = element[2];
    var b2i = element[3];


    if (b1.selected || b2i.selected) {
        jQuery('#chargingZone').fadeIn('slow');
    }
    else {
        jQuery('#chargingZone').hide();
    }
}

function displayDialog(condition) {
    if (condition) {
        jQuery('#dialog').dialog('open');
    }
}

function setFistCommissioningVisible(check) {
    if (check) {
        jQuery('.phaseType').fadeIn('slow');
    }
    else {
        jQuery('.phaseType').hide();
    }
}

function setDifferentAddress(enabled) {
    if (enabled) {
        jQuery('.differentAddress').fadeIn('slow');
    }
    else {
        jQuery('.differentAddress').hide();
    }
}
function setFastDelivery(enabled) {
    if (enabled) {
        document.getElementById('person.contracts[0].accessPoint.fastDelivery1').checked = true;
    }
}

function isMaxLength(object, length) {
    if (object.value.length > length)
        object.value = object.value.substring(0, length);
}

function IDontAcceptDirectDebit() {
    jQuery('input:checkbox[id=acceptDirectDebit]').attr('checked', false);
}

function showMailField(enabled) {
    if (enabled) {
        jQuery('.showMailField').fadeIn('slow');
    } else {
        jQuery('.showMailField').hide();
    }
}

function companyLiable(enabled) {
    if (enabled) {
        jQuery('#vat').val(jQuery('#code').val());
        jQuery('.liable').fadeIn('slow');
    } else {
        jQuery('#vat').val('');
        jQuery('.liable').hide();
    }
}

function setClientNumberVisible(enabled) {
    if (enabled) {
        jQuery('#NumCli').fadeIn("slow");
    } else {
        jQuery('#NumCli').hide();
    }
}

function showInvoiceSendingMethodField(value) {
    jQuery('.showTypeFacturationFieldZoomit').hide();
    jQuery('.showTypeFacturationFieldMail').hide();
    if (value == "ZOOMIT") {
        jQuery('.showTypeFacturationFieldZoomit').fadeIn("slow");
    } else if (value == "EMAIL") {
        jQuery('.showTypeFacturationFieldMail').fadeIn("slow");
    }
}

jQuery(document).ready(
    function() {
        mail = "";
//TODO        mail = "webmail@domain.com, email@lampiris.be, ...";
        if (jQuery("#textAreaMails").text() == "") {
            jQuery("#textAreaMails").val(mail);
        }
        jQuery("#textAreaMails").focus(
            function() {
                if (this.value == mail) {
                    this.value = "";
                }
            }
        );
        jQuery("#textAreaMails").blur(
            function() {
                if (this.value == "") {
                    this.value = mail;
                }
            }
        );
//        jQuery("#submitMailsButton").click(
//            function() {
//                if (jQuery("#textAreaMails").text() == mail) {
//                    jQuery("#textAreaMails").val("");
//                }
//            }
//        )
    }
);

