var monsterinsights_frontend = {"js_events_tracking":"true","download_extensions":"doc,pdf,ppt,zip,xls,docx,pptx,xlsx","inbound_paths":"[{\"path\":\"\\\/go\\\/\",\"label\":\"affiliate\"},{\"path\":\"\\\/recommend\\\/\",\"label\":\"affiliate\"}]","home_url":"https:\/\/southoakdental.com","hash_tracking":"false","v4_id":"G-3SLZ82CGFS"};
var breeze_prefetch = {"local_url":"https:\/\/southoakdental.com","ignore_remote_prefetch":"1","ignore_list":["wp-admin","wp-login.php"]};
var dataLayer_content = {"visitorEmail":"","visitorEmailHash":"","visitorUsername":"","visitorIP":"18.97.9.168","pagePostType":"page","pagePostType2":"single-page","pagePostAuthor":"Abi"};
dataLayer.push( dataLayer_content );
function monsterinsights_forms_record_impression(event) {
monsterinsights_add_bloom_forms_ids();
var monsterinsights_forms = document.getElementsByTagName("form");
var monsterinsights_forms_i;
for (monsterinsights_forms_i = 0; monsterinsights_forms_i < monsterinsights_forms.length; monsterinsights_forms_i++) {
var monsterinsights_form_id = monsterinsights_forms[monsterinsights_forms_i].getAttribute("id");
var skip_conversion = false;
/* Check to see if it's contact form 7 if the id isn't set */
if (!monsterinsights_form_id) {
monsterinsights_form_id = monsterinsights_forms[monsterinsights_forms_i].parentElement.getAttribute("id");
if (monsterinsights_form_id && monsterinsights_form_id.lastIndexOf('wpcf7-f', 0) === 0) {
/* If so, let's grab that and set it to be the form's ID*/
var tokens = monsterinsights_form_id.split('-').slice(0, 2);
var result = tokens.join('-');
monsterinsights_forms[monsterinsights_forms_i].setAttribute("id", result);/* Now we can do just what we did above */
monsterinsights_form_id = monsterinsights_forms[monsterinsights_forms_i].getAttribute("id");
} else {
monsterinsights_form_id = false;
}
}/* Check if it's Ninja Forms & id isn't set. */
if (!monsterinsights_form_id && monsterinsights_forms[monsterinsights_forms_i].parentElement.className.indexOf('nf-form-layout') >= 0) {
monsterinsights_form_id = monsterinsights_forms[monsterinsights_forms_i].parentElement.parentElement.parentElement.getAttribute('id');
if (monsterinsights_form_id && 0 === monsterinsights_form_id.lastIndexOf('nf-form-', 0)) {
/* If so, let's grab that and set it to be the form's ID*/
tokens = monsterinsights_form_id.split('-').slice(0, 3);
result = tokens.join('-');
monsterinsights_forms[monsterinsights_forms_i].setAttribute('id', result);
/* Now we can do just what we did above */
monsterinsights_form_id = monsterinsights_forms[monsterinsights_forms_i].getAttribute('id');
skip_conversion = true;
}
}if (monsterinsights_form_id && monsterinsights_form_id !== 'commentform' && monsterinsights_form_id !== 'adminbar-search') {
__gtagTracker('event', 'impression', {
event_category: 'form',
event_label: monsterinsights_form_id,
value: 1,
non_interaction: true
});/* If a WPForms Form, we can use custom tracking */
if (monsterinsights_form_id && 0 === monsterinsights_form_id.lastIndexOf('wpforms-form-', 0)) {
continue;
}/* Formiddable Forms, use custom tracking */
if (monsterinsights_forms_has_class(monsterinsights_forms[monsterinsights_forms_i], 'frm-show-form')) {
continue;
}/* If a Gravity Form, we can use custom tracking */
if (monsterinsights_form_id && 0 === monsterinsights_form_id.lastIndexOf('gform_', 0)) {
continue;
}/* If Ninja forms, we use custom conversion tracking */
if (skip_conversion) {
continue;
}var custom_conversion_mi_forms = false;
if (custom_conversion_mi_forms) {
continue;
}if (window.jQuery) {
(function (form_id) {
jQuery(document).ready(function () {
jQuery('#' + form_id).on('submit', monsterinsights_forms_record_conversion);
});
})(monsterinsights_form_id);
} else {
var __gaFormsTrackerWindow = window;
if (__gaFormsTrackerWindow.addEventListener) {
document.getElementById(monsterinsights_form_id).addEventListener("submit", monsterinsights_forms_record_conversion, false);
} else {
if (__gaFormsTrackerWindow.attachEvent) {
document.getElementById(monsterinsights_form_id).attachEvent("onsubmit", monsterinsights_forms_record_conversion);
}
}
}} else {
continue;
}
}
}function monsterinsights_forms_has_class(element, className) {
return (' ' + element.className + ' ').indexOf(' ' + className + ' ') > -1;
}function monsterinsights_forms_record_conversion(event) {
var monsterinsights_form_conversion_id = event.target.id;
var monsterinsights_form_action = event.target.getAttribute("miforms-action");
if (monsterinsights_form_conversion_id && !monsterinsights_form_action) {
document.getElementById(monsterinsights_form_conversion_id).setAttribute("miforms-action", "submitted");
__gtagTracker('event', 'conversion', {
event_category: 'form',
event_label: monsterinsights_form_conversion_id,
value: 1,
});
}
}/* Attach the events to all clicks in the document after page and GA has loaded */
function monsterinsights_forms_load() {
if (typeof (__gtagTracker) !== 'undefined' && __gtagTracker) {
var __gtagFormsTrackerWindow = window;
if (__gtagFormsTrackerWindow.addEventListener) {
__gtagFormsTrackerWindow.addEventListener("load", monsterinsights_forms_record_impression, false);
} else {
if (__gtagFormsTrackerWindow.attachEvent) {
__gtagFormsTrackerWindow.attachEvent("onload", monsterinsights_forms_record_impression);
}
}
} else {
setTimeout(monsterinsights_forms_load, 200);
}
}/* Custom Ninja Forms impression tracking */
if (window.jQuery) {
jQuery(document).on('nfFormReady', function (e, layoutView) {
var label = layoutView.el;
label = label.substring(1, label.length);
label = label.split('-').slice(0, 3).join('-');
__gtagTracker('event', 'impression', {
event_category: 'form',
event_label: label,
value: 1,
non_interaction: true
});
});
}/* Custom Bloom Form tracker */
function monsterinsights_add_bloom_forms_ids() {
var bloom_forms = document.querySelectorAll('.et_bloom_form_content form');
if (bloom_forms.length > 0) {
for (var i = 0; i < bloom_forms.length; i++) {
if ('' === bloom_forms[i].id) {
var form_parent_root = monsterinsights_find_parent_with_class(bloom_forms[i], 'et_bloom_optin');
if (form_parent_root) {
var classes = form_parent_root.className.split(' ');
for (var j = 0; j < classes.length; ++j) {
if (0 === classes[j].indexOf('et_bloom_optin')) {
bloom_forms[i].id = classes[j];
}
}
}
}
}
}
}function monsterinsights_find_parent_with_class(element, className) {
if (element.parentNode && '' !== className) {
if (element.parentNode.className.indexOf(className) >= 0) {
return element.parentNode;
} else {
return monsterinsights_find_parent_with_class(element.parentNode, className);
}
}
return false;
}monsterinsights_forms_load();
You can find informative resources and tips about oral health on our website or by contacting our Oakville office directly.
CONTACT US NOW
At South Oak Dental, we’re dedicated to providing dental care in a warm and welcoming environment. Whether you’re due for a routine checkup, need cosmetic enhancements, or have a dental concern, our team is here to help. Have a question or want to schedule an appointment? Contact us now by simply filling out our online form, give us a call, or visit our clinic in person. We look forward to helping you!
document.addEventListener("DOMContentLoaded", function() {
// Select all the social icons
var socialIcons = document.querySelectorAll('.et_pb_social_media_follow .et_pb_social_network_link a.icon');// Iterate over each social icon
socialIcons.forEach(function(icon) {
// Check if the href attribute is missing or empty
if (!icon.getAttribute('href') || icon.getAttribute('href').trim() === '') {
// Hide the parent element
icon.closest('.et_pb_social_network_link').style.display = 'none';
}
});
});
/* MonsterInsights Scroll Tracking */
if ( typeof(jQuery) !== 'undefined' ) {
jQuery( document ).ready(function(){
function monsterinsights_scroll_tracking_load() {
if ( ( typeof(__gaTracker) !== 'undefined' && __gaTracker && __gaTracker.hasOwnProperty( "loaded" ) && __gaTracker.loaded == true ) || ( typeof(__gtagTracker) !== 'undefined' && __gtagTracker ) ) {
(function(factory) {
factory(jQuery);
}(function($) {/* Scroll Depth */
"use strict";
var defaults = {
percentage: true
};var $window = $(window),
cache = [],
scrollEventBound = false,
lastPixelDepth = 0;/*
* Plugin
*/$.scrollDepth = function(options) {var startTime = +new Date();options = $.extend({}, defaults, options);/*
* Functions
*/function sendEvent(action, label, scrollDistance, timing) {
if ( 'undefined' === typeof MonsterInsightsObject || 'undefined' === typeof MonsterInsightsObject.sendEvent ) {
return;
}
var paramName = action.toLowerCase();
var fieldsArray = {
send_to: 'G-3SLZ82CGFS',
non_interaction: true
};
fieldsArray[paramName] = label;if (arguments.length > 3) {
fieldsArray.scroll_timing = timing
MonsterInsightsObject.sendEvent('event', 'scroll_depth', fieldsArray);
} else {
MonsterInsightsObject.sendEvent('event', 'scroll_depth', fieldsArray);
}
}function calculateMarks(docHeight) {
return {
'25%' : parseInt(docHeight * 0.25, 10),
'50%' : parseInt(docHeight * 0.50, 10),
'75%' : parseInt(docHeight * 0.75, 10),
/* Cushion to trigger 100% event in iOS */
'100%': docHeight - 5
};
}function checkMarks(marks, scrollDistance, timing) {
/* Check each active mark */
$.each(marks, function(key, val) {
if ( $.inArray(key, cache) === -1 && scrollDistance >= val ) {
sendEvent('Percentage', key, scrollDistance, timing);
cache.push(key);
}
});
}function rounded(scrollDistance) {
/* Returns String */
return (Math.floor(scrollDistance/250) * 250).toString();
}function init() {
bindScrollDepth();
}/*
* Public Methods
*//* Reset Scroll Depth with the originally initialized options */
$.scrollDepth.reset = function() {
cache = [];
lastPixelDepth = 0;
$window.off('scroll.scrollDepth');
bindScrollDepth();
};/* Add DOM elements to be tracked */
$.scrollDepth.addElements = function(elems) {if (typeof elems == "undefined" || !$.isArray(elems)) {
return;
}$.merge(options.elements, elems);/* If scroll event has been unbound from window, rebind */
if (!scrollEventBound) {
bindScrollDepth();
}};/* Remove DOM elements currently tracked */
$.scrollDepth.removeElements = function(elems) {if (typeof elems == "undefined" || !$.isArray(elems)) {
return;
}$.each(elems, function(index, elem) {var inElementsArray = $.inArray(elem, options.elements);
var inCacheArray = $.inArray(elem, cache);if (inElementsArray != -1) {
options.elements.splice(inElementsArray, 1);
}if (inCacheArray != -1) {
cache.splice(inCacheArray, 1);
}});};/*
* Throttle function borrowed from:
* Underscore.js 1.5.2
* http://underscorejs.org
* (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
* Underscore may be freely distributed under the MIT license.
*/function throttle(func, wait) {
var context, args, result;
var timeout = null;
var previous = 0;
var later = function() {
previous = new Date;
timeout = null;
result = func.apply(context, args);
};
return function() {
var now = new Date;
if (!previous) previous = now;
var remaining = wait - (now - previous);
context = this;
args = arguments;
if (remaining <= 0) {
clearTimeout(timeout);
timeout = null;
previous = now;
result = func.apply(context, args);
} else if (!timeout) {
timeout = setTimeout(later, remaining);
}
return result;
};
}/*
* Scroll Event
*/function bindScrollDepth() {scrollEventBound = true;$window.on('scroll.scrollDepth', throttle(function() {
/*
* We calculate document and window height on each scroll event to
* account for dynamic DOM changes.
*/var docHeight = $(document).height(),
winHeight = window.innerHeight ? window.innerHeight : $window.height(),
scrollDistance = $window.scrollTop() + winHeight,/* Recalculate percentage marks */
marks = calculateMarks(docHeight),/* Timing */
timing = +new Date - startTime;checkMarks(marks, scrollDistance, timing);
}, 500));}init();
};/* UMD export */
return $.scrollDepth;}));jQuery.scrollDepth();
} else {
setTimeout(monsterinsights_scroll_tracking_load, 200);
}
}
monsterinsights_scroll_tracking_load();
});
}
/* End MonsterInsights Scroll Tracking */
var wpilFrontend = {"ajaxUrl":"\/wp-admin\/admin-ajax.php","postId":"3029","postType":"post","openInternalInNewTab":"0","openExternalInNewTab":"1","disableClicks":"0","openLinksWithJS":"0","trackAllElementClicks":"0","clicksI18n":{"imageNoText":"Image in link: No Text","imageText":"Image Title: ","noText":"No Anchor Text Found"}};
/* Hide/show the content when button is click */
jQuery('.e-flex').each(function(){
var btn_read_more = jQuery(this).find('.btn-read-more');
btn_read_more.off('click').on('click', function(){
var editor = jQuery(this).closest('.e-flex').find('.elementor-widget-text-editor');
var iconList = jQuery(this).closest('.e-flex').find('.elementor-widget-icon-list');
editor.toggleClass('show');
iconList.toggleClass('show');
});
});