var EmailMarketingUtils = (function() { var messageFormId = "#email-broadcast-message-form"; var editor = function(formId, fieldId = "#Html") { if ($(formId).length == 0) throw new Error("missing formId"); var language = navigator.language || navigator.userLanguage; var $contentEl = $(`${formId} ${fieldId}`); var editorName = `${formId} #editor`; language = language.split("-")[0]; var editor = new Jodit(editorName, { language: language, "height": 500, //"toolbarAdaptive": false, buttons: 'source,bold,strikethrough,underline,italic,|,|,ul,ol,|,outdent,indent,|,font,fontsize,brush,image,video,link,|,align,undo,redo', buttonsMD: 'source,bold,strikethrough,underline,italic,|,|,ul,ol,|,outdent,indent,|,font,fontsize,brush,image,video,link,|,align,undo,redo,fullsize', buttonsXS: 'source,bold,underline,italic,|,|,ul,ol,|,font,fontsize,brush,image,video,link,align,undo,redo,fullsize', tabIndex: 0, }); $(".jodit-wysiwyg").keydown(function (e) { if (e.which === 9) { e.preventDefault(); let tabEquivalent = "    "; editor.selection.insertHTML(tabEquivalent); } }); editor.value = $contentEl.val(); var editorField = $(editorName); if (editorField.closest('.mb-4').hasClass("has-warning")) { $(formId + " .jodit_workplace").css("border-color", "#f2c94e"); } editorField.change(function () { $contentEl.val($(this).html()); }); }; var setFocusFirstField = function() { $("input:text:first").focus(); }; var onCloseWindow = function(formId) { if ($(formId).length > 0) { window.onbeforeunload = function (e) { e.preventDefault(); return ""; }; } }; var setCopyToClipboard = function () { $('[data-bind=copy-to-clipboard]').on("click", function (ev) { var $el = $(ev.target); var tagName = $el.data('custom-field-tag'); var $temp = $(""); $("body").append($temp); $temp.val(`{{${tagName}}}`).select(); document.execCommand("copy"); $temp.remove(); $el.attr('data-original-title', $el.data("trigger-text")); $el.tooltiper("show"); $el.attr('data-original-title', $el.data("normal-title")); }); }; var setTooltiper = function () { $('[rel="tooltip"]').tooltiper(); }; var feedbackMessage = function(formId) { //if ($(formId + ' #HasValidation').val() == "False") { // !ModelState.IsValid if ($(formId + " #Success").val() == "True") { clearOnbeforeunload(); window.location = "/email-broadcast/"; } else { //$(formId + " .feedback-message").removeClass("hidden-xs-up"); whenError(); } //} }; var whenSuccess = function(formId, btnId) { if ($(formId + ' #Success').val() == "True") { toggleToProcessButton(btnId); } }; var whenError = function() { $(document).scrollTop($(document).height()); }; var clearOnbeforeunload = function() { window.onbeforeunload = null; }; var changeTabContact = function (op) { const firstTab = document.getElementById('first-tab'); const secondTab = document.getElementById('second-tab'); const firstContentTab = document.getElementById('first'); const secondContentTab = document.getElementById('second'); const firstInputTab = document.getElementById('radioCardOutline10'); const secondInputTab = document.getElementById('radioCardOutline20'); if (op === 'first') { firstTab.classList.add("active"); firstTab.ariaExpanded = "true"; secondTab.classList.remove("active"); secondTab.ariaExpanded = ""; firstContentTab.style = "display: block"; secondContentTab.style = "display: none"; firstInputTab.setAttribute('checked', 'true'); secondInputTab.removeAttribute('checked'); } else if (op === 'second') { firstTab.classList.remove("active"); firstTab.ariaExpanded = ""; secondTab.classList.add("active"); secondTab.ariaExpanded = "true"; firstContentTab.style = "display: none"; secondContentTab.style = "display: block"; firstInputTab.removeAttribute('checked'); secondInputTab.setAttribute('checked', 'true'); } } var reloadPage = function() { location.reload(); }; var eventCloseModal = function(modalId){ $(modalId).on('hidden.bs.modal', function (e) { $(modalId).children().remove(); }) } // TODO fix it, put here the expected form ids var getMainFormId = function() { ids = $('form') .map(function() { return $(this).attr('id') }) .filter(function(_, el) { return el !== 'logout-form'; }).get(); return ids[0] } return { editor: editor, setFocusFirstField: setFocusFirstField, onCloseWindow: onCloseWindow, whenSuccess: whenSuccess, clearOnbeforeunload: clearOnbeforeunload, feedbackMessage: feedbackMessage, setCopyToClipboard: setCopyToClipboard, setTooltiper: setTooltiper, changeTabContact: changeTabContact, reloadPage: reloadPage, eventCloseModal: eventCloseModal, getMainFormId: getMainFormId } })();