s.forEach(ctx._eventsCache, function (events, index) {
var target = ctx._eventTargets[index];
utils.forEach(events, function (listeners, type) {
utils.forEach(listeners, function (listener) {
target.removeEventListener(type, listener, false);
}, true);
}, false);
}, true);
ctx._eventTargets = [];
ctx._eventsCache = [];
return ctx;
}
function checkPlaceholder(ctx) {
ctx.config.editor.classList[ctx.isEmpty() ? 'add' : 'remove'](ctx.config.placeholderClass);
}
function trim(str) {
return (str || '').trim().replace(/\u200b/g, '');
}
// node.contains is not implemented in IE10/IE11
function containsNode(parent, child) {
if (parent === child) return true;
child = child.parentNode;
while (child) {
if (child === parent) return true;
child = child.parentNode;
}
return false;
}
function getNode(ctx, byRoot) {
var node,
root = ctx.config.editor;
ctx._range = ctx._range || ctx.getRange();
node = ctx._range.commonAncestorContainer;
// Fix selection detection for Firefox
if (node.hasChildNodes() && ctx._range.startOffset + 1 === ctx._range.endOffset) {
node = node.childNodes[ctx._range.startOffset];
}
if (!node || node === root) return null;
while (node && (node.nodeType !== 1) && (node.parentNode !== root)) node = node.parentNode;
while (node && byRoot && (node.parentNode !== root)) node = node.parentNode;
return containsNode(root, node) ? node : null;
}
function getEffectNodes(ctx) {
return getNodeParents(ctx).filter(function(node) {
return node.nodeName.match(effectNodeReg);
});
}
function getNodeParents(ctx) {
var nodes = [],
el = getNode(ctx);
while (el && el !== ctx.config.editor) {
if (el.nodeType === Node.ELEMENT_NODE) {
nodes.push(el);
}
el = el.parentNode;
}
return nodes;
}
function handleEmptyContent(ctx) {
var range = ctx._range = ctx.getRange();
ctx.config.editor.innerHTML = '';
var p = doc.createElement('p');
p.innerHTML = '
';
range.insertNode(p);
focusNode(ctx, p.childNodes[0], range);
}
function addEmptyCharAtEnd(ctx) {
var range = ctx.getRange(),
emptyCharNode = doc.createTextNode('\u200b');
range.selectNodeContents(ctx.config.editor);
range.collapse(false);
range.insertNode(emptyCharNode);
focusNode(ctx, emptyCharNode, range);
}
function isCaretAtEnd(ctx) {
var range = ctx.getRange(),
clonedRange = range.cloneRange();
clonedRange.selectNodeContents(ctx.config.editor);
clonedRange.setStart(range.endContainer, range.endOffset);
return clonedRange.toString() === '';
}
function isCaretAtStart(ctx) {
var range = ctx.getRange(),
clonedRange = range.cloneRange();
clonedRange.selectNodeContents(ctx.config.editor);
clonedRange.setEnd(range.startContainer, range.startOffset);
return clonedRange.toString() === '';
}
function focusNode(ctx, node, range) {
range.setStartAfter(node);
range.setEndBefore(node);
range.collapse(false);
ctx.setRange(range);
}
function autoLink(node) {
if (node.nodeType === 1) {
if (autoLinkReg.notLink.test(node.tagName)) return;
utils.forEach(node.childNodes, function (child) {
autoLink(child);
}, true);
} else if (node.nodeType === 3) {
var result = urlToLink(node.nodeValue || '');
if (!result.links) return;
var frag = doc.createDocumentFragment(),
div = doc.createElement('div');
div.inne{"id":553,"date":"2020-08-14T14:29:45","date_gmt":"2020-08-14T14:29:45","guid":{"rendered":"https:\/\/group.netvest.co.za\/wp\/?page_id=553"},"modified":"2020-08-14T14:29:45","modified_gmt":"2020-08-14T14:29:45","slug":"home-2","status":"publish","type":"page","link":"https:\/\/group.netvest.co.za\/wp\/","title":{"rendered":"Home"},"content":{"rendered":"
Hey friends,<\/strong><\/p>\n Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore dolore.<\/p>\n \t\t\t Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.<\/p>\n Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore dolore.<\/p>\n Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore dolore.<\/p>\n Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore dolore.<\/p>\n Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore dolore.<\/p>\n Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore dolore.<\/p>\n Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt labore dolore.<\/p>\n \t\t\t Venenatis crassed<\/strong><\/p>\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua aenean.<\/p>\n \t\t\t\t Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore.<\/p>\n \t\t\t\t Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore.<\/p>\n \t\t\t\t Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore.<\/p>\n \t\t\t Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.<\/p>\n \t\thttps:\/\/youtu.be\/eLTfGT-_vKESed libero enim sed faucibus turpis. Facilisi nullam vehicula.https:\/\/youtu.be\/eLTfGT-_vKEConvallis a cras semper auctor neque vitae tempus pellentesque.https:\/\/youtu.be\/eLTfGT-_vKEConsectetur libero id faucibus nisl tincidunt eget nullam non.https:\/\/youtu.be\/eLTfGT-_vKEOrci a scelerisque purus semper eget duis at tellus id faucibus nisl tincidunt eget nullam non.\t\t<\/p>\n \t\tLorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.https:\/\/youtu.be\/eLTfGT-_vKE Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.<\/p>\n \t\t\t\t\t\t\t\u201cYou\u2019ve read about the impoce of the being courageous, rebelliousi and it\u2019s imaginative. These are all vital for ingredients in an effective advertising they must.\u201d Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut elit tellus, luctus nec ullamcorper mattis, pulvinar dapibus leo.<\/p>\nWe\u2019re Creative Themes, A Modern Digital Agency Based in Moldova<\/h2>\n
\n\t\t\t\t\t\tLearn more
\n\t\t\t\t\t<\/a>
\n\t\t\t
\n\t\t\t\t\t\tSee our services
\n\t\t\t\t\t<\/a><\/p>\nWhat we do<\/h2>\n
\n\t\t\t\t\tWeb Design
\n\t\t\t\t<\/h3>\n\n\t\t\t\t\tGraphic Design
\n\t\t\t\t<\/h3>\n\n\t\t\t\t\tWeb Development
\n\t\t\t\t<\/h3>\n\n\t\t\t\t\tSocial Media
\n\t\t\t\t<\/h3>\n\n\t\t\t\t\tReliable Results
\n\t\t\t\t<\/h3>\n\n\t\t\t\t\tSeo
\n\t\t\t\t<\/h3>\n
\n\t\t\t\t\t\tView Pricing
\n\t\t\t\t\t<\/a>
\n\t\t\t
\n\t\t\t\t\t\tTake Action
\n\t\t\t\t\t<\/a><\/p>\nQuisvarius Buam Muisque Ideum Velmart<\/h2>\n
\n\t\t\t\t\t\t\t\t<\/a><\/p>\n\n\t\t\t\t\tElementum sagittis vitae<\/a>
\n\t\t\t\t<\/h3>\n
\n\t\t\t\t\t\t\t\t<\/a><\/p>\n\n\t\t\t\t\tCommodo elitat imperdiet<\/a>
\n\t\t\t\t<\/h3>\n
\n\t\t\t\t\t\t\t\t<\/a><\/p>\n\n\t\t\t\t\tQuis veleros donecac<\/a>
\n\t\t\t\t<\/h3>\nDo you have any question?
\nFeel free to contact us anytime.<\/a><\/h2>\n
\n\t\t\t\t\t\tContact us now
\n\t\t\t\t\t<\/a>
\n\t\t\t\t\t\t\t\t\t\t
\t\t\t\t\t\t\t\t\t\t\t<\/p>\nMontes nascetur ridiculus mus mauris vitae<\/h2>\n
\n
\n\t\t\t\t\t\t\t\t\t\tMollis aliquam ut porttitor
\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n
\n\t\t\t\t\t\t\t\t\t\tOptions to choose list design
\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n
\n\t\t\t\t\t\t\t\t\t\tBeautiful interaction transitions
\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n<\/ul>\n\n
\n\t\t\t\t\t\t\t\t\t\tMollis aliquam ut porttitor
\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n
\n\t\t\t\t\t\t\t\t\t\tOptions to choose list design
\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n
\n\t\t\t\t\t\t\t\t\t\tBeautiful interaction transitions
\n\t\t\t\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t<\/li>\n<\/ul>\nSome Insights<\/h2>\n
\n\t\t\t\t0
\n\t\t\t\tK
\n\t\t\t\t\t\t\tLines of code
\n\t\t\t\t0
\n\t\t\t\tK
\n\t\t\t\t\t\t\tCups of cofee
\n\t\t\t\t0
\n\t\t\t\tK
\n\t\t\t\t\t\t\tSolved tickets
\n\t\t\t\t0
\n\t\t\t\tK
\n\t\t\t\t\t\t\tActive installs<\/p>\nWhat peoples say about us<\/h2>\n
\n\t\t\t\t\t\t\t![]()
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tPatricia Muller
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWordPress Developer
\n\t\t\t\t\t\t\t\u201cYou\u2019ve read about the impoce of the being courageous, rebelliousi and it\u2019s imaginative. These are all vital for ingredients in an effective advertising they must.\u201d
\n\t\t\t\t\t\t\t![]()
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tMichael Clark
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tEngeneer
\n\t\t\t\t\t\t\t\u201cYou\u2019ve read about the impoce of the being courageous, rebelliousi and it\u2019s imaginative. These are all vital for ingredients in an effective advertising they must.\u201d
\n\t\t\t\t\t\t\t![]()
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tKent Milestone
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tGraphic Designer<\/p>\nAdd Your Heading Text Here<\/h2>\n