index.js 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. /**
  2. *
  3. *
  4. * Modal position fix.
  5. * add custom class if modal height is bigger than window.
  6. */
  7. mgEventHandler.on('ModalLoaded', null,function(){
  8. $('.lu-modal__dialog').width('800');
  9. // colorize only in the infoModal
  10. if($('[index="infoModal"]' ).length){
  11. var mxactive = $('input[name="mxactive"]');
  12. var mxthurdata = $('input[name="mxthurdata"]');
  13. var maildomain = $('input[name="infomaildomain"]');
  14. $("#infoalertmaildomain").text(maildomain.val());
  15. if(mxactive.val().includes(mxthurdata.val())){
  16. if(mxthurdata.val() == mxactive.val()){
  17. mxactive.addClass('lu-alert--success lu-alert--outline');
  18. $('.modal-alert-top').addClass('lu-alert--success');
  19. $("#infomessage").text('Der MX Record ist korrekt gesetzt ✅');
  20. $("#infoheader").text('Ihre DNS Einstellungen sind korrekt ✅');
  21. $("#infofooter").text('Alle DNS Einträge entsprechen den Vorgaben');
  22. }else{
  23. mxactive.addClass('lu-alert--warning lu-alert--outline');
  24. $('.modal-alert-top').addClass('lu-alert--warning');
  25. $("#infomessage").text('Es sind mehrere MX Server definiert !');
  26. $("#infoheader").text('Sie können die MX Prioritäten im DNS Manger ändern.');
  27. $("#infofooter").text('Sonstige DNS Einträge entsprechen den Vorgaben');
  28. }
  29. }else{
  30. mxactive.addClass('lu-alert--danger lu-alert--outline');
  31. $('.modal-alert-top').addClass('lu-alert--danger');
  32. $("#infomessage").text('Der MX Record ist falsch oder fehlt, Mailempfang nicht möglich ❕');
  33. $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft ❕');
  34. $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
  35. }
  36. var spf = $('input[name="spf"]');
  37. var spfthurdata = $('input[name="spfthurdata"]');
  38. if(spfthurdata.val() == spf.val()){
  39. spf.addClass('lu-alert--success lu-alert--outline');
  40. $("#infomessage").append('<br>Der SPF Eintrag ist korrekt gesetzt &#9989;');
  41. }else{
  42. spf.addClass('lu-alert--warning lu-alert--outline');
  43. $('.modal-alert-top').addClass('lu-alert--warning');
  44. $("#infomessage").append('<br>Der SPF Eintrag ist falsch oder fehlt, Probleme beim Mailsversand möglich &#10069;');
  45. $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft &#10069;');
  46. $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
  47. }
  48. var dmarc = $('input[name="dmarc"]');
  49. var dmarcthurdata = $('input[name="dmarcthurdata"]');
  50. if(dmarcthurdata.val() == dmarc.val()){
  51. dmarc.addClass('lu-alert--success lu-alert--outline');
  52. $("#infomessage").append('<br>Der DMACR Eintrag ist korrekt gesetzt &#9989;');
  53. }else{
  54. dmarc.addClass('lu-alert--warning lu-alert--outline');
  55. $('.modal-alert-top').addClass('lu-alert--warning');
  56. $("#infomessage").append('<br>Der DMARC Eintrag ist falsch oder fehlt, Probleme beim Mailsversand möglich &#10069;');
  57. $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft &#10069;');
  58. $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
  59. }
  60. var dkim = $('input[name="dkim"]');
  61. var dkimthurdata = $('input[name="dkimthurdata"]');
  62. if(dkim.val().includes(dkimthurdata.val())){
  63. if(dkimthurdata.val() == dkim.val()){
  64. dkim.addClass('lu-alert--success lu-alert--outline');
  65. $("#infomessage").append('<br>Der DKIM Eintrag ist korrekt gesetzt &#9989;');
  66. }else{
  67. dkim.addClass('lu-alert--warning lu-alert--outline');
  68. $('.modal-alert-top').addClass('lu-alert--warning');
  69. $("#infomessage").append('<br>Es sind mehrere Domain Keys für den gleichen Selektor definiert !');
  70. }
  71. }else{
  72. dkim.addClass('lu-alert--warning lu-alert--outline');
  73. $('.modal-alert-top').addClass('lu-alert--warning');
  74. $("#infomessage").append('<br>Der DKIM Eintrag ist falsch oder fehlt, Probleme beim Mailsversand möglich &#10069;');
  75. $("#infoheader").text('Ihre DNS Einstellungen sind fehlerhaft &#10069;');
  76. $("#infofooter").text('Bitte vergleichen und korrigieren Sie falsche oder fehlende Einträge!');
  77. }
  78. $('input[name$="thurdata"],input[name="dkimname"]').attr('title', 'Click to Copy!');
  79. $('input[name$="thurdata"],input[name="dkimname"]').click(function() {
  80. var textToCopy = $(this).val();
  81. var tempTextarea = $("<textarea>");
  82. $("body").append(tempTextarea);
  83. tempTextarea.val(textToCopy).select();
  84. document.execCommand("copy");
  85. tempTextarea.remove();
  86. $(this).val('Wert in die Zwischenablage kopiert');
  87. $(this).css("background-color","#e9ebf0");
  88. setTimeout(restoreVal, 1000, [this, textToCopy]);
  89. });
  90. if($('input[name="dnsok"]').val() != 'success'){
  91. if($('input[name="selfdns"]').val() > 0){
  92. $("#infofooter").append('<br>Nutzen Sie dafür die Edit Funktion!');
  93. $("#transferDomain").addClass('hidden');
  94. }else{
  95. $("#infofooter").append('<br>Tragen Sie die vorgegebenen Werte bei Ihrem Domain Registrar ein oder transferieren Sie Ihre Domain zu ThurData');
  96. $("#transferDomain").click(function(){
  97. document.location.href = 'cart.php?a=add&domain=transfer&sld=' + maildomain.val();
  98. });
  99. }
  100. } else {
  101. $("#transferDomain").addClass('hidden');
  102. }
  103. }
  104. // end infoModal
  105. // begin editSettingModal
  106. if($('[index="editSettingModal"]' ).length){
  107. var mxthurdata = $('input[name="editmxthurdata"]');
  108. var spfthurdata = $('input[name="editspfthurdata"]');
  109. var dmarcthurdata = $('input[name="editdmarcthurdata"]');
  110. var dkimthurdata = $('input[name="editdkimthurdata"]');
  111. var dkimname = $('input[name="dkimname"]');
  112. var maildomain = $('input[name="editmaildomain"]');
  113. var editmxactive = $('input[name="editmxactive"]');
  114. var editspf = $('input[name="editspf"]');
  115. var editdmarc = $('input[name="editdmarc"]');
  116. var editdkim = $('input[name="editdkim"]');
  117. var origmxactive = editmxactive.val();
  118. var origspf = editspf.val();
  119. var origdmarc = editdmarc.val();
  120. var origdkim = editdkim.val();
  121. $("#editalertmaildomain").text(maildomain.val());
  122. editmxactive.prev().text('MX Eintrag (ThurData Vorgabe &rArr; ' + mxthurdata.val() + ' )');
  123. editspf.prev().text('SPF Eintrag (ThurData Vorgabe &rArr; ' + spfthurdata.val() + ' )');
  124. editdmarc.prev().text('DMARC Eintrag (ThurData Vorgabe &rArr; ' + dmarcthurdata.val() + ' )');
  125. editdkim.prev()
  126. .text('DKIM (' + dkimname.val() +') Eintrag (ThurData Vorgabe &rArr; ' + dkimthurdata.val() + ' )')
  127. .css('width', '90%')
  128. .css('overflow', 'hidden')
  129. .css('white-space' , 'nowrap');
  130. $('[name="setDefaults"]').change(function() {
  131. if ($(this).is(':checked')) {
  132. editmxactive.val(mxthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
  133. editspf.val(spfthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
  134. editdmarc.val(dmarcthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
  135. editdkim.val(dkimthurdata.val()).prop("readonly", true).css("background-color","#dddddd");
  136. } else {
  137. editmxactive.val(origmxactive).prop("readonly", false).css("background-color","");
  138. editspf.val(origspf).prop("readonly", false).css("background-color","");
  139. editdmarc.val(origdmarc).prop("readonly", false).css("background-color","");
  140. editdkim.val(origdkim).prop("readonly", false).css("background-color","");
  141. }
  142. });
  143. $("#infofooter").text('Achtung, falsche DNS Einträge beeiträchtigen Mailempfang und Versand!');
  144. }
  145. // end editSettingModal
  146. });
  147. function inArray(needle, haystack) {
  148. var length = haystack.length;
  149. for (var i = 0; i < length; i++) {
  150. if (haystack[i] === needle) return true;
  151. }
  152. return false;
  153. }
  154. function restoreVal([element,value]) {
  155. $(element).val(value);
  156. $(element).css("background-color","");
  157. }