/**
 *
 *
 * Modal position fix.
 * add custom class if modal height is bigger than window.
 */
mgEventHandler.on('ModalLoaded', null,function(){
    $('.lu-modal__dialog').width('800');
// colorize only in the infoModal
    if($('[index="infoModal"]' ).length){
        var mxactive = $('input[name="mxactive"]');
        var mxthurdata = $('input[name="mxthurdata"]');
        var maildomain = $('input[name="infomaildomain"]');
        $("#infoalertmaildomain").text(maildomain.val());
        if(mxactive.val().includes(mxthurdata.val())){
            if(mxthurdata.val() == mxactive.val()){
                mxactive.addClass('lu-alert--success lu-alert--outline');
                $('.modal-alert-top').addClass('lu-alert--success');
                $("#infomessage").text('Der MX Record ist korrekt gesetzt &#9989;');
                $("#infoheader").text('Ihre DNS Einstellungen sind korrekt &#9989;');
                $("#infofooter").text('Alle DNS Einträge entsprechen den Vorgaben');
            }else{
                mxactive.addClass('lu-alert--warning lu-alert--outline');
                $('.modal-alert-top').addClass('lu-alert--warning');
                $("#infomessage").text('Es sind mehrere MX Server definiert !');
                $("#infoheader").text('Sie können die MX Prioritäten im DNS Manger ändern.');
                $("#infofooter").text('Sonstige DNS Einträge entsprechen den Vorgaben');
            }
        }else{
            mxactive.addClass('lu-alert--danger lu-alert--outline');
            $('.modal-alert-top').addClass('lu-alert--danger');
            $("#infomessage").text('Der MX Record ist falsch oder fehlt, Mailempfang nicht möglich &#10069;');
            $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft &#10069;');
            $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
        }
        var spf = $('input[name="spf"]');
        var spfthurdata = $('input[name="spfthurdata"]');
        if(spfthurdata.val() == spf.val()){
            spf.addClass('lu-alert--success lu-alert--outline');
            $("#infomessage").append('<br>Der SPF Eintrag ist korrekt gesetzt &#9989;');
        }else{
            spf.addClass('lu-alert--warning lu-alert--outline');
            $('.modal-alert-top').addClass('lu-alert--warning');
            $("#infomessage").append('<br>Der SPF Eintrag ist falsch oder fehlt, Probleme beim Mailsversand möglich &#10069;');
            $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft &#10069;');
            $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
       }
        var dmarc = $('input[name="dmarc"]');
        var dmarcthurdata = $('input[name="dmarcthurdata"]');
        if(dmarcthurdata.val() == dmarc.val()){
            dmarc.addClass('lu-alert--success lu-alert--outline');
            $("#infomessage").append('<br>Der DMACR Eintrag ist korrekt gesetzt &#9989;');
        }else{
            dmarc.addClass('lu-alert--warning lu-alert--outline');
            $('.modal-alert-top').addClass('lu-alert--warning');
            $("#infomessage").append('<br>Der DMARC Eintrag ist falsch oder fehlt, Probleme beim Mailsversand möglich &#10069;');
            $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft &#10069;');
            $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
        }
        var dkim = $('input[name="dkim"]');
        var dkimthurdata = $('input[name="dkimthurdata"]');
        if(dkim.val().includes(dkimthurdata.val())){
            if(dkimthurdata.val() == dkim.val()){
                dkim.addClass('lu-alert--success lu-alert--outline');
                $("#infomessage").append('<br>Der DKIM Eintrag ist korrekt gesetzt &#9989;');
            }else{
                dkim.addClass('lu-alert--warning lu-alert--outline');
                $('.modal-alert-top').addClass('lu-alert--warning');
                $("#infomessage").append('<br>Es sind mehrere Domain Keys für den gleichen Selektor definiert !');
            }
        }else{
            dkim.addClass('lu-alert--warning lu-alert--outline');
            $('.modal-alert-top').addClass('lu-alert--warning');
            $("#infomessage").append('<br>Der DKIM Eintrag ist falsch oder fehlt, Probleme beim Mailsversand möglich &#10069;');
            $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft &#10069;');
            $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
        }
        $('input[name$="thurdata"],input[name="dkimname"]').attr('title', 'Click to Copy!');
        $('input[name$="thurdata"],input[name="dkimname"]').click(function() {
            var textToCopy = $(this).val();
            var tempTextarea = $("<textarea>");
            $("body").append(tempTextarea);
            tempTextarea.val(textToCopy).select();
            document.execCommand("copy");
            tempTextarea.remove();
            $(this).val('Wert in die Zwischenablage kopiert');
            $(this).css("background-color","#e9ebf0");
            setTimeout(restoreVal, 1000, [this, textToCopy]);
        });
        if($('input[name="dnsok"]').val() != 'success'){
            if($('input[name="selfdns"]').val() > 0){
                $("#infofooter").append('<br>Nutzen Sie dafür die Edit Funktion!');
                $("#transferDomain").addClass('hidden');
            }else{
                $("#infofooter").append('<br>Tragen Sie die vorgegebenen Werte bei Ihrem Domain Registrar ein oder transferieren Sie Ihre Domain zu ThurData');
                $("#transferDomain").click(function(){
                    document.location.href = 'cart.php?a=add&domain=transfer&sld=' + maildomain.val();
                });
            }
        } else {
            $("#transferDomain").addClass('hidden');
        }
    }
// end infoModal
// begin editSettingModal
    if($('[index="editSettingModal"]' ).length){
        var mxthurdata = $('input[name="editmxthurdata"]');
        var spfthurdata = $('input[name="editspfthurdata"]');
        var dmarcthurdata = $('input[name="editdmarcthurdata"]');
        var dkimthurdata = $('input[name="editdkimthurdata"]');
        var dkimname = $('input[name="dkimname"]');
        var maildomain = $('input[name="editmaildomain"]');
        var editmxactive = $('input[name="editmxactive"]');
        var editspf = $('input[name="editspf"]');
        var editdmarc = $('input[name="editdmarc"]');
        var editdkim = $('input[name="editdkim"]');
        var origmxactive = editmxactive.val();
        var origspf = editspf.val();
        var origdmarc = editdmarc.val();
        var origdkim = editdkim.val();

        $("#editalertmaildomain").text(maildomain.val());
        editmxactive.prev().text('MX Eintrag (ThurData Vorgabe &rArr; ' + mxthurdata.val() + ' )');
        editspf.prev().text('SPF Eintrag (ThurData Vorgabe &rArr; ' + spfthurdata.val() + ' )');
        editdmarc.prev().text('DMARC Eintrag (ThurData Vorgabe &rArr; ' + dmarcthurdata.val() + ' )');
        editdkim.prev()
            .text('DKIM (' + dkimname.val() +') Eintrag (ThurData Vorgabe &rArr; ' + dkimthurdata.val() + ' )')
            .css('width', '90%')
            .css('overflow', 'hidden')
            .css('white-space' , 'nowrap');
        $('[name="setDefaults"]').change(function() {
            if ($(this).is(':checked')) {
                editmxactive.val(mxthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
                editspf.val(spfthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
                editdmarc.val(dmarcthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
                editdkim.val(dkimthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
            } else {
                editmxactive.val(origmxactive).prop("readonly", false).css("background-color","");
                editspf.val(origspf).prop("readonly", false).css("background-color","");
                editdmarc.val(origdmarc).prop("readonly", false).css("background-color","");
                editdkim.val(origdkim).prop("readonly", false).css("background-color","");
            }
        });
        $("#infofooter").text('Achtung, falsche DNS Einträge beeiträchtigen Mailempfang und Versand!');
    }
// end editSettingModal
});
function inArray(needle, haystack) {
    var length = haystack.length;
    for (var i = 0; i < length; i++) {
        if (haystack[i] === needle) return true;
    }
    return false;
}
function restoreVal([element,value]) {
    $(element).val(value);
    $(element).css("background-color","");
}
