'use strict'; let styleSection = 'style', contentSection = 'content', viWecEditorArea = '#viwec-email-editor-content', viWecChange = true, viWecFontWeightOptions = [ {id: 300, text: 300}, {id: 400, text: 400}, {id: 500, text: 500}, {id: 600, text: 600}, {id: 700, text: 700}, {id: 800, text: 800}, {id: 900, text: 900} ], viWecAlignmentOptions = [ {value: "left", title: "Left", icon: "dashicons dashicons-editor-alignleft", checked: true,}, {value: "center", title: "Center", icon: "dashicons dashicons-editor-aligncenter", checked: false,}, {value: "right", title: "Right", icon: "dashicons dashicons-editor-alignright", checked: false,} ], viWecFontFamilyOptions = [ {id: "Roboto, RobotoDraft, Helvetica, Arial, sans-serif", text: 'Roboto'}, {id: "'andale mono', monospace", text: 'Andale Mono'}, {id: 'arial, helvetica, sans-serif', text: 'Arial'}, {id: "'arial black', sans-serif", text: 'Arial Black'}, {id: "'book antiqua', palatino, serif", text: 'Book Antiqua'}, {id: "'comic sans ms', sans-serif", text: 'Comic Sans MS'}, {id: "'courier new', courier, monospace", text: 'Courier New'}, {id: 'georgia, palatino, serif', text: 'Georgia'}, {id: 'helvetica, arial, sans-serif', text: 'Helvetica'}, {id: 'impact, sans-serif', text: 'Impact'}, {id: 'symbol', text: 'Symbol'}, {id: 'tahoma, arial, helvetica, sans-serif', text: 'Tahoma'}, {id: 'terminal, monaco, monospace', text: 'Terminal'}, {id: "'times new roman', times, serif", text: 'Times New Roman'}, {id: "'trebuchet ms', geneva, sans-serif", text: 'Trebuchet MS'}, {id: 'verdana, geneva, sans-serif', text: 'Verdana'}, {id: 'webdings', text: 'Webdings'}, {id: "wingdings, 'zapf dingbats'", text: 'Wingdings'}, ], viWecMapObj = viWecParams.shortcode_for_replace; let viWecShortcodeList = viWecParams.shortcode.map((item) => { return {text: item, value: item}; }); if (viWecParams.sc_3rd_party_for_text_editor) { for (let sc in viWecParams.sc_3rd_party_for_text_editor) { viWecShortcodeList.push(viWecParams.sc_3rd_party_for_text_editor[sc]); } } let viWecShortcodeListValue = ''; if (viWecParams.shortcode) { for (let sc of viWecParams.shortcode) { viWecShortcodeListValue += '
  • ' + sc + '
  • ' } } if (viWecParams.sc_3rd_party) { for (let sc of viWecParams.sc_3rd_party) { viWecShortcodeListValue += '
  • ' + sc + '
  • ' } } if (ViWec === undefined) { var ViWec = {}; } (function () { var cache = {}; window.viWecTmpl = function viWecTmpl(str, data) { var fn = /^[-a-zA-Z0-9]+$/.test(str) ? cache[str] = cache[str] || viWecTmpl(document.getElementById(str).innerHTML) : new Function("obj", "var p=[],print=function(){p.push.apply(p,arguments);};" + "with(obj){p.push('" + str.replace(/[\r\t\n]/g, " ") .split("{%").join("\t") .replace(/((^|%})[^\t]*)'/g, "$1\r") .replace(/\t=(.*?)%}/g, "',$1,'") .split("\t").join("');") .split("%}").join("p.push('") .split("\r").join("\\'") + "');}return p.join('');"); // Provide some basic currying to the user return data ? fn(data) : fn; }; })(); jQuery(document).ready(function ($) { window.viWecNoticeBox = (text, color, time = 3000) => { color = color || 'white'; let box = $('#viwec-notice-box'); box.text(text).css({'color': color, 'bottom': 0}); setTimeout(function () { box.css({'bottom': '-50px'}); }, time); }; $.fn.handleRow = function () { if (this.find('.viwec-layout-handle-outer').length === 0) { this.append(viWecTmpl('viwec-input-handle-outer', {})); } this.on('click', '.viwec-delete-row-btn', () => { this.remove(); ViWec.Builder.clearTab(); ViWec.Builder.activeTab('components'); }); this.on('click', '.viwec-duplicate-row-btn', () => { let clone = this.clone(); clone.find('.viwec-column-sortable').columnSortAble(); clone.handleRow().handleColumn(); this.after(clone); }); this.on('click', '.viwec-edit-outer-row-btn', () => { ViWec.Builder.removeFocus(); this.addClass('viwec-block-focus'); ViWec.Builder.selectedEl = this.find('.viwec-layout-row'); ViWec.Builder.loadLayoutControl(); }); this.on('click', '.viwec-copy-row-btn', function () { let row = $(this).closest('.viwec-block'); row = row.prop('outerHTML'); localStorage.setItem('viwecCopyRow', row); viWecNoticeBox('Copied'); }); this.on('click', '.viwec-paste-row-btn', function () { let row = localStorage.getItem('viwecCopyRow'); if (row) { row = $(row); row.find('.viwec-column-sortable').columnSortAble(); row.handleRow().handleColumn(); $(this).closest('.viwec-block').after(row); } }); return this; }; $.fn.handleElement = function () { this.append(`
    `); }; $.fn.columnSortAble = function () { $(this).sortable({ cursor: 'move', cursorAt: {left: 40, top: 18}, placeholder: 'viwec-placeholder', connectWith: ".viwec-column-sortable", thisColumn: '', accept: '.viwec-content-draggable', start: function (ev, ui) { // ui.placeholder.height(30); ui.helper.addClass('viwec-is-dragging'); this.thisColumn = ui.helper.closest('.viwec-column'); }, stop: function (ev, ui) { let style = ui.item.get(0).style; style.position = style.top = style.left = style.right = style.bottom = style.height = style.width = ''; ui.item.removeClass('viwec-is-dragging'); if (ui.item.offsetParent().find('.viwec-element').length) { ui.item.offsetParent().removeClass('viwec-column-placeholder'); } if (!(this.thisColumn.find('.viwec-element').length)) { this.thisColumn.addClass('viwec-column-placeholder'); } ui.item.click(); viWecChange = true; } }); }; $.fn.handleColumn = function () { this.on('click', (e) => { if (this.hasClass('viwec-column-placeholder') || this.find('.viwec-column-placeholder').length) { ViWec.Builder.removeFocus(); ViWec.Builder.selectedEl = this.find('.viwec-column-sortable').addClass('viwec-block-focus'); ViWec.Builder.loadLayoutControl('editColumn'); } }); this.on('click', '.viwec-column-edit', () => { ViWec.Builder.removeFocus(); ViWec.Builder.selectedEl = this.find('.viwec-column-sortable').addClass('viwec-block-focus'); ViWec.Builder.loadLayoutControl('editColumn'); }); this.on('click', '.viwec-column-paste', function () { let item = localStorage.getItem('viwecCopy'); if (item) { item = $(item); $(this).closest('.viwec-column').find('.viwec-column-sortable').append(item); } }); return this; }; ViWec.viWecPreventXSS = (text) => { if (!viWecParams?.DISALLOW_UNFILTERED_HTML){ return text; } let $reg, match; //removing